Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

Last updated 2022/05/01 on commit ee37ed4d4c176eab1cd72d50df63b91d229a02f5

Overview

In the center, there are 3 buttons, 2 LEDs, and 1 screen. On the right, there’s a reset button and a power switch.

The left, red LED lights up when the board is powered. The right, blue LED lights up when telemetry data is received.

There are two modes of operation: serial and radio. In serial mode, GPS coordinate is received from USB serial; in radio mode, GPS coordinate is received from the radio module.

Calibration

The on-board compass needs to be calibrated when a firmware is flashed or when using stpats in a new environment. The compass will not work correctly without calibration. To enter calibration mode, press the left button. The min/max value of each axis should appear on the top left of the screen. Rotate the whole device in every direction so the numbers stabilize, the press the left button again to save the calibration.

Radio Telemetry

The radio and serial mode can be toggled using the right button. At the time of writing, the live telemetry is not done yet, so I used an Arduino to send fake coordinates at 57600 baud to test serial reading and parsing. In theory, plugging in configured live telemetry breakout should just work. In reality, who knows.

Serial Telemetry

As an alternative to radio telemetry, USB serial can also be used to send GPS coordinate to stpats. The serial mode can be switched to using the right button. The GPS message has the format of [0-9]+.[0-9]*[NSEWM], for example: 12.34N56.78W90Mmeans 12.34 degrees north, 56.78 degrees west, 90m high. The altitude information is not used in the calculations so it’s optional.

aprs2stpats.py

The stpats repository includes a utils/aprs2stpats.py that can be used to send APRS coordinates to stpats. To use, install aprspy and bitstring using pip, then follow the steps in Receiving APRS Packet to setup and run direwolf.

Usage:

aprs2stpats.py [--host HOST | -H HOST] [--port PORT | -p PORT] [--callsign CALLSIGN | -c CALLSIGN] [--output OUTPUT | -o OUTPUT] [--debug]

The --host and --port options specifies the KISS TNC server to connect to. By default, they are 127.0.0.1:8001, which connects to a direwolf instance running on localhost.

The --callsign option filters the message by sender’s callsign, in case there are multiple APRS beacons on the same frequency. Note the callsign includes ssid, for example, VE7OIR-1 instead of just VE7OIR. By default, it forwards all GPS messages.

The --output option specified the output. By default it is stdout. To send the output to serial, use --output \\.\COM1 (Windows) or --output /dev/ttyACM0 (Linux), change COM1 or ACM0 to the actual serial port stpats is on.

The --debug options prints additional info to stderr.

Persistent Location

Press the middle button in either mode to save the current tracking location in flash so a reset doesn’t lose it. Most useful when one wants to unplug stpats from computer in serial mode, pressing the middle button before disconnecting allows one to move around without worrying losing track in case of accidental reset.

Note: similiar to calibration data, flashing a firmware wipes the flash and so the saved data.

  • No labels