Second release of peek-carthing.
What's new since v0.1.0
- Slim variant (
peek_mmio_slim.ko+peek-slim.py) — narrow-slice
hardware inventory focused on GPU / display / eMMC / serials / panel ID /
board revision. ~45 KB JSON vs ~275 KB for the full flavor, or ~4 KB
with--gzip. Userspace-only paths still work without the kmod. - TLSC6X panel-variant probe integrated into
peek-slim.py— talks
to the touch controller at I²C 0x2e viaI2C_SLAVE_FORCE, reads the
204-byte config NVM, returnsBOE/Wily/Holitech+ vendor_id /
hw_id. Restores normal touch-reporting mode after; no kernel driver
unbind needed. - Full eFuse dump (
peek-slim.py) — every field under
/sys/class/efuse/(vendor 4.9) and/sys/bus/nvmem/devices/efuse0/
(mainline), decoded into typed values. Includesf_serialextracted
fromuserdataat offset 0x22 — no SMC needed (stock BL31 doesn't
answer the vendor eFuse SMC, so this is the only path on stock units
without a custom u-boot). - Compact + gzip output modes (
--compact,--gzip) — 45 KB → 20 KB
→ 4 KB. - VPU VIU_OSD1 dump added to the full kmod — captures OSD compositor
CTRL_STAT + MATRIX state at word 0x1a10..0x1a9f. - Docs split — short `README.md` + detailed
`DETAILS.md` (build / CRC patch / per-section MMIO
map / panel probe / known limits). - Removed the bundled `sample-hwinfo.json` — grab your own.
What's in this release
| file | what |
|---|---|
| `peek_mmio.ko` | Full kernel module. Drop straight onto a Car Thing running ADB-enabled firmware (kernel 4.9.113) and `insmod`. |
| `peek_mmio_slim.ko` | Slim kernel module. About half the dump sections — keeps GPU / display / eMMC / SARADC / HHI / pinmux / PWM-AB; drops DDR / audio / USB PHYs / DWC3 / tsensors etc. |
| `peek-collect.py` | Full userspace JSON aggregator. |
| `peek-slim.py` | Slim aggregator + integrated panel probe + efuse dump. `--compact` and `--gzip` flags. |
Quick run
```bash
gh release download --repo ThingLabsOSS/peek-carthing \
--pattern '.ko' --pattern '.py' v0.2.0
full
adb push peek_mmio.ko peek-collect.py /tmp/
adb shell python3 /tmp/peek-collect.py > hwinfo.json
slim
adb push peek_mmio_slim.ko peek-slim.py /tmp/
adb shell python3 /tmp/peek-slim.py > hwinfo-slim.json
add --compact for 20 KB, --gzip for 4 KB
```
Requirements
A Car Thing running ADB-enabled firmware. ADB isn't on by default on
retail units — it's a community firmware mod, applied with the usual
reflashing tools.