flight:hfdl-wrong-hexes
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
flight:hfdl-wrong-hexes [2024/02/11 16:11] – created 2m0iig | flight:hfdl-wrong-hexes [2024/02/23 10:07] (current) – 2m0iig | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | HFDL mismatched | + | ====== Incorrect hexes from HFDL transponders (WIP!) ====== |
+ | |||
+ | I've noticed something very strange recently during my time extracting signals from aircraft from out of the air. For those unaware aircraft are usually pinging away on multiple areas of the EM spectrum, and I receive in two of them. Firstly, 1090 MHz - this is the one most people are familiar with and the ADS-B/Mode S data received powers the vast majority of the flight tracking websites. Secondly I receive HFDL data via shortwave signals ranging from 3-21 MHz, covering huge swathes of the planet with a much slower update rate, but used for a totally different purpose. You may know it as ACARS, and it contains information such as ATC control and status messages, but positions are available too, usually every thirty minutes or so. | ||
+ | |||
+ | Without going into too much detail both of these types of signals contain all sorts of information, | ||
+ | |||
+ | Along with ACARS via satellite comms and VHF airband @ around 136 MHz, this means that there are usually 4 different systems pinging away. And usually everything is fine and dandy. However, I spotted an issue the other week that caused me a small amount of interest: it seems that sometimes these 4 systems don't always have the same hex ID. | ||
+ | |||
+ | [hfdl/ads-b track of same plane side by side] | ||
+ | |||
+ | I spotted a HFDL track going through my ADS-B range that didn't switch to an ADS-B track - the track was HFDL-only. The plane would definitely have been pinging ADS-B or Mode S, so I checked on my feeder to see what plane was in the same area on ADS-B/Mode S at the same time as the HFDL ping. And to my surprise, I found a totally different hex ID, with a similar callsign to the HFDL ping (OCNxxx/ | ||
+ | |||
+ | Why does this matter, though? Well, it'd be nice to see an entire line as a plane' | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | So now we have to figure out what the hex on HFDL is. Is it a bad decode? Well, I had multiple pings with the same ID over an hour and a half, and so did other receiving colleagues, so it's definitely not a bad decode. Which means the hex was entered on purpose. Is it just mistyped? Was the plane previously set to this hex code in the past? There' | ||
+ | |||
+ | Thanks to the incredibly meticulous job people do of recording information within the aviation community, we do have some ways to figure this out. Take hex code 424363, which showed up on my aggregator lately. This came up over Russia as having no type information on my map, despite my aircraft database being as up to date as possible. When I checked on another website with ADS-B coverage I found the same callsign, 73797, on a plane with hex 152045. The callsign happened to match the Russian registration of the aircraft, RA-73797, allowing a simple match. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | When I googled 424363 I found that the plane USED to have this hex, but has been transferred a few times since. It now has hex 152045, but the HFDL transponder is still set to 424363. The engineers or maintenance folk just forgot, perhaps. | ||
+ | |||
+ | Now then: what to do with this information. Well, for a start, I wanted to find and replace these hexes on their way to my local map. And I realised this may be a fine time to start working on learning Node-Red. I could set up a little workflow and find and replace according to a lookup table. | ||
+ | |||
+ | First of all, can I change a single hex. And yes, I could. I set up an inject with a test SBS Basestation message. I then used a TCP input node to fire in messages from dumphfdl into the flow and a TCP output node to fire them out at the end to the local readsb system powering my map. Testing worked via the inject, so I enabled the live data and one changed exactly as planned. After proving that it worked for one aircraft I then had to use a function node to setup a table of key:value pairs, so that they could be easily referenced and replaced on the way through the flow. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | And I got a result very quickly, with a plane' | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | The other thing I could also possibly do with this is to contact the airlines and report the issue. You'd have to imagine they know already, because they see this data all the time. It may not be a huge issue for them. But my OCD won't let it drop. Surely this is better for record keeping if they match. But apparently there' | ||
+ | |||
+ | For now, I am going to maintain a hopefully small list of these problematic aircraft. I feel there' | ||
+ | |||
+ | {{ : |
flight/hfdl-wrong-hexes.1707667873.txt.gz · Last modified: 2024/02/11 16:11 by 2m0iig