obd-poller over the K-line via the Bluetooth ELM327; gnss publisher; elm_connected
obd-poller drops its CAN socket: the Z27AG answers OBD-II only on ISO 9141-2. It holds a raw RFCOMM link to the ELM (no pairing, no root), fixes the protocol (ATSP3) so nothing probes CAN, publishes the obd_* signals, and releases the adapter after a minute of ECU silence so it can sleep. gnss: gpsd's fix as yukart/gnss/<signal>. orin-status: elm_connected from BlueZ. One native deploy script (deploy-native.sh BIN) behind the per-service ones; /etc/default/yukart-elm holds the adapter's address. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DDwfd6Ki8UfG4hK6W5YpJz
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
# The ELM327 (OBD-II on the K-line, over Bluetooth serial): its address, read by
|
||||
# yukart-obd-poller (which connects) and yukart-orin-status (which only watches).
|
||||
# Installed to /etc/default/yukart-elm by scripts/deploy-native.sh when absent;
|
||||
# edit it there for another adapter, then restart both services.
|
||||
ELM_ADDR=00:0C:BF:50:AF:3F
|
||||
@@ -0,0 +1,15 @@
|
||||
[Unit]
|
||||
Description=Yukart gnss: the receiver's fix on the bus, as single values
|
||||
Documentation=gitea:yukart/svc-core
|
||||
# Tier 2. Ordered after the broker and gpsd; it reconnects to either by itself.
|
||||
After=mosquitto.service gpsd.service
|
||||
StartLimitIntervalSec=0
|
||||
|
||||
[Service]
|
||||
User=mikkeli
|
||||
ExecStart=/usr/local/bin/yukart-gnss
|
||||
Restart=always
|
||||
RestartSec=2
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -1,14 +1,15 @@
|
||||
[Unit]
|
||||
Description=Yukart obd-poller: OBD-II mode 01 polling, the single CAN writer
|
||||
Description=Yukart obd-poller: OBD-II over the K-line through the Bluetooth ELM327
|
||||
Documentation=gitea:yukart/svc-core
|
||||
# Tier 2. Ordered after the broker and nothing else: the adapter comes and goes, and
|
||||
# the poller only sends while the bus is visibly alive.
|
||||
After=mosquitto.service
|
||||
# Tier 2. Ordered after the broker and Bluetooth: the adapter comes and goes, and the
|
||||
# poller connects, releases and retries by itself.
|
||||
After=mosquitto.service bluetooth.service
|
||||
StartLimitIntervalSec=0
|
||||
|
||||
[Service]
|
||||
User=mikkeli
|
||||
ExecStart=/usr/local/bin/yukart-obd-poller
|
||||
EnvironmentFile=/etc/default/yukart-elm
|
||||
ExecStart=/usr/local/bin/yukart-obd-poller --elm ${ELM_ADDR}
|
||||
Restart=always
|
||||
RestartSec=2
|
||||
|
||||
|
||||
@@ -9,7 +9,9 @@ StartLimitIntervalSec=0
|
||||
User=mikkeli
|
||||
# The UPS INA219 is on /dev/i2c-7, group i2c.
|
||||
SupplementaryGroups=i2c
|
||||
ExecStart=/usr/local/bin/yukart-orin-status
|
||||
# The ELM's address, for elm_connected; without the file nothing is reported.
|
||||
EnvironmentFile=-/etc/default/yukart-elm
|
||||
ExecStart=/usr/local/bin/yukart-orin-status --elm ${ELM_ADDR}
|
||||
Restart=always
|
||||
RestartSec=2
|
||||
|
||||
|
||||
Reference in New Issue
Block a user