So, having perused the SmartBeacon code for a while now, I have a couple questions...
// Check to see whether we've sped up sufficiently for the // posit_next_time variable to be too far out. If so, shorten // that interval to match the current speed. if ( (posit_next_time - curr_sec) > sb_POSIT_rate) posit_next_time = curr_sec + sb_POSIT_rate; Why is this statement in there? It looks like you are checking to see if the interval is too long for the speed. This is looked after by this statement. sb_POSIT_rate = (sb_posit_fast * sb_high_speed_limit) / speed; The interval decreases as speed increases. The one shortfall in the SmartBeacon routine is that it does not report decreases in velocity. As velocity decreases, the beacon rate increases, which means that the next beacon will be further away in time. Let's use: high_speed = 60 high_rate = 120 (sec) low_speed = 5 low_rate = 1800 (sec) If I am travelling at 60, and send a beacon, my next beacon should happen in 120 seconds. If I stop right away, my beacon rate will drop to 1800 seconds. This leaves APRS clients dead reckoning me at 60 mph until that next beacon gets sent. If I am travelling at 10 mph, my rate is one beacon every 720 seconds (12 minutes). If I accelerate to 20 mph, my rate increases to on beacon every 360 seconds (6 minutes). Increases in speed increase beacon rates, so there is no need to worry about bumping rates up. When we slow down though, the opposite is true. At high speeds, SmartBeaconing is the primary reason for position reports being sent out, with the occasional beacon forced due to CornerPegging. At low speeds, the reverse is true. CornerPegging becomes the primary reason for beacons being sent, with the very rare occasion when a SmartBeacon triggered beacon is triggered. In everyday driving, you will find that the combination of SmartBeaconing and CornerPegging do a good job of representing your track. James VE6SRV _______________________________________________ Xastir mailing list Xastir@xastir.org http://lists.xastir.org/cgi-bin/mailman/listinfo/xastir