PRE-LAUNCH · WAITLIST OPEN
Your Home Assistant.
On the wall.
ESPHome-powered firmware plus a ready-made Home Assistant config package for ESP32 touch panels — flash it, map your entities once, done.
ESPHOME + LVGL·HA NATIVE API·100% LOCAL·OTA
ESP32-S3 · 4.3″ · 800×480 · CAPACITIVE TOUCH
01 — How it works
Three steps. Then it just hangs there, working.
No YAML archaeology, no display driver spelunking. The firmware and the Home Assistant package are built to meet in the middle.
[ 01 ]
Flash the firmware
Put the ESPHome-based firmware on your board over USB. From then on, updates arrive over the air.
[ 02 ]
Import the HA package
Drop the bundled config package into Home Assistant. It ships the template sensors, light groups, universal media player, and camera proxies the panel expects.
[ 03 ]
Map your entities onceNO REFLASH — EVER
The firmware never touches your real entity
ids. It only knows stable panel_*
aliases, and the HA package maps each alias to the real entity. Rename something in
Home Assistant? Edit one line in the package and reload — the panel on the wall
never notices. The rename treadmill ends here.
# panel_aliases.yaml — the firmware only sees panel_*
template:
- sensor:
- name: panel_temp_living
unit_of_measurement: "°C"
state: "{{ states('sensor.living_room_temp') }}"
# ↑ renamed in HA? edit this line. done.
02 — Features
Eight pages, one glance away.
A dark LVGL interface with a left icon rail — built to be read across a room and driven with a thumb.
Home
1/8The glance page — the state of the house on one screen.
Climate
2/8Room temperatures, side by side, at a glance.
Boiler
3/8Heating status — flame, temperatures, target.
Cameras
4/8Snapshots served through the HA camera proxy.
Lights
5/8Toggle and dim — changes sync both ways with HA.
Audio
6/8Playback control through a universal media player.
Servers
7/8Your homelab's vitals, up on the wall.
Scenes
8/8One tap fires a Home Assistant scene.
100% local
Talks to Home Assistant over the native API. No cloud, no accounts — nothing leaves your network.
Two-way control
Toggle lights, set brightness, fire scenes — straight from the wall, reflected back in HA.
Night mode
The screen blanks to black on a night schedule — no bright dashboard glowing in the hallway.
OTA updates
New firmware lands over the air — after the first USB flash, you shouldn’t need the cable again.
03 — Hardware
Runs on boards you can actually buy.
Off-the-shelf Waveshare ESP32-S3 touch panels — no custom PCBs, no soldering.
Waveshare 4.3″
ESP32-S3 Touch LCD
- 800 × 480 RGB display
- GT911 capacitive touch
- ESP32-S3, wall-mount landscape
Waveshare 5″
ESP32-S3 Touch LCD
- 1024 × 600 RGB display
- Capacitive touch
- ESP32-S3, larger-format variant
MORE BOARDS ON THE ROADMAP
04 — Waitlist
Be first on the wall.
ESP32Home is pre-launch. Leave your email and you'll hear the moment it's ready — the waitlist gets the date before anyone else.
You’re on the list — we’ll email you at launch.
That doesn’t look like a valid email address — please try again.
Your email is stored solely to notify you about the launch — nothing else, shared with no one.
05 — FAQ
Fine print, out loud.
Does it need the cloud?
No. The panel talks to Home Assistant directly over the local native API. No cloud, no accounts — nothing leaves your network.
Do I need ESPHome skills?
No. You flash the firmware, import the HA package, and map your entities. ESPHome is under the hood — you don't write any of it.
What happens when I rename an entity in Home Assistant?
Nothing breaks. The firmware only references stable panel_*
aliases; the mapping to your real entities lives in the HA package. Edit one line
there and reload — no reflash.
Which Home Assistant version do I need?
A recent Home Assistant with the native API enabled. Exact version support will be published at launch.
When does it launch?
No date to announce yet — the waitlist hears first. Joining it is how you find out the moment there is one.