Commit Graph

10 Commits

Author SHA1 Message Date
root
81236d908c Add weather badge, chore chart, fix controls grid
- Header now shows weather icon + temp from weather.forecast_home_2 next
  to the connection badge (right side of nav bar)
- New ChoreChart widget below TodoWidget on Home view; reads from
  todo.chores HA entity; items prefixed with a name (Becca: / Chris: /
  Arabella:) get per-person color coding matching the calendar palette;
  tap toggles completion
- Controls overlay simplified from grid-cols-12 auto-rows-min to a plain
  grid-cols-2 — removes the uneven gaps between widgets
2026-04-16 22:35:00 -05:00
root
f5461db97d Fix case mismatch in PersonAlert camera lookup
cameraName from MQTT was compared against lowercased frigateCamera
without being lowercased itself — Front_Porch !== front_porch.
2026-04-16 22:07:22 -05:00
root
3b38a78295 Person detection via direct MQTT instead of HA entities
- Electron main process subscribes to Frigate's MQTT topics
  (frigate/<camera>/person and frigate/events) directly via mqtt.js,
  bypassing the broken HA MQTT integration
- Watched cameras: Front_Porch, FPE, Porch_Downstairs, Driveway_door
- On person detection, exits photo-frame idle and shows full-screen
  camera feed for 30 seconds
- Removed HA entity-based person detection code (entityToCameraName,
  personDetectionEntities config dependency)
- Deleted unused useFrigateDetection HTTP polling hook (superseded)
2026-04-16 21:46:28 -05:00
root
d0db8c55b3 Tighten Home calendar/todo split to 80/20 2026-04-14 19:28:33 -05:00
root
cede430dc9 Keep monitor always on and switch Home layout to horizontal 90/10
- Removed ScreenManager idle sleep entirely (constructor no longer starts
  the idle monitor, setIdleTimeout is now a no-op, unused fields and the
  private startIdleMonitor method removed). Display never sleeps; the
  photo frame provides the idle visual instead.
- DashboardContent now uses flex-row: calendar 90% wide, todo 10% wide.
2026-04-14 16:29:58 -05:00
root
7886e72f38 Add Controls tab with lights, locks, alarm, thermostats overlay
The five-tab nav now includes a Controls tab between Home and Media.
Opens a full-screen overlay with the alarm panel, each configured
thermostat, lights, and locks tiled in a responsive 2-column grid.
2026-04-14 14:06:13 -05:00
root
1dd32c6afe Simplify home view and drop motion detection
- Top nav tabs (Home/Media/Cameras/Settings) replace the right-side button cluster
- Home view now shows calendar 90% / todo 10% vertically; lights, locks,
  alarm, thermostats removed from the dashboard since the photo frame now
  owns the idle space and the nav covers the remaining sections
- Motion detection deleted: the go2rtc-based Kitchen_Panel poll was only
  there to wake the screen before idle timeout, which photo-frame exit on
  touch replaces
2026-04-14 13:27:20 -05:00
root
5fe7bc71ef Add photo frame idle mode and switch to Skylight-style theme
- After 5 min of no touch/motion, dashboard hides behind a fullscreen
  photo slideshow with centered time and date overlay
- Photos loaded from PHOTOS_PATH env var (defaults to ~/Pictures/dashboard)
  via IPC + file:// URLs; traversal-guarded, recursive up to 2 levels
- Motion or touch exits idle back to dashboard
- Theme repainted warm cream / sage / stone ink with Nunito font and
  rounded cards; dark tokens kept so component classes still resolve
- Adds PHOTO_FRAME.md with Samba cifs mount + systemd env instructions
2026-04-14 10:44:51 -05:00
root
58ebd3e239 Fix camera feed freezing and person detection alerts
- Add WebRTC auto-reconnect with exponential backoff when streams
  disconnect or fail, preventing permanent freezes in grid view
- Replace hard-coded Front Porch person alert with generic system
  that monitors all configured personDetectionEntities
- Map Frigate person_occupancy entities to cameras dynamically
- Show correct camera name and feed in alert overlay
- Bump config version to refresh detection entity defaults
2026-02-26 15:33:25 -06:00
root
97a7912eae Initial commit: Electron + React touchscreen kiosk dashboard for Home Assistant 2026-02-25 23:01:20 -06:00