Skip to content

nakhonthai/aprs-python

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

252 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A python library for dealing with APRS. It can be used to interact with APRS-IS servers, sending and receiving. Parsing functionality is included and supports the following packet formats:

  • Position reports (!, =, @, /, ;, )) — compressed and uncompressed
  • Mic-E (`` ` , ``') — compressed position for mobile units
  • Message (:) — directed messages, bulletins, announcements, ACK/REJ
  • Status report (>)
  • Positionless weather (_) — standard fields plus ESP32APRS extended fields (see below)
  • Telemetry report (T) — T#seq,a1,a2,a3,a4,a5,bits packets
  • Maidenhead locator beacon ([) — grid square to lat/lon conversion
  • Station capabilities (<) — IGATE and related capability advertisements
  • General query (?) — APRS, WX, IGATE query packets
  • Raw GPS / NMEA ($) — GPRMC and GPGGA sentences with checksum validation
  • Raw weather / Peet Bros (#) — Ultimeter 2000 data-logging format
  • Complete weather / Peet Bros (*) — Ultimeter 2000 complete record format
  • Third-party traffic (})
  • User-defined ({)
  • Beacon — fallback for common TOCALL patterns

Weather Fields

Standard APRS weather fields parsed from position reports and _ packets:

Key Field Unit
c wind_direction degrees
s wind_speed m/s
g wind_gust m/s
t temperature °C
r rain_1h mm
p rain_24h mm
P rain_since_midnight mm
h humidity %RH
b pressure hPa
L luminosity W/m² (0–999)
l luminosity W/m² (1000–1999)
s snow mm

Extended weather fields from ESP32APRS_LoRa (HS5TQA):

Key Field Unit
m soil_temp °C
M soil_moisture %VWC
w water_temp °C
W water_tds ppm
v water_level mm
d pm25 μg/m³
D pm100 μg/m³
x co2 ppm (0–9999)
X co2 ppm (10000–99990)
F ch2o μg/m³
o tvoc μg/m³
u uv UV index
n sound dB
T temperature °C (high-precision, ×50)
H humidity %RH (high-precision, ×10)

T and H encode the same measurement as t and h at higher precision and will overwrite them if both appear in the same packet.

See the documentation.

Installation

To install the latest dev version from the Github repo:

pip install git+https://github.com/nakhonthai/aprs-python 

Contribution

Suggestions, issues and pull requests are welcome.

About

📡 Python module for working with APRS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 99.5%
  • Makefile 0.5%