diff --git a/ogn/parser/parse.py b/ogn/parser/parse.py index e0a37c6..33c82b3 100644 --- a/ogn/parser/parse.py +++ b/ogn/parser/parse.py @@ -46,7 +46,7 @@ def parse_ogn_aircraft_beacon(aprs_comment): 'frequency_offset': float(ac_match.group('frequency_offset')), 'gps_status': ac_match.group('gps_accuracy'), 'software_version': float(ac_match.group('flarm_software_version')) if ac_match.group('flarm_software_version') else None, - 'hardware_version': int(ac_match.group('flarm_hardware_version')) if ac_match.group('flarm_hardware_version') else None, + 'hardware_version': int(ac_match.group('flarm_hardware_version'), 16) if ac_match.group('flarm_hardware_version') else None, 'real_address': ac_match.group('flarm_id')} else: return None diff --git a/tests/parser/test_aircraft_beacon.py b/tests/parser/test_aircraft_beacon.py index 72167aa..31ef8b3 100644 --- a/tests/parser/test_aircraft_beacon.py +++ b/tests/parser/test_aircraft_beacon.py @@ -33,10 +33,10 @@ class TestStringMethods(unittest.TestCase): self.assertTrue(aircraft_beacon['stealth']) def test_v024(self): - aircraft_beacon = parse_ogn_aircraft_beacon("id21400EA9 -2454fpm +0.9rot 19.5dB 0e -6.6kHz gps1x1 s6.02 h44 rDF0C56") + aircraft_beacon = parse_ogn_aircraft_beacon("id21400EA9 -2454fpm +0.9rot 19.5dB 0e -6.6kHz gps1x1 s6.02 h0A rDF0C56") self.assertEqual(aircraft_beacon['software_version'], 6.02) - self.assertEqual(aircraft_beacon['hardware_version'], 44) + self.assertEqual(aircraft_beacon['hardware_version'], 10) self.assertEqual(aircraft_beacon['real_address'], "DF0C56") def test_v024_ogn_tracker(self):