diff options
Diffstat (limited to 'src/drivers')
| -rw-r--r-- | src/drivers/ao_aprs.c | 2 | ||||
| -rw-r--r-- | src/drivers/ao_gps_skytraq.c | 3 | ||||
| -rw-r--r-- | src/drivers/ao_gps_ublox.c | 2 | 
3 files changed, 4 insertions, 3 deletions
diff --git a/src/drivers/ao_aprs.c b/src/drivers/ao_aprs.c index a9047149..19beb78f 100644 --- a/src/drivers/ao_aprs.c +++ b/src/drivers/ao_aprs.c @@ -713,7 +713,7 @@ static int tncPositionPacket(void)      if (ao_gps_data.flags & AO_GPS_VALID) {  	latitude = ao_gps_data.latitude;  	longitude = ao_gps_data.longitude; -	altitude = ao_gps_data.altitude; +	altitude = AO_TELEMETRY_LOCATION_ALTITUDE(&ao_gps_data);  	if (altitude < 0)  	    altitude = 0;      } diff --git a/src/drivers/ao_gps_skytraq.c b/src/drivers/ao_gps_skytraq.c index 944a37f9..81178051 100644 --- a/src/drivers/ao_gps_skytraq.c +++ b/src/drivers/ao_gps_skytraq.c @@ -287,7 +287,8 @@ ao_nmea_gga(void)  	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(); diff --git a/src/drivers/ao_gps_ublox.c b/src/drivers/ao_gps_ublox.c index 077698a9..48765998 100644 --- a/src/drivers/ao_gps_ublox.c +++ b/src/drivers/ao_gps_ublox.c @@ -728,7 +728,7 @@ ao_gps(void) __reentrant  				if (nav_timeutc.valid & (1 << NAV_TIMEUTC_VALID_UTC))  					ao_gps_data.flags |= AO_GPS_DATE_VALID; -				ao_gps_data.altitude = nav_posllh.alt_msl / 1000; +				AO_TELEMETRY_LOCATION_SET_ALTITUDE(&ao_gps_data, nav_posllh.alt_msl / 1000);  				ao_gps_data.latitude = nav_posllh.lat;  				ao_gps_data.longitude = nav_posllh.lon;  | 
