Telemetry dashboard for APRS packets from TNC, https://aprs.fi, and PostGIS
Project description
PacketRaven
PacketRaven is a front-end data aggregator / dashboard, designed to track the progress of high-altitude balloon payload flights via location telemetry.
pip install packetraven
Examples:
listen to a TNC sending raw APRS strings over USB port COM4:
packetraven --tnc COM4
listen to APRS.fi, watching specific callsigns:
you need an API key to connect to APRS.fi; you can get one from https://aprs.fi/page/api
packetraven --apikey <api_key> --callsigns W3EAX-8,W3EAX-14
listen to a PostGIS database table:
packetraven --database <username>@<hostname>:5432/<database_name>/<table_name>
watch a text file for new lines containing raw APRS strings:
packetraven --tnc http://bpp.umd.edu/archives/Launches/NS-95_2020-11-07/APRS/W3EAX-11/W3EAX-11_raw_NS95.txt
listen to a TNC on COM3, watching specific callsigns, and synchronize new packets with a database table via SSH tunnel:
packetraven --tnc COM3 --callsigns W3EAX-8,W3EAX-14 --database <username>@<hostname>:5432/<database_name>/<table_name> --tunnel <ssh_username>@<hostname>:22
Graphical User Interface
to start the GUI, add --gui
to any packetraven
command
packetraven --gui
packetraven --callsigns W3EAX-8,W3EAX-14 --apikey <api_key> --gui
Usage:
usage: packetraven [-h] [--callsigns CALLSIGNS] [--apikey APIKEY] [--tnc TNC] [--database DATABASE]
[--tunnel TUNNEL] [--igate] [--start START] [--end END] [--log LOG] [--output OUTPUT]
[--interval INTERVAL] [--gui]
optional arguments:
-h, --help show this help message and exit
--callsigns CALLSIGNS
comma-separated list of callsigns to track
--apikey APIKEY APRS.fi API key (from https://aprs.fi/page/api)
--tnc TNC serial port or text file of TNC parsing APRS packets from analog audio to ASCII (set to
`auto` to use the first open serial port)
--database DATABASE PostGres database table `user@hostname:port/database/table`
--tunnel TUNNEL SSH tunnel `user@hostname:port`
--igate send new packets to APRS-IS
--start START start date / time, in any common date format
--end END end date / time, in any common date format
--log LOG path to log file to save log messages
--output OUTPUT path to output file to save packets
--interval INTERVAL seconds between each main loop (default: 5)
--gui start the graphical interface
Python API:
to retrieve packets directly from https://aprs.fi:
from packetraven import APRSfi
callsigns = ['W3EAX-8', 'W3EAX-12', 'KC3FXX', 'KC3ZRB']
api_key = '<api_key>' # enter your APRS.fi API key here - you can get one from https://aprs.fi/page/api
aprs_fi = APRSfi(callsigns, api_key)
aprs_fi_packets = aprs_fi.packets
print(aprs_fi_packets)
or parse packets from a TNC sending parsed APRS over a USB connection:
from packetraven import SerialTNC
serial_port = 'COM5' # set to `'auto'` to connect to the first open serial port
tnc = SerialTNC(serial_port)
tnc_packets = tnc.packets
print(tnc_packets)
or connect to a PostGreSQL database running PostGIS:
from packetraven import APRSDatabaseTable
callsigns = ['W3EAX-8', 'W3EAX-12', 'KC3FXX', 'KC3ZRB']
hostname = '<hostname>:5432'
database = '<database_name>'
table = 'packets'
username = '<username>'
password = '<password>'
# parameters for an SSH tunnel
ssh_hostname = None
ssh_username = None
ssh_password = None
table = APRSDatabaseTable(hostname, database, table, callsigns,
username=username, password=password,
ssh_hostname=ssh_hostname, ssh_username=ssh_hostname, ssh_password=ssh_password)
table_packets = table.packets
print(table_packets)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file packetraven-1.5.2.tar.gz
.
File metadata
- Download URL: packetraven-1.5.2.tar.gz
- Upload date:
- Size: 28.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.8.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9a58b497c4d78c8f03b363c4a9eda7050e2579d1dee2f972c1b87f5230e44d9e |
|
MD5 | 7647bd831be5d303ee565e948466e7b8 |
|
BLAKE2b-256 | fffcd077382d580d1cd249d35fd262b587fdbff26f4f18db097cbfa3aa1b913f |
Provenance
File details
Details for the file packetraven-1.5.2-py3-none-any.whl
.
File metadata
- Download URL: packetraven-1.5.2-py3-none-any.whl
- Upload date:
- Size: 32.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.8.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d236e1d37ed5a1cd6f24decd149bc9f0a5a76ec1406ac7a7ba171acab9d9b7f |
|
MD5 | 2c380510e07dee6923077f96a593f9b8 |
|
BLAKE2b-256 | d76949619518fa530884e69e7f03d5b6b9b06fa862ae1940aeed5824af308745 |