Skip to main content

Balloon payload telemetry over APRS

Project description

PacketRaven

tests build version license

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

Usage:

packetraven -c W3EAX-8,W3EAX-12 -k <aprs_fi_api_key> 
usage: packetraven [-h] [-c CALLSIGNS] [-k APIKEY] [-p TNC] [-d DATABASE] [-t TUNNEL] [-s STARTDATE] [-e ENDDATE] [-l LOG] [-o OUTPUT] [-i INTERVAL] [-g]

optional arguments:
  -h, --help            show this help message and exit
  -c CALLSIGNS, --callsigns CALLSIGNS
                        comma-separated list of callsigns to track
  -k APIKEY, --apikey APIKEY
                        API key from https://aprs.fi/page/api
  -p TNC, --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)
  -d DATABASE, --database DATABASE
                        PostGres database table `user@hostname:port/database/table`
  -t TUNNEL, --tunnel TUNNEL
                        SSH tunnel `user@hostname:port`
  -s STARTDATE, --startdate STARTDATE
                        starting date of time period of interest: `"YYYY-MM-DD HH:MM:SS"`
  -e ENDDATE, --enddate ENDDATE
                        ending date of time period of interest `"YYYY-MM-DD HH:MM:SS"`
  -l LOG, --log LOG     path to log file to save log messages
  -o OUTPUT, --output OUTPUT
                        path to output file to save packets
  -i INTERVAL, --interval INTERVAL
                        seconds between each main loop (default: 10)
  -g, --gui             start the graphical interface

Python API:

to retrieve packets directly from https://aprs.fi:

from packetraven import APRSfiConnection

callsigns = ['W3EAX-8', 'W3EAX-12', 'KC3FXX', 'KC3ZRB']
api_key = '' # enter your APRS.fi API key here - you can get a free API key from https://aprs.fi/page/api

aprs_fi = APRSfiConnection(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 = None # leave None to let PacketRaven guess the port name  

tnc = SerialTNC(serial_port)
tnc_packets = tnc.packets

print(tnc_packets)

or connect to a PostGreSQL database running PostGIS:

from packetraven import APRSPacketDatabaseTable

callsigns = ['W3EAX-8', 'W3EAX-12', 'KC3FXX', 'KC3ZRB']

hostname = 'bpp.umd.edu:5432'
database = 'bpp'
table = 'packets'

username = 'username'
password = '1234'

# parameters for an SSH tunnel
ssh_hostname = None
ssh_username = None
ssh_password = None

table = APRSPacketDatabaseTable(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)

Features:

current:
  • parse APRS packets from USB TNC
  • retrieve packets from https://aprs.fi
  • synchronize with a PostGreSQL database
  • output packets to file
  • plot altitude
in development:
  • flight track plotting
  • live track prediction
  • Iridium telemetry and commands
  • live chase navigation

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

packetraven-1.2.1.tar.gz (25.9 kB view details)

Uploaded Source

Built Distribution

packetraven-1.2.1-py3-none-any.whl (29.9 kB view details)

Uploaded Python 3

File details

Details for the file packetraven-1.2.1.tar.gz.

File metadata

  • Download URL: packetraven-1.2.1.tar.gz
  • Upload date:
  • Size: 25.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.8.5

File hashes

Hashes for packetraven-1.2.1.tar.gz
Algorithm Hash digest
SHA256 42f1364b6badcc7097af1d19b689d0ebbd0921c04eac40ccab8074b8649cd287
MD5 66de98b4cdb23bc964a4b127b2e895f1
BLAKE2b-256 5d0ca14678853abe70cd7c1c0a72d3f98894244168ade685168eb53cc55823ec

See more details on using hashes here.

Provenance

File details

Details for the file packetraven-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: packetraven-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 29.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.8.5

File hashes

Hashes for packetraven-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 de40f7d0df84d78fc55158ce676437f46fe3cefc3664ed3be4c7965c361b9d5c
MD5 6165ed8edd4d132ddf8c4e827455808c
BLAKE2b-256 ee859d56734372cc5abc83d53fbded0493c0783c07571e2f07f2b61f2214d464

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page