diff --git a/docs/BOM.md b/docs/BOM.md index 1e9b20c..e21ea78 100644 --- a/docs/BOM.md +++ b/docs/BOM.md @@ -54,6 +54,28 @@ type: reference - Supply voltage should be ~4.0 V for reliable operation. - DO NOT hot-plug while powered. +## Waveshare UPS Power Module (C) + +[wiki](https://www.waveshare.com/wiki/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. +- 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.