gps: modem GNSS -> gpsd -> OwnTracks/MQTT publisher

EC25-AF GNSS wiring (udev hotplug into gpsd) plus van-gps-owntracks, a
port of the wayback-era gps_to_owntracks.py: apt-only deps (python3-gps
instead of pip-only gpsdclient, paho 2.x callback API), broker secrets
moved out of the code into /etc/van-gps/config.json (0600, seeded from
a sanitized example), gpsd host now localhost. client_id is vanq-wan —
a legacy client still holds vanq on the broker and shared IDs get
kicked in a connect/disconnect loop. Exit-on-disconnect + systemd
Restart=always is the reconnect logic.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Andreas Wrede
2026-07-14 22:03:40 -04:00
co-authored by Claude Fable 5
parent d2a2b19b85
commit 8d5415f326
7 changed files with 261 additions and 1 deletions
+14
View File
@@ -0,0 +1,14 @@
[Unit]
Description=Publish gpsd fixes to OwnTracks via MQTT
After=network-online.target gpsd.service
Wants=network-online.target
[Service]
ExecStart=/usr/local/sbin/van-gps-owntracks
# The script exits on MQTT disconnect / DNS failure by design; a fresh start
# is the reconnect. 15s so a dead WAN doesn't turn this into a hot loop.
Restart=always
RestartSec=15
[Install]
WantedBy=multi-user.target