diff --git a/ogn/parser/aprs_comment/flarm_parser.py b/ogn/parser/aprs_comment/flarm_parser.py index f327310..6e9f147 100644 --- a/ogn/parser/aprs_comment/flarm_parser.py +++ b/ogn/parser/aprs_comment/flarm_parser.py @@ -16,7 +16,8 @@ class FlarmParser(BaseParser): if match.group('details'): result.update({ 'address_type': int(match.group('details'), 16) & 0b00000011, - 'aircraft_type': (int(match.group('details'), 16) & 0b01111100) >> 2, + 'aircraft_type': (int(match.group('details'), 16) & 0b00111100) >> 2, + 'no-tracking': (int(match.group('details'), 16) & 0b01000000) >> 6 == 1, 'stealth': (int(match.group('details'), 16) & 0b10000000) >> 7 == 1, 'address': match.group('address'), }) diff --git a/ogn/parser/aprs_comment/ogn_parser.py b/ogn/parser/aprs_comment/ogn_parser.py index 06bf07f..4d90a51 100644 --- a/ogn/parser/aprs_comment/ogn_parser.py +++ b/ogn/parser/aprs_comment/ogn_parser.py @@ -34,7 +34,8 @@ class OgnParser(BaseParser): if match.group('details'): result.update({ 'address_type': int(match.group('details'), 16) & 0b00000011, - 'aircraft_type': (int(match.group('details'), 16) & 0b01111100) >> 2, + 'aircraft_type': (int(match.group('details'), 16) & 0b00111100) >> 2, + 'no-tracking': (int(match.group('details'), 16) & 0b01000000) >> 6 == 1, 'stealth': (int(match.group('details'), 16) & 0b10000000) >> 7 == 1, 'address': match.group('address'), })