If the telemetry packet indicates that there's no functioning GPS receiver,
then don't pass along those packets so that the UI displays things more accurately.
Signed-off-by: Keith Packard <keithp@keithp.com>
}
public void provide_data(AltosDataListener listener) {
}
public void provide_data(AltosDataListener listener) {
- super.provide_data(listener);
AltosCalData cal_data = listener.cal_data();
AltosCalData cal_data = listener.cal_data();
gps.pdop = pdop() / 10.0;
gps.hdop = hdop() / 10.0;
gps.vdop = vdop() / 10.0;
gps.pdop = pdop() / 10.0;
gps.hdop = hdop() / 10.0;
gps.vdop = vdop() / 10.0;
+ if (gps.connected)
+ super.provide_data(listener);
if (gps.locked) {
gps.lat = latitude() * 1.0e-7;
if (gps.locked) {
gps.lat = latitude() * 1.0e-7;
gps.course = course() * 2;
gps.climb_rate = climb_rate() * 1.0e-2;
}
gps.course = course() * 2;
gps.climb_rate = climb_rate() * 1.0e-2;
}
- listener.set_gps(gps, true, false);
+ if (gps.connected)
+ listener.set_gps(gps, true, false);