diff --git a/pyModeS/adsb.py b/pyModeS/adsb.py index d98a04a..fbbd479 100644 --- a/pyModeS/adsb.py +++ b/pyModeS/adsb.py @@ -678,9 +678,9 @@ def altitude_diff(msg): msgbin = util.hex2bin(msg) sign = -1 if int(msgbin[80]) else 1 - value = util.bin2int(msgbin[81:88]) * 25 + value = util.bin2int(msgbin[81:88]) if value == 0 or value == 127: return None else: - return sign * value + return sign * (value - 1) * 25 # in ft. diff --git a/tests/test_adsb.py b/tests/test_adsb.py index 48fa274..40c88bb 100644 --- a/tests/test_adsb.py +++ b/tests/test_adsb.py @@ -61,7 +61,7 @@ def test_adsb_velocity(): assert vgs == (159, 182.9, -832, 'GS') assert vas == (376, 244.0, -2304, 'AS') assert vgs_surface == (19.0, 42.2, 0 , 'GS') - assert adsb.altitude_diff('8D485020994409940838175B284F') == 575 + assert adsb.altitude_diff('8D485020994409940838175B284F') == 550 def test_nic():