2d62d1a4f8
mttcan and pcan both load at boot, so the PCAN adapter could take can0 and push the onboard controller to can1. A udev rule now names them can_onboard (platform c310000.mttcan) and can_pcan (USB 0c72:000c), both outside the canN pool so a transient canN can never collide. Also records why the SIM7600 needs nothing more: ModemManager and NM don't use ttyUSB numbers, and gpsd already uses a symlink. can_onboard is verified live; can_pcan is checked against the driver source only (adapter not plugged in). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
56 lines
2.6 KiB
Markdown
56 lines
2.6 KiB
Markdown
---
|
||
type: reference
|
||
---
|
||
# Bill of Materials
|
||
|
||
## PEAK-System PCAN-USB
|
||
|
||
| Field | Value |
|
||
|-------|-------|
|
||
| **Manufacturer** | PEAK-System Technik GmbH |
|
||
| **Model** | PCAN-USB |
|
||
| **USB ID** | `0c72:000c` |
|
||
| **Purpose** | USB-to-CAN adapter for reading car CAN bus traffic |
|
||
| **Interface** | SocketCAN netdev |
|
||
| **Default bitrate** | 500 kbps |
|
||
| **Driver** | PEAK proprietary driver 9.2.0 (netdev build) — out-of-tree module, must be rebuilt after kernel updates |
|
||
|
||
### Notes
|
||
|
||
- The mainline kernel driver `peak_usb` is not compiled into the NVIDIA Tegra kernel (JetPack r36.4), so PEAK's proprietary driver is required.
|
||
- Must be built with `NET=NETDEV_SUPPORT` for standard SocketCAN tools (`candump`, `ip link`, etc.).
|
||
- The module lives at `/lib/modules/$(uname -r)/misc/pcan.ko` and is loaded via `modprobe pcan`.
|
||
- Jetson Orin Nano has a built-in CAN controller (exposed by GPIO pins). Kernel `canN` order is not stable, so both are pinned by udev: onboard → `can_onboard`, PCAN-USB → `can_pcan` ([device naming](impl/reports/DEVICE-NAMING.md)).
|
||
|
||
## Waveshare SIM7600G-H-M.2
|
||
|
||
[hat](https://www.waveshare.com/wiki/SIM7600G-H-M2_4G_HAT) [module](https://www.waveshare.com/wiki/SIM7600G-H-M.2)
|
||
|
||
| Field | Value |
|
||
|-------|-------|
|
||
| **Manufacturer** | Waveshare (SIMCom SIM7600G-H-M.2 module) |
|
||
| **Form factor** | M.2 B KEY |
|
||
| **Purpose** | LTE Cat 4 cellular + multi-constellation GNSS (GPS, Beidou, GLONASS, GALILEO, QZSS) |
|
||
| **Interface** | USB (ttyUSB* for AT commands/NMEA, QMI `cdc-wdm0` + `wwan0` for data) |
|
||
| **Power** | 3V – 4.2V (board rail) |
|
||
| **Antennas** | 3× IPEX (LTE main + LTE diversity + GNSS) |
|
||
| **Max data rate** | 150 Mbps DL / 50 Mbps UL (LTE Cat 4) |
|
||
|
||
### Required software
|
||
|
||
| Package | Purpose |
|
||
|---------|---------|
|
||
| `gpsd` | Decode NMEA from the GNSS ttyUSB port |
|
||
| `ModemManager` + `NetworkManager` | Manage the modem and the LTE data connection (QMI) |
|
||
| `qmi_wwan` + `cdc-wdm` kernel modules | Not in the Tegra kernel; built out of tree in `~/infra/qmi_wwan/` |
|
||
| `minicom` (or `picocom`) | AT command terminal for module configuration |
|
||
|
||
### Notes
|
||
|
||
- The module presents multiple USB serial ports (`/dev/ttyUSB0`–`/dev/ttyUSB4`) — ttyUSB2/3 for AT commands, ttyUSB1 for NMEA GPS data (symlinked as `/dev/sim7600-gps`).
|
||
- Default USB composition (PID 9001) is used with QMI; no PID switch needed. PPP dial-up does not work with the povo SIM (network detaches).
|
||
- Setup details: [SIM7600 setup report](impl/reports/SIM7600-SETUP.md).
|
||
- M.2 B KEY is **not** mechanically compatible with Mini-PCIe.
|
||
- Supply voltage should be ~4.0 V for reliable operation.
|
||
- DO NOT hot-plug while powered.
|