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: cli.py [-h] [-c [CALLSIGNS]] [-k APIKEY] [-p PORT] [-d DATABASE]
              [-t TUNNEL] [-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 (default:
                        None)
  -k APIKEY, --apikey APIKEY
                        API key from https://aprs.fi/page/api (default: None)
  -p PORT, --port PORT  name of serial port connected to APRS packet radio
                        (default: None)
  -d DATABASE, --database DATABASE
                        PostGres database table
                        `user@hostname:port/database/table` (default: None)
  -t TUNNEL, --tunnel TUNNEL
                        SSH tunnel `user@hostname:port` (default: None)
  -l LOG, --log LOG     path to log file to save log messages (default: None)
  -o OUTPUT, --output OUTPUT
                        path to output file to save packets (default: None)
  -i INTERVAL, --interval INTERVAL
                        seconds between each main loop (default: 10)
  -g, --gui             start the graphical interface (default: False)

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 radio sending parsed APRS over a USB connection:

from packetraven import APRSPacketRadio

serial_port = None # leave None to let PacketRaven guess the port name  

radio = APRSPacketRadio(serial_port)
radio_packets = radio.packets

print(radio_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 radio
  • 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.0.tar.gz (23.8 kB view details)

Uploaded Source

Built Distribution

packetraven-1.2.0-py3-none-any.whl (27.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: packetraven-1.2.0.tar.gz
  • Upload date:
  • Size: 23.8 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.0.tar.gz
Algorithm Hash digest
SHA256 0778ffcf869d6e2feca91168ed0fdd7664a0ab39d3c18aa6b9aa01e2578b3855
MD5 38b6f6dd9a28430d0a292cd4f8ce6176
BLAKE2b-256 4329b2421d056bd89bd43316bdee03ea2074c3425cddc2e1cc7a14ff235eae44

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: packetraven-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 27.6 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5542f4be0804e4365a94b067c1fedf7facb995da6634cfdeb7275ee566586c3c
MD5 ef2605a6596d9a50789c8d6d47f63e00
BLAKE2b-256 9aec20dbbcb79e37bf4b48989d45bbe5135b87f1192266a736f4e39c204aa9c5

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