Redesign dashboard zone card with live temps, AC status, and per-radiator state

Adds actual room-temperature capture for TRVs over MQTT and a background
Modbus poller for AC mode/fan/lock/room-temp, so the dashboard tile can show
real setpoint-vs-actual readings, an AC status block, and up to 3 radiator
icons per zone instead of just the setpoint.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
jtricerolph 2026-07-27 20:25:50 +00:00
parent ab14d4dfe1
commit 0929285651
9 changed files with 230 additions and 12 deletions

View file

@ -17,7 +17,9 @@ export async function statusRoutes(app) {
const { rows: devices } = await pool.query(`
SELECT id, zone_id, device_type, external_ref, discovered_name, location,
health_state, battery_pct, wifi_rssi, current_target_temp, target_origin, last_seen
health_state, battery_pct, wifi_rssi, current_target_temp, target_origin, last_seen,
current_room_temp, heating_active, power_state, current_mode, fan_speed,
remote_locked, status_updated_at
FROM zone_devices WHERE zone_id IS NOT NULL
`)
const devicesByZone = new Map()