Apr 7, 2022, 7:40:49 PMApr 7
With the discussion about OGN data happening in another thread, now is a good time to say that I have been forwarding ADSB locations to the OGN.
It's running on my raspberry pi at home alongside the SPOT/Inreach to OGN scripts.
I have been running it since Feb and seems to be working well.
Why did I do this? I got bored last year and wanted to do a project in python to learn the language more and this sounded like fun.
How will you know if the position is from ADSB or FLARM? Some OGN websites will show the receiver detecting the aircraft (or source of the data), "ADSBExch" is visible in that field when the position is coming from ADSB data.
How does it work?
This script connects to an ADSB API (for ADSB positions) and the OGN (for FLARM positions). The script listens to both sources and manages a traffic list composed of each unique aircraft's position, speed, altitude, etc from both sources.
If a glider position exists from ADSB and not from FLARM, that glider's position is pushed to the OGN from the ADSB source.
If a glider position exists from both ADSB and FLARM, that glider's ADSB position will only be pushed to the OGN when the FLARM source is 120 seconds older than the ADSB source. Thereby seamlessly transitioning between the high refresh rate FLARM position and a lower refresh rate but larger ranged ADSB position.
To be seen, you will need to have a Mode S (non ADSB and be within MLAT range) or a Mode S (with ADSB) transponder. The script is set up to run on my pi from 9a to 8p MST, 7 days a week. And at the moment it is only set up to scan the North American lat/lon range.
The API is queried at 10 second intervals then the valid positions are sent to the OGN. For tracking, the signal has a refresh rate of somewhere between 5 and 15 seconds. A much lower resolution than the OGN's 1-2 second position intervals but ADSB has a much larger range.