I’ve released a new version of HAB Basem which is intended for easy management of one or more receivers from a Windows PC.
The changes are:
- Support for Sondehub import via UDP
- Support for local Sonde data from a rdzTTGOSonde receiver via UDP
- Map shows the predicted path and landing point of the balloon
- Balloon burst altitude can be set for the prediction
- UI changes to fix issues on high-DPI monitors and other systems where Windows has a font stretch factor set to other than 100%.
- The APRS source can also be used for OGN (Open Glider Network)
- Fixed error when removing old payloads
- Settings window for serial sources shows the list of COM ports to choose from
- Payloads can be removed from the list and map, either till the next telemetry from that payload, or blocked while the program is running.
This is receiver for radiosondes, running on a TTGO ESP32/LoRa board with OLED. It emits position packets using UDP on the wireless network to which it is connected. HAB Explora, PADD and Base can all now decode these packets.
- In Settings –> Other, set the UDP Rx port to whatever you like (I use 12004 which is one of a set that I have reserved for HAB use on my networks, but you can use whatever works for you)
- In the rdzTTGOSonde configuration, set the UDP transmit port to match above (see screenshot below).
- In the rdzTTGOSonde configuration, set the UDP transmit IP address to either the known IP address of the device running HAB Explora/PADD or, better, use the UDP broadcast value for the local network. For the latter, use the IP address by taking the local subnet value and set all 1’s in the host portion. For example, if a device has an address 192.168.1.156 and a subnet mask 255.255.255.0, then the broadcast address is 192.168.1.255.
These are the settings in the rdzTTGSonde configuration page:
For payloads that do not include their own predicted landing position, HAB Base now refers to the online Tawhiri predictor to calculate not only the predicted landing position but also the flight path.
For payloads that are still ascending, the program initially assumes a burst altitude of 30km however this can be adjusted by opening the payload window and choosing the “Settings” tab:
This is a system used by gliders and other light aircraft, being broadly equivalent to the ADS-B system but at a much lower cost. OGN receivers upload to a server which HAB Base can now receive from. The received packets are in APRS format so to receive them you should create a new APRS Source within HAB Base, and set the host to aprs.glidernet.org:
- Click the “…” button next to an existing source
- Choose “Add New Source” from the menu
- Choose APRS/OGN from the “type of new source” list
- Fill in the code and name as normal
- Set the host box to be aprs.glidernet.org
- Leave the port as 14580
If you previously used HAB Base to monitor radiosondes, you noticed a while ago that this stopped working. This is due to the sondehub system being separated from habhub. Sondehub has its own http and websocket APIs, different to habhub.
To import from sondehub to HAB Base, you need a Linux or Windows machine with Python 3 and Pip3 installed, onto which you run a small Python script to import filtered telemetry from sondehub and emit locally via UDP.
The following steps are for Raspberry Pi OS:
sudo pip3 install paho-mqtt sudo pip3 install boto3 git clone https://github.com/projecthorus/pysondehub.git cd pysondehub wget hab.daveakerman.com/files/SondehubToUDP.py
Then to run the script, enter a command of the format:
python3 SondehubToUDP.py <latitude> <longitude> <max_distance_in_km> <target IP address> <port>
You can use these parameters to select a central point (e.g. your location) and the radius of a circle around it, so that the script only emits positions of radiosondes that are within that circle.
The “target IP address” is that of your Windows PC that runs HAB Base.
“Port” can be any unused port number; I use the value 12013 which is part of a set that I reserve for HAB communications on my network.
python3 SondehubToUDP.py 51.95023 -2.54445 1000 192.168.1.172 12013
The script will display the telemetry for each position report that it receives from sondehub and which is within the circle defined.
Once this is running, open HAB Base and create a new Source. Select the source type as “UDP”, fill in the code and name as usual, and set the port to be the same value you used for the script earlier. e.g.:
Finally, click the Save button.
The new source will then run, e.g.:
Note: Remember that HAB Base has its own distance filter, which it applies to this source, and this would normally be set the same as the value used for the script.