diff options
| author | Keith Packard <keithp@keithp.com> | 2014-07-10 17:13:09 -0700 | 
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2014-07-10 17:35:44 -0700 | 
| commit | 47e62bb26984f6c84660c1d0451f77c2d6ad7e5a (patch) | |
| tree | b4bf09901349c937b7181f04a2162726dbd5af3f /src | |
| parent | ed2a08c50d6b8ebcc8c1d2f15e73c1f2a1e25041 (diff) | |
altos: Scale DOP values by 10 in GPS drivers
sky traq was scaling by 5, ublox was scaling by 100.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src')
| -rw-r--r-- | src/drivers/ao_gps_skytraq.c | 6 | ||||
| -rw-r--r-- | src/drivers/ao_gps_ublox.c | 10 | 
2 files changed, 8 insertions, 8 deletions
| diff --git a/src/drivers/ao_gps_skytraq.c b/src/drivers/ao_gps_skytraq.c index 81178051..066df6ff 100644 --- a/src/drivers/ao_gps_skytraq.c +++ b/src/drivers/ao_gps_skytraq.c @@ -278,10 +278,10 @@ ao_nmea_gga(void)  	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; diff --git a/src/drivers/ao_gps_ublox.c b/src/drivers/ao_gps_ublox.c index 48765998..74c29e0a 100644 --- a/src/drivers/ao_gps_ublox.c +++ b/src/drivers/ao_gps_ublox.c @@ -740,11 +740,11 @@ ao_gps(void) __reentrant  				ao_gps_data.minute = nav_timeutc.min;  				ao_gps_data.second = nav_timeutc.sec; -				ao_gps_data.pdop = nav_dop.pdop; -				ao_gps_data.hdop = nav_dop.hdop; -				ao_gps_data.vdop = nav_dop.vdop; - -				/* mode is not set */ +				/* we report dop scaled by 10, but ublox provides dop scaled by 100 +				 */ +				ao_gps_data.pdop = nav_dop.pdop / 10; +				ao_gps_data.hdop = nav_dop.hdop / 10; +				ao_gps_data.vdop = nav_dop.vdop / 10;  				ao_gps_data.ground_speed = nav_velned.g_speed;  				ao_gps_data.climb_rate = -nav_velned.vel_d; | 
