Squashed rewrite of the project revival work (replaces prior history on this branch to remove personal data that had been accidentally committed - real LAN IP, GPS coordinates, home WiFi SSID, and phone model). See PLAN.md for full phase-by-phase details. Summary: - Phase 2: adapt app_obd.py for a USB OBD-II adapter (was Bluetooth-only), auto-detect /dev/ttyUSB*, fix several pre-existing crash bugs. - Phase 3/4: make the web UI work fully offline (vendored Socket.IO/Leaflet/ Chart.js/FontAwesome, offline map tile downloader script, live GPS marker tracking fix). - Phase 5: systemd deployment/autostart on the Pi. - Phase 6: WiFi hotspot mode via NetworkManager (auto-switch between home WiFi and a local AP for in-car web UI access), mDNS hostname + port 80 redirect so the UI is reachable at a plain hostname with no port number. - Phase 7: fix app_db.py/app_sql.py bugs, wire up local SQLite trip logging. - Phase 8: brand-agnostic USB dashcam file retrieval (lsblk transport-based detection, works with any dashcam brand/folder layout). - Rewritten readme.md with a proper project overview. Co-authored-by: Copilot <[email protected]>
23 lines
695 B
Desktop File
23 lines
695 B
Desktop File
[Unit]
|
|
Description=Yaris OBD/GPS tracker web UI
|
|
After=network-online.target
|
|
Wants=network-online.target
|
|
|
|
[Service]
|
|
Type=simple
|
|
User=yaris
|
|
Group=yaris
|
|
WorkingDirectory=/home/yaris/app/yaris-obd
|
|
ExecStart=/home/yaris/app/yaris-obd/venv/bin/python app.py
|
|
Restart=on-failure
|
|
RestartSec=5
|
|
# Give the app a few seconds after boot for USB/serial devices to enumerate
|
|
# before the first connection attempt - it retries gracefully either way,
|
|
# but this avoids needless noisy "no connection" logs on every cold boot.
|
|
ExecStartPre=/bin/sleep 5
|
|
StandardOutput=append:/home/yaris/app/yaris-obd/yaris-obd.log
|
|
StandardError=append:/home/yaris/app/yaris-obd/yaris-obd.log
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|