Moving from HABHUB to Sondehub

As I hope you’re already aware, the HABHUB system is due to be shut down in October 2022. This system has supported HAB in the UK and elsewhere for many years now, however the hardware is old, the operating system is old and unsupported, the database engine and other installed software components are old, and maintenance of these things is no longer tenable.

(Very) fortunately, we have an alternative. Sondehub has been running for about 3 years now, providing tracking of met office radiosondes, and Mark and Michaela of the Sondehub team have been busy providing the same infrastructure for amateur flights. Sondehub was designed to cope with the large number of radiosonde flights, and their high data update rates, so the system is well capable of coping with the much smaller number of amateur flights and their generally rather lower update rates.

HABHUB includes various components that are used daily by HAB enthusiasts, such as a burst calculator, predictor and the balloon tracking system with live map. All of these things either have equivalents with the Sondehub system, or have been ported over to it.

For more information on Sondehub and the transfer from HABHUB, see Mark’s article.

Supported Tracker Modulations

For details information on this, see this article.

Most UK flights use RTTY or LoRa.

RTTY

The usual method for RTTY was to use dl-fldigi which uploaded directly to HABHUB, but this will stop working when the HABHUB server is switched off. However there are alternatives:

  • Use Horus GUI
  • Continue to use dl-fldigi (or, better, just fldigi) and have the output read by HAB Base which will show the decoded telemetry, place the payload on its own map, and upload the telemetry to sondehub/amateur.

LoRa

There are several programs available for receiving LoRa telemetry:

  • HAB LoRa Gateway. This has been modified to upload to sondehub/amateur; you will need to update to V1.9.2 or later.
  • HAB Base. This has been modified to upload to sondehub/amateur; you will need to update to V1.6.2 or later.
  • HAB Explora. A new version will be released soon, with sondehub/amateur support (balloon telemetry and chase car upload) and also support for Android 11/12.
  • HAB PADD. A new version will be released soon, with sondehub/amateur support (balloon telemetry and chase car upload) and also support for Android 11/12.
  • Windows Serial Gateway. I don’t currently plan to modify this for sondehub/amateur as HAB Base does everything that it does.

What Do We Lose?

Flight Documents

Sondehub has no concept of flight documents, so please be sure to publicise your flight in the UKHAS Google Group. Obviously, you will no longer need to create flight documents or get them approved.

Payload Documents

Sondehub has no concept of payload documents, which were used to tell HABHUB which field in the UKHAS telemetry string contained what information. This means that you no longer need to create a payload document, but that Sondehub will only show the basic, essential fields such as latitude and longitude. However, see the following section on Tracker Telemetry for an alternative mechanism.

Tracker Telemetry

Sondehub has no concept of payload documents, or indeed of the format of a UKHAS telemetry string, so it’s up to the receiving/uploading software to parse the UKHAS telemetry from a tracker, deciding which field means what (latitude, longitude, temperatures etc.), then passing those values on to Sondehub.

All such programs assume that the telemetry string is of this form:

$$<callsign>,<count>,<UTC>,<lat>,<lon>,<alt>[,<optional_field1>....]*CRC<LF>




Provided that your tracker follows this format – and I don’t recall seeing one that didn’t – then you tracker can be stored by sondehub/amateur and will (assuming a valid GPS position) appear on the live map.

That’s great, and it avoids the issues of people creating payload documents that don’t match their tracker telemetry, however it also means that any extra telemetry is not displayed on the map and aren’t charted on the sondehub Grafana page.. Such telemetry might include the number of satellites, internal and external temperatures, and it would be a shame to not have those displayed, stored and charted.

There is a solution, which is for the tracker to also broadcast the field list. The method supported by my various receiver programs is for the field list – a sequence of digits/letters one per field – to be included in the regular telemetry. For example:

$$PITS,676,10:42:48,52.37709,0.45973,00473,10,32.7,0.0,0.000,0.07,52.37810,0.45927,12.3,30,0123456A9PTCDUV*D64F

