HomeControl
A wall panel for the house, written in C for a screen the size of a coaster.
Two hang on the wall at home: a Raspberry Pi behind a square HyperPixel touch screen that sets the lights, runs the music and casts films to the TV. C and LVGL, because a browser could not answer a finger fast enough.
It needs a Home Assistant to log in to. Music Assistant and Plex are optional; without them it is a light switch.
The panel owns every value. Home Assistant asks it for a change; the panel pushes its state and a heartbeat, so a quiet panel is a fact, not a timeout.
Home carries the music: the room, what is playing, and thumb-sized minus, plus and stop.
Every screen is tested against fake services first; a trap found on the wall costs a walk across the house.
- Lights, scenes and switches from Home Assistant as tiles
- Volume, stop and the playing room on the home screen
- Move music between speakers; hold one to make it the default
- Browse Plex and send a film to the TV
- Appears in Home Assistant as a device: screen, page, health
- First setup from a phone, via a QR code on the screen
- Redesigned layout without the top bar
- Panel becomes a Home Assistant device
- Video plays on the panel itself
- Plex screen, faster boot and KMS display
- Big overhaul: web login, reworked music engine
- Pi 4/5 support and web management page
- Music Assistant integration and music player
- Home Assistant touch dashboard for Pi Zero
No posts from this project yet — they'll gather here as they publish.