Skip to content

Getting your Flight on the Sondehub Amateur Tracker

Mark Jessop edited this page Oct 14, 2023 · 15 revisions

So, you're planning to launch a high-altitude balloon, and want it to show up on amateur.sondehub.org? This page provides information on how commonly used telemetry/modulation systems can be submitted to the SondeHub-Amateur database for display on the map, and how you can provide details on your flight to improve the accuracy of the automatically generate flight-path predictions.

A note on Callsigns

Telemetry within the SondeHub-Amateur database is distinguished by 'callsign' - a payload identifier that must be unique for each payload flown, including payloads with different modulation types. For example, if you perform a launch with an APRS payload and a Horus Binary payload, they must use different callsigns (e.g. 'VK5ARG-4FSK' for Horus Binary and 'VK5ARG-11' for APRS), otherwise undefined behaviour may result!

Accepted Telemetry / Modulations

SondeHub-Amateur's database is modulation-agnostic - if the received telemetry can be submitted in the correct format, then it will appear on the map. It is important that telemetry uploaded from multiple receivers be consistent.

Some examples of commonly used modulations, and how they can be received and submitted to SondeHub-Amateur are provided below:

Horus Binary v1/v2

'Horus Binary' is a modulation format developed by Project Horus as an open-source and highly-robust alternative to RTTY and LoRa. Most Horus Binary trackers are re-purposed Vaisala RS41 radiosondes, running RS41ng firmware. There are also implementations available for custom payloads, with information available here.

Payloads transmitting Horus Binary v1/v2 telemetry and received using Horus-GUI or horusdemodlib will appear on the map automatically, if SondeHub-Amateur uploading is enabled.

LoRa (UKHAS-format Telemetry)

LoRa payloads using UKHAS-format ASCII telemetry (not to be confused with LoRaWAN payloads) are often found in Europe, in particular the UK, with the popular 'FlexTrak' and 'Pi-in-the-Sky' trackers. These are most often found in the 70cm ISM band, around (~434 MHz) - check the SondeHub-Amateur tracker for the exact frequency in use.

These can be decoded using a LoRa receiver IC, and Dave Akerman's HAB Base, PADD, Explora and LoRa gateway software. You can find information about Dave's software here.

Amateur Packet Reporting System (APRS)

APRS is commonly used by flights in the United States and some other areas, making use of the coverage of the existing APRS network. Telemetry is received by the network via 'iGates', where it is uploaded into the APRS Internet Service (APRS-IS) network.

Payloads transmitting APRS will be automatically imported into the SondeHub-Amateur database from the APRS-IS network. Payloads must be sending compressed, uncompressed, or mic-e position reports using the Balloon symbol (Primary Symbol Table, 'O'). Some additional filters are also used to avoid radiosonde traffic being imported.

By default, APRS telemetry will only show up on the tracker map if it has exceeded 1.5km altitude at some point during the currently selected time window. This restriction is in place to avoid map clutter from payloads under test and other non-high-altitude-balloon traffic. This filter can be disabled from the settings tab on the tracker ("Show Low-Altitude APRS").

Currently there is no support for extracting telemetry from telemetry-format messages, and only limited support for comment-field telemetry. If you would like parser for additional telemetry formats added, please consider contributing to the APRS gateway codebase.

WSPR

Many long-duration 'floater' flights make use of the Weak Signal Propagation Reporting (WSPR) modulation, and the related 'WSPRnet' - a community of WSPR receiving stations around the globe. WSPR signals are generally found on the 20m and 30m amateur radio bands, and use a very low symbol rate, and very low transmit power.

There appears to be a few different ways of obtaining telemetry from WSPR payloads, by inserting telemetry into fields in the WSPR packet normally used for things like callsign, transmit power, and position. Operators of WSPR flights usually run software to extract data from the WSPRnet database, re-format it, and upload it into APRS-IS, where it will be imported automatically into SondeHub-Amateur (see above).

We invite developers of WSPR payloads to upload data directly into the SondeHub-Amateur database, bypassing the APRS-IS step!

RTTY (using UKHAS-format Telemetry)

Currently SondeHub-Amateur does not support parsing of arbitrary UKHAS-format telemetry. This may be added in the future.

Limited support for receiving some RTTY telemetry is possible through Horus-GUI, which can demodulate RTTY and extract the most common telemetry fields, as long as the sentence is in the format:

$$CALLSIGN,frame_counter,HH:MM:SS,latitude,longitude,altitude,other,fields,here*CRC16\n

All fields after altitude will be ignored.

LoRaWAN (via TTN v3, Helium)

Helium and TheThingsNetworks payloads can be tracked using our Helium/TTN Gateway. Check out this page for more information on how to integrate SondeHub with your tracker!

Flight Predictions

While a payload is in flight, SondeHub-Amateur will run a flight path prediction using the Tawhiri prediction engine at approximately 60-second intervals. To run a prediction, Tawhiri needs the following information:

  • Where is the payload? - This is determined from the latest payload telemetry.
  • If the payload is on ascent:
    • What is the current ascent rate? - This is determined by averaging the ascent rate of the payload over the last 60 seconds.
    • What is the expected burst altitude? - This is assumed to be 30km altitude, but can be customised (see below).
    • What is the expected descent rate? - This is assumed to be 5 m/s (as measured at sea-level), but can also be customised.
  • If the payload is on descent:
    • What is the expected descent rate? - This is determined by averaging the current descent rate of the payload, and extrapolating it to sea level using an atmospheric density model, assuming a constant drag coefficient.

This covers a typical short (a few hours) flight.

For flights that are observed to float, (greater than 2km altitude, and with an ascent rate less than 0.5m/s), a float prediction will be run. This assumes a constant altitude, and predicts the path of the payload over the next 24 hours.

Per-Callsign Prediction Parameters

The prediction settings can be customised on a per-callsign basis by providing the following data:

  • Is the flight expected to float?
  • What is the expected burst/float altitude?
  • What is the expected descent rate? (as measured at sea-level)

This information can be submitted on the SondeHub-Amateur Tracker site, under the 'Flight Information' tab (balloon icon).

If a flight with per-callsign parameters set is observed to enter a float state, and the per-callsign parameters indicate a float is not expected, then instead of a float prediction running, a descent prediction from the current altitude will be run instead.

Chase Car Positions

If you're out chasing your flight, you may want to display your position on the map, so that spectators can see where you are, and how the chase is going! Currently there are two ways to display your chase-car position on the tracker:

SondeHub-Amateur Tracker Webpage

The tracker webpage includes a chase-car feature! If your browser can supply location information (e.g. if you load the tracker on a mobile phone), then that location will appear on the top-left of the tracker, just to the right of the search box. To upload this location as a chase-car position, click the car icon at the top-right of the tracker, enter a callsign, and click 'Enable'. It's that easy!

ChaseMapper

The Project Horus ChaseMapper software supports uploading chase car positions to SondeHub-Amateur, by setting the online_tracker setting in the configuration file to sondehubamateur.

Linking to the Tracker

As you pan around the map on https://amateur.sondehub.org/ you may notice that the URL changes, showing the current map centre position, zoom level, and map layer used. For example, a URL zoomed in over the Adelaide, South Australia area is: https://amateur.sondehub.org/#!mt=Mapnik&mz=8&qm=1d&mc=-34.76042,139.92436 You can copy and distribute this URL to direct people to where on the map your flight is!

You can also filter by callsign (currently only one callsign at a time), by entering the callsign into the search box at the top-left of the tracker. This will filter to just that one callsign, though will still also show any chase cars that might be chasing the balloon. The URL will update with the filter information, e.g.: &q=HORUS-V2