CAN bitrate measured: 500 kbps; can_pcan comes up listen-only
In the car with ignition on, the listen-only probe found 500 kbps (2673 frames in 3 s, zero RX errors; nothing at other rates). The OBD port isn't gatewayed: 27 periodic IDs, ~893 frames/s. A udev rule now starts can-up@can_pcan on boot and hot-plug with 500k and listen-only, to be dropped when obd-poller becomes the single writer. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+1
-1
@@ -12,7 +12,7 @@ type: reference
|
|||||||
| **USB ID** | `0c72:000c` |
|
| **USB ID** | `0c72:000c` |
|
||||||
| **Purpose** | USB-to-CAN adapter for reading car CAN bus traffic |
|
| **Purpose** | USB-to-CAN adapter for reading car CAN bus traffic |
|
||||||
| **Interface** | SocketCAN netdev |
|
| **Interface** | SocketCAN netdev |
|
||||||
| **Default bitrate** | 500 kbps |
|
| **Bitrate** | 500 kbps, measured on the Z27AG OBD port (listen-only by default; see [CAN bitrate plan](impl/plans/CAN-BITRATE.md)) |
|
||||||
| **Driver** | PEAK proprietary driver 9.2.0 (netdev build) — out-of-tree module, must be rebuilt after kernel updates |
|
| **Driver** | PEAK proprietary driver 9.2.0 (netdev build) — out-of-tree module, must be rebuilt after kernel updates |
|
||||||
|
|
||||||
### Notes
|
### Notes
|
||||||
|
|||||||
@@ -1,10 +1,28 @@
|
|||||||
---
|
---
|
||||||
type: plan
|
type: plan
|
||||||
status: active
|
status: done
|
||||||
updated: 2026-10-09
|
updated: 2026-10-09
|
||||||
---
|
---
|
||||||
# CAN Bitrate for the Z27AG: Measure in the Car
|
# CAN Bitrate for the Z27AG: Measure in the Car
|
||||||
|
|
||||||
|
## Result (2026-10-09, in the car, ignition on, PCAN terminator off)
|
||||||
|
|
||||||
|
**500 kbps.** `can-bitrate-probe`: 2673 frames in 3 s at 500k with zero RX errors, 0 frames at every other rate.
|
||||||
|
The OBD port is **not** gatewayed: broadcast traffic is visible passively.
|
||||||
|
|
||||||
|
10 s listen-only capture (`~/can-captures/z27ag-20261009-163736-ign.log`, `candump -L` format): **27 IDs, ~893 frames/s**
|
||||||
|
(≈22% bus load), all periodic at 5 / 10 / 25 / 50 / 100 Hz. IDs: `0C0` (100 Hz), `119 139 13D 149 14D 156 210 231 235 300 312 443`
|
||||||
|
(50 Hz), `239 423 42F 447 570 573` (25 Hz), `2F1` (10 Hz), `159 449 710 711 712 713` (5 Hz), `152` (2 Hz).
|
||||||
|
|
||||||
|
Persisted (boot and hot-plug):
|
||||||
|
|
||||||
|
- `/etc/udev/rules.d/71-can-up.rules`: on add of `can_pcan`, wants `can-up@can_pcan.service`
|
||||||
|
- `/etc/systemd/system/can-up@.service`: oneshot; reads `/etc/default/can-<iface>`, sets the bitrate and options, brings the interface up, and stops with the device
|
||||||
|
- `/etc/default/can-can_pcan`: `BITRATE=500000`, `CAN_OPTS="listen-only on restart-ms 100"`
|
||||||
|
|
||||||
|
**Listen-only stays on during the sniffing phase**, so the adapter never ACKs on the car's bus. When `obd-poller` (the single writer) exists,
|
||||||
|
remove `listen-only on` there and restart the unit.
|
||||||
|
|
||||||
## Goal
|
## Goal
|
||||||
|
|
||||||
Find the bitrate of the bus reachable at the OBD port of the Mitsubishi Colt (Z27AG), then make `can_pcan` come up with it automatically.
|
Find the bitrate of the bus reachable at the OBD port of the Mitsubishi Colt (Z27AG), then make `can_pcan` come up with it automatically.
|
||||||
|
|||||||
Reference in New Issue
Block a user