This is an app for Android that provides the essential functions required when chasing a LoRa high altitude balloon:
- Chase car upload to Habitat
- LoRa reception and upload
- Backup reception of telemetry via Habitat
- Displays telemetry
- Displays distance and direction to payload
- Displays map with balloon and chase positions
- Option to display driving route on map
- Function to provide navigation to balloon using external navigation app
The app will be released in the Google Play store soon.
LoRa reception is via an OTG USB connection to a simple receiver comprising a LoRa module plus microprocessor with USB port; this will be available soon in the Uputronics store, or to build one see this article.
Install and start the program. When it starts it will ask for permission to use the device GPS; since this is needed for almost all program functions then it’s best that you agree!
Then connect the LoRa receiver. Android will ask you if you wish to allow the app to use the device (again, you do!). You should also see a dialog asking what program should be associated with the device; choose this app so that it is automatically opened when you connect the LoRa device.
The app has 3 screen sections. At the top is the main menu with 4 buttons:
- Payloads – Shows received telemetry for up to 3 payloads
- Dir – Shows the direction and distance to the selected payload
- Map – Embedded Google map showing balloon(s) and chase device
- Settings – Shows the various setup screens
The bottom of the screen is for status.
This shows the LoRa USB status, Habitat status and GPS status. These blocks are colour-coded with black-on-dim-yellow meaning not in use; red text shows error or no data; green shows good recent data. The bar also shows current UTC time from the phone’s GPS.
The central area is for function-specific screens, and initially just shows a splash screen.
Up to 3 payloads can be displayed; if a 4th is heard (via the LoRa receiver) then it will replace whichever of the other 3 was last heard from before the others.
Each displayed payload shows the payload ID, time since last message received, UTC time of that message (as sent by the payload), latitude and longitude, altitude (with maximum altitude in brackets), and ascent/descent rate.
If you do have multiple payloads then you can select between them by touching in the box for the desired payload; the selection will then have a thicker border than the others. Once done, the selected payload will be used on the direction screen and for navigation.
This screen shows the distance and direction from your location to the latest position received from the payload.
Note that the compass direction is using the current GPS bearing from the phone, which relies on horizontal movement. For this to be accurate you need to be moving, so if you aren’t then walk approx 10-20 metres in a straight line.
Below the compass there are blocks for the payload latitude, longitude and altitude. Below these are buttons for navigation and map directions to the payload:
- Navigation invokes a navigation app. First time you do this Android will ask you to choose which app you want to use for navigation (e.g. Waze, Google Maps).
- Off Road is the same, but uses a different Android “intent” which means that Android will ask again for your choice and will remember that choice separately. So you can choose a different app e.g. Back Country Navigator or another OS mapping app.
- Show Route uses an embedded (i.e. within this app) Google Map to show road directions to the payload.
This shows an embedded Google map:
The map will initially centre on your location, but will then allow you to drag the map around at will. If you wish it to remain centred on your location then touch the “Car” button; if you wish it to centre on the payload then touch the “Payload” button.
There are 3 sections on the settings page:
- GPS – Controls upload of phone GPS position
- LoRa USB – Settings for the attached LoRa receiver
- Habitat – Control telemetry downloads from Habitat
Touch the appropriate button to enter your desired section. Once there, make your adjustments and then touch “Apply” or “Cancel”.
“Chase Car ID” is what your position will appear as on the spacenear.us map.
“Period” is how many seconds between uploads.
Touch “Enable Upload” (so it is highlighted in yellow) to enable the uploads.
“Frequency” is the centre frequency to set the receiver to.
“Mode” is the LoRa mode to set from 0 to 7; most commonly 0 is used for telemetry, and 1 for SSDV with telemetry.
“Receiver Callsign” is used when uploading telemetry and will appear in the listener section against the payload on spacenear.us.
The 2 buttons enable upload of telemetry and SSDV from the tracker.
This just has a single button to enable download of telemetry from Habitat; when enabled then the app will check Habitat for any telemetry for the payloads that have been received locally, so that if local reception is lost then it can still be possible to receive position updates.
To see the status of the data sources, touch the status bar on any of the source buttons (USB/Habitat/GPS).
If you want to change which apps are invoked from the Directions screen, go to Android Settings –> Apps, choose the existing app, then choose “Open by default”, then “Clear defaults”.