The part in bold is the field list. Every character in that string represents a field type; e.g. the “0” represents the payload callsign. Since we always assume that the basic telemetry is as shown earlier, the field list will always begin with the characters for those standard fields, namely “012345”. This is used by the decoding programs to locate the field list.

I have defined a list of field types that my receiver programs understand and can then send to sondehub/amateur. I’ve listed the field codes in the following table, together with which of my trackers and receivers support them currently. HAB Rx is a common library for HAB Base, Explora and PADD. The HAB Base column shows that HAB Base displays those fields in the Payload window.

#FieldNotesFlexTrakFlexTrackPITSHAB RxSondehubHAB Base
0PayloadIDYYYYYY
1CounterYYYYY
2TimeYYYYYY
3LatitudeYYYYYY
4LongitudeYYYYYY
5AltitudeYYYYYY
6SatellitesYYYYYY
7SpeedNot WorkingNYYY
8HeadingNot WorkingNYYY
9Battery VoltageYNYYYY
AInternalTemperatureYNYY (if no ext)Y
BExternalTemperatureYYYYY
CPredictedLatitudeYYYYYY
DPredictedLongitudeYYYYYY
ECutdownStatus0 = Idle
1 = Armed
2 = Triggered (Altitude)
3 = Triggered (Manual)
4 = Triggered (Other)
YYYY
FLastPacketSNRYYYYY
GLastPacketRSSIYYYYY
HReceivedCommandCountYYYYY
I-NExtraFieldsYN
OMaximumAltitude
PBattery CurrentYYY
QExternal Temperature 2Y
RPressureYYYY
SHumidityYYYY
TCDAYYY
UPredicted Landing SpeedYYY
VTime Till LandingYYY
WLast Command ReceivedYYY
X
Y
Z

Tracker Support

Follow me on Twitter for release announcements.

All of my existing trackers will work fine with Sondehub/amateur, however you will only see the essential fields (see above) unless you update and enable the fieldlist function.

PITS

Update to the current version, then edit /boot/pisky.txt and add the following line:

Send_Field_List=Y

The field list will then be automatically built and appended to the telemetry.

FlexTrak (Pi/STM)

The next release will support sending the field list. This can be configured using the configuration file on the Pi, or by connecting the tracker to a PC with a USB-serial cable and using the Windows configuration program. The field list itself can also be configured using either of those methods.

FlexTrak (Pi/AVR)

The next release will support sending the field list. This can be configured using the configuration file on the Pi, or by connecting the tracker to a PC with a USB-serial cable and using the Windows configuration program. The field list itself can also be configured using either of those methods.

FlexTrack ESP32

The next release will support sending the field list. This can be configured using the Windows configuration program. The field list will then be automatically built and appended to the telemetry.

FlexTrack AVR

The next release will support sending the field list. This can be configured using #defines at the top of the flextrack.ino file. The field list will then be automatically built and appended to the telemetry.

Receiver Support

Follow me on Twitter for release announcements.

LoRa Gateway

Update to the current version, then edit gateway.txt and add the following line:

EnableSondehub=Y

Tracker telemetry will then be sent to sondehub/amateur. If the telemetry contains a field list then the specified fields will be sent as well as the basic ones.

HAB Base

Update to the current version.

Uploading

To enable uploads sondehub/amateur, click the System Settings button and click the Sondehub option:

Tracker telemetry will then be sent to sondehub/amateur. If the telemetry contains a field list then the specified fields will be sent as well as the basic ones.

Local Payload Receiving

To receive telemetry of nearby payloads from sondehub/amateur, (equivalent to the previous HABHUB Logtail, option), add a new source and choose “Sondehub” from the drop-down list of source types:

For any payload that you are uploading to sondehub/amateur, you can load the Sondehub map for that payload by using the link under the Settings tab:

HAB Explora

This is being worked on.

HAB PADD

This is being worked on.

You can leave a response, or trackback from your own site.

Leave a Reply

Subscribe to RSS Feed Follow me on Twitter!