Files
vanlink/power/thermal-config.json
T
Andreas WredeandClaude Fable 5 2da97d26f4 thermal: watch NVMe/RP1 temps, fan stall, and undervoltage on the Pi 5
van-thermal grows sensor kinds beyond plain temperatures: "fan" alerts when
pwmfan is commanded on (pwm > 0) but reads 0 RPM (warn on first sample, crit
if it persists — 0 RPM with pwm 0 is just the firmware idling a cool SoC),
and "undervolt" goes crit on the live rpi_volt alarm plus a sticky warn off
the firmware's latched since-boot bit, so dips shorter than the 10s sample
interval still surface once. All kinds share the existing hysteresis /
journal / Pushover machinery (fan 🌀, undervolt ).

Config adds nvme Composite (65/70), rp1_adc (80/85 — the RP1 die drives all
USB/eth I/O), fan, and undervolt to the existing cpu sensor. The CSV logger
now derives per-kind columns and self-rotates when the header changes; the
Cockpit Temps card renders RPM + pwm duty and undervoltage state alongside
the temperatures.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 06:41:17 -04:00

43 lines
785 B
JSON

{
"sample_interval": 10,
"log_interval": 60,
"log_path": "/var/log/van-thermal.csv",
"log_max_bytes": 5242880,
"pushover_level": "warn",
"credentials_path": "/etc/van-battery/pushover.json",
"sensors": [
{
"name": "cpu",
"hwmon": "cpu_thermal",
"warn": 80,
"crit": 85,
"clear_margin": 5
},
{
"name": "nvme",
"hwmon": "nvme",
"label": "Composite",
"warn": 65,
"crit": 70,
"clear_margin": 5
},
{
"name": "rp1",
"hwmon": "rp1_adc",
"warn": 80,
"crit": 85,
"clear_margin": 5
},
{
"name": "fan",
"kind": "fan",
"hwmon": "pwmfan"
},
{
"name": "undervolt",
"kind": "undervolt",
"hwmon": "rpi_volt"
}
]
}