ao_gps_next.minute = ao_gps_decimal(2);
ao_gps_next.second = ao_gps_decimal(2);
ao_gps_skip_field(); /* skip seconds fraction */
-#if HAS_FLIGHT || HAS_TRACKER
- ao_gps_data.state = ao_flight_state;
-#endif
ao_gps_next.latitude = ao_gps_parse_pos(2);
if (ao_gps_parse_flag('N', 'S'))
ao_gps_lexchar();
i = ao_gps_decimal(0xff);
- if (i <= 50) {
- i = (uint8_t) 5 * i;
+ if (i <= 25) {
+ i = (uint8_t) 10 * i;
if (ao_gps_char == '.')
- i = (i + ((uint8_t) ao_gps_decimal(1) >> 1));
+ i = (i + ((uint8_t) ao_gps_decimal(1)));
} else
i = 255;
ao_gps_next.hdop = i;
ao_gps_skip_field();
- ao_gps_next.altitude = ao_gps_decimal(0xff);
+ AO_TELEMETRY_LOCATION_SET_ALTITUDE(&ao_gps_next, ao_gps_decimal(0xff));
+
ao_gps_skip_field(); /* skip any fractional portion */
ao_nmea_finish();