v0.6.0 — GPS geotagging + SigMF export
Aetherscope v0.6.0 adds optional GPS geotagging and SigMF capture export.
GPS geotagging (opt-in, default off)
- New raw-socket gpsd client (
backend/gps.py, no new dependency): connects only
while enabled, parses TPV/SKY, keeps a thread-safe last-known position, and
never logs latitude/longitude. - A header GPS pill leads with fix quality ("GPS 3D, 7 sat") and keeps
coordinates masked behind the tooltip; clicking it toggles geotagging. - A live Receiver (GPS) marker tracks your position on the ADS-B map.
- Captures are stamped with a
geolocationin their sidecar when GPS is enabled
and holding a fresh fix; geotagging never blocks or fails a capture. - Privacy controls: per-capture Remove location redaction, a Geotag
precision setting (full / ~100 m / ~1 km) that coarsens only the stored
artifact (the live map stays exact), andAETHERSCOPE_GPS=0to hard-disable. - Capture timestamps stay on the system clock (the puck has no PPS); GPS supplies
position only.
SigMF export
- Each capture also writes a companion
<base>.sigmf-meta(SigMF 1.0.0)
referencing the.iqviacore:dataset, so recordings are portable to other
SDR tools (GNU Radio, inspectrum, IQEngine, thesigmflibrary). Geotags ride
incore:geolocation(GeoJSON Point) and are scrubbed by redaction. A SigMF
download link is on each capture row. Non-breaking: the.iqand UI sidecar
are unchanged.
10 test suites (new: test_gps, test_sigmf), CI green. Everything from v0.5.0
carries forward. Install and run are unchanged; geotagging requires a local gpsd
and is off until you enable it.
Env: AETHERSCOPE_GPSD_HOST / AETHERSCOPE_GPSD_PORT (default 127.0.0.1:2947),
AETHERSCOPE_GPS=0 to disable.