fe284ce540
UPS input comes from the ignition-switched socket via a 15 V PD trigger, so input loss means cranking or ignition off. The INA219 (monitor-only) gives the battery current sign; a host service would mark cranks, then after a grace period close the recording and power off, with a voltage floor as backstop. Records the open hardware problem: after poweroff the UPS keeps the board powered, so it drains and doesn't auto-start at ignition on. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
6.5 KiB
6.5 KiB
type
| 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 |
| Bitrate | 500 kbps, measured on the Z27AG OBD port (listen-only by default; see CAN bitrate plan) |
| 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_usbis not compiled into the NVIDIA Tegra kernel (JetPack r36.4), so PEAK's proprietary driver is required. - Must be built with
NET=NETDEV_SUPPORTfor standard SocketCAN tools (candump,ip link, etc.). - The module lives at
/lib/modules/$(uname -r)/misc/pcan.koand is loaded viamodprobe pcan. - Jetson Orin Nano has a built-in CAN controller (exposed by GPIO pins). Kernel
canNorder is not stable, so both are pinned by udev: onboard →can_onboard, PCAN-USB →can_pcan(device naming).
Waveshare 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.
- 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.
Waveshare UPS Power Module (C)
| Field | Value |
|---|---|
| Purpose | Keep the Orin running through cranking and short power losses, and give time for a clean shutdown at ignition off |
| Input | 15–19 V DC (Waveshare recommends a 19 V / 2.37 A adapter). ⚠ A PD trigger at the standard 20 V level is above the rated maximum |
| Output | Input voltage when powered (pass-through); battery voltage (9–12.6 V) when not |
| Battery | 3 × 21700 Li-ion in series (not included); charging stops when full and resumes below 12 V |
| Monitoring | INA219 on I²C. On the car unit it is bus 7 (40-pin header), address 0x41 |
| Holdover (bench, 2026-10-09) | ≥ 20 s across a supply swap, enough to ride through cranking |
Notes
- First read-only check (2026-10-09, on input power, charged): bus 12.34 V, shunt ≈ 0 mV (idle). Chip at power-on defaults (config
0x399f, calibration unprogrammed), so read current from the shunt-voltage register (0x01, 10 µV/LSB) rather than the current register. - Fed from the ignition-switched cigarette socket via a 15 V PD trigger (15 V / 3 A, inside the 15–19 V rating). Plan: car power.
- Ignition-off shutdown (not built yet): on input loss the battery current turns clearly negative (discharging). A small service watches the
INA219, waits out a grace period longer than a crank (30–60 s), then runs
systemctl poweroff, with low battery voltage as a hard backstop. The shunt value is unconfirmed; check the schematic before converting shunt mV to amps. - No GPIO or shutdown signal on the module; the BOOT button may be needed to wake a battery that stopped outputting (FAQ).
RTC backup battery
Status: optional, low priority. Battery choice settled (CR2032); footprint/R560 still to verify against NVIDIA's schematic.
| Field | Value |
|---|---|
| Purpose | Keep the RTC (rtc0, nvvrs-pseq-rtc) running while the board is unpowered, so the clock is correct at boot without network or GPS |
| Carrier board | P3768 (Orin Nano Developer Kit): pads present, connector not populated (needs soldering) |
| Connector (per NVIDIA docs, as quoted on the forum) | Wieson AC2651-0011-003-HH, 2-pin, 1.25 mm pitch. A community-used substitute is Molex 53398-0271 header + 51021-0200 housing |
| Battery | CR2032 (primary 3 V lithium) in a holder with leads. Not ML2032 or other rechargeables: the module datasheet says the backup pin (PMIC_BBAT) does not support charging, so a rechargeable just drains, and it has ~⅓ of the capacity |
| Expected life | RTC draws 12–50 µA while unpowered (~15 µA measured on the forum) → CR2032 (~220 mAh) lasts ~1.5–2 years typical, ~6 months worst case. Drains only while the board has no power |
| Extra parts | Forum reports also populating R560 (0.56 Ω, e.g. Panasonic ERJ2BQFR56X); confirm in the P3768 schematic |
Notes
- Without it the clock boots at a stale date (seen 2026-10-08: June 4) until NTP syncs. See the time sync report.
- Forum sources: RTC battery on Orin Nano DevKit, How to add RTC battery.
- A reported side effect: the battery lead and socket make the case cover sit unevenly.
- Polarity: one forum post says the positive pad is marked with a white triangle. Confirm with a meter before connecting.
- Test after fitting: power off fully, wait a few minutes, boot with no network, and check
cat /sys/class/rtc/rtc0/date(should be today, not a reset date). - Low priority: online almost always means NTP within a minute; the gap only matters for offline drives (see the time sync report).