From 658ee00b0bac473ef7654f7ebd68c4d081548f9c Mon Sep 17 00:00:00 2001 From: Jakob Ketterl Date: Wed, 23 Aug 2023 13:48:58 +0200 Subject: [PATCH] fix altitude bits --- owrx/adsb/modes.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/owrx/adsb/modes.py b/owrx/adsb/modes.py index 5b3468ec..dcd41388 100644 --- a/owrx/adsb/modes.py +++ b/owrx/adsb/modes.py @@ -12,7 +12,7 @@ FEET_PER_METER = 3.28084 class ModeSParser(PickleModule): def process(self, input): format = (input[0] & 0b11111000) >> 3 - message = { + message = { "mode": "ADSB", "format": format } @@ -44,7 +44,7 @@ class ModeSParser(PickleModule): elif type in range(9, 19): # airborne position (w/ baro altitude) q = (input[5] & 0b1) - altitude = ((input[5] & 0b11111110) << 3) | ((input[6] & 0b1111) >> 4) + altitude = ((input[5] & 0b11111110) << 3) | ((input[6] & 0b11110000) >> 4) if q: message["altitude"] = altitude * 25 - 1000 else: