
The XDA piece on building an ESP32 Home Assistant dashboard hit an itch a lot of home-lab folks already had. A cheap ESP32 board with a 3.5-inch touchscreen replaces a wall-mounted tablet for a fraction of the price, uses almost no power, and stops being the third phone check of your morning. The catch is that you need actual desktop apps to flash it, design the interface, and connect it to your Home Assistant instance. This roundup covers the seven best desktop apps for building an ESP32 Home Assistant dashboard display in 2026, tested on Windows 11, macOS 15, and Fedora 40.
None of these apps require a paid subscription. Most are open source. All of them talk to a stock ESP32-2432S028R, ESP32-S3-Box, or a WT32-SC01 without hardware modification.
What to look for in an ESP32 dashboard toolchain
- Firmware workflow. ESPHome is the easy path (YAML config), Arduino/PlatformIO is the flexible one, ESP-IDF is the hardcore one. Pick the one that matches how much you want to hand-write versus generate.
- UI framework. LVGL is the current de facto standard for embedded touch UIs. Squareline Studio designs LVGL screens visually.
- HA integration. ESPHome integrates natively (native API). Other approaches use MQTT or the HA REST API.
- OTA updates. Wall-mounted devices need over-the-air updates from the start. Any workflow you pick needs to support them.
- Display driver support. ILI9341, ILI9488, ST7789, and GC9A01 are the common panels. Your toolchain must know them.
- Touch calibration. Resistive touchscreens on cheap dev boards drift and need calibration paths.
Quick comparison table
| App | Role in the stack | License | Runs on | Standout |
|---|---|---|---|---|
| ESPHome | Firmware generator | GPLv3 | Docker / Home Assistant addon | Native HA API, first-class LVGL |
| PlatformIO | Firmware IDE | Apache 2.0 | VS Code plugin, cross-OS | Flexible for Arduino / IDF |
| SquareLine Studio | Visual UI designer | Freeware / paid | Win / macOS / Linux | Design LVGL screens, export code |
| LVGL | UI framework | MIT | Cross-platform | The runtime for every serious ESP32 UI |
| OpenHASP | Pre-built HA dashboard firmware | MIT | Web installer | No coding, HA-native |
| TFT_eSPI Config Tool | Display config helper | MIT | Cross-platform | Solves the pin-mapping headache |
| Home Assistant | The instance the display talks to | Apache 2.0 | Any OS | Where entities and automations live |
The apps
1. ESPHome — Best YAML-based firmware generator
ESPHome is the shortcut. Write a 30-line YAML file describing your board, your display driver, and the LVGL widgets you want on-screen, and ESPHome generates and flashes the firmware. The native API integrates with Home Assistant in one click, no MQTT broker needed. LVGL support landed as a first-class module in the 2024.6 release and has matured through 2026 into the fastest path from “board on desk” to “dashboard on wall.”
Where it falls short: YAML has its limits. Very custom interactions (animations, sound, offline logic) still push you toward PlatformIO. Compile-and-upload times on modest hardware are noticeable.
Pricing:
- Free: Fully free and open source (GPLv3).
- Paid: None.
Platforms: Home Assistant addon, Docker container, standalone Python install. All host OSes work.
Download: esphome.io · ESPHome on GitHub
Bottom line: The correct default. Start here and only move to PlatformIO if you outgrow it.
2. PlatformIO — Best flexible IDE for Arduino and ESP-IDF
PlatformIO is a VS Code extension that adds embedded targets: ESP32, ESP32-S3, ESP32-C3, STM32, RP2040, and dozens more. It bundles Arduino cores, ESP-IDF, and a library manager. For a dashboard project that needs custom drivers, non-trivial state machines, or integration with local sensors that ESPHome does not expose cleanly, PlatformIO is the escape hatch.
Where it falls short: Steeper learning curve than ESPHome. You maintain the C++. First-project setup takes an evening.
Pricing:
- Free: Full IDE, Apache 2.0.
- Paid: PlatformIO Labs offers a paid Professional tier for CI and team features; not needed for a home project.
Platforms: VS Code on Windows, macOS, Linux.
Download: platformio.org
Bottom line: The right tool when your project needs code, not YAML.
3. SquareLine Studio — Best visual UI designer for LVGL
SquareLine Studio is a drag-and-drop LVGL designer. Drop buttons, gauges, sliders, and images on a canvas sized to your ESP32’s screen, wire up events, then export the C source that plugs into ESPHome or PlatformIO. Free tier covers a personal project. Paid tier removes limits on exports.
Where it falls short: Free tier limits the number of screens and widgets per project. Export integration with ESPHome requires a small adapter script.
Pricing:
- Free: Free personal tier with a screen limit.
- Paid: SquareLine Studio Pro at a monthly fee for unrestricted exports.
Platforms: Windows, macOS, Linux.
Download: squareline.io
Bottom line: The tool that turns hand-coded LVGL into a designable UI.
4. LVGL — Best embedded UI runtime, and the standard everyone else builds on
LVGL is the graphics library your ESP32 dashboard actually renders through. It handles double buffering, anti-aliased primitives, touch, gestures, and a widget library that looks modern instead of 1998. You rarely install LVGL directly; ESPHome and PlatformIO both fetch it as a dependency. But knowing its API opens up custom widgets and animations.
Where it falls short: Not a standalone app; it is a library. Documentation is dense.
Pricing:
- Free: Fully free and open source (MIT).
- Paid: LVGL offers paid commercial support; not needed for a personal build.
Platforms: Cross-platform, runs on ESP32, STM32, RP2040, Linux frame buffer.
Download: lvgl.io · LVGL on GitHub
Bottom line: Learn its widget model even if you never touch its source directly.
5. OpenHASP — Best no-code, pre-built HA dashboard firmware
OpenHASP takes the ESP32 board choice out of the design phase. It is a pre-built firmware you flash from a browser, then configure entirely from Home Assistant via MQTT. Screens are defined in JSONL files served by HA. No code, no LVGL widget wiring, no Squareline export.
Where it falls short: Not as flexible as building your own ESPHome + LVGL screen. Requires MQTT (which you probably already run, but if not, it is an extra service).
Pricing:
- Free: Fully free and open source (MIT).
- Paid: None.
Platforms: Web installer flashes from any Chromium browser. Runs on ESP32 with ILI9341, ILI9488, GC9A01 panels.
Download: openhasp.com
Bottom line: The pick if you want an HA touchscreen without becoming an embedded developer.
6. TFT_eSPI Config Tool — Best helper for the pin-mapping headache
TFT_eSPI Config Tool is a small cross-platform utility that generates the User_Setup.h for TFT_eSPI (the display driver library most ESP32 board bundles use). Instead of hand-editing pin macros for your specific board, pick the board from a dropdown and export the correct file. Fifteen minutes saved every new project.
Where it falls short: Very narrow scope. Not needed if you use ESPHome (which handles this internally).
Pricing:
- Free: Fully free.
- Paid: None.
Platforms: Cross-platform (JavaScript).
Download: TFT_eSPI Config Tool on GitHub
Bottom line: The five-minute fix for the “why does my screen show pink stripes” moment.
7. Home Assistant — Best (and required) instance to talk to
Home Assistant is not optional in this stack. The point of an ESP32 dashboard is to display and control HA entities. HA supplies the state feed, the automation triggers, and the API the ESP32 talks to. Whether you run HA on a Raspberry Pi 4, a mini-PC, or a NAS, install it first before the ESP32 arrives.
Where it falls short: Not a build tool. The learning curve for HA itself is a separate project.
Pricing:
- Free: HA Core, HA OS, HA Container, and HA Supervised are all free (Apache 2.0).
- Paid: Nabu Casa Home Assistant Cloud is a paid tier for remote access; not required.
Platforms: Raspberry Pi, mini-PC, NAS, VM. Any x86_64 or ARM64 host with 4 GB of RAM.
Download: home-assistant.io · Nabu Casa
Bottom line: The instance every other item on this list connects to. Install first.
How to pick the right one
- If you want the shortest path from board to wall dashboard, use ESPHome and let it fetch LVGL as a dependency.
- If you want to design the UI visually before writing code, use SquareLine Studio and export into your ESPHome or PlatformIO project.
- If you would rather not code at all, flash OpenHASP and configure from Home Assistant.
- If your project needs custom drivers or complex state, drop to PlatformIO and hand-write against LVGL.
- If your screen shows nonsense on the first flash, run TFT_eSPI Config Tool and regenerate the pin mapping.
- Home Assistant itself has to be running first; the display is only useful when the instance is up.
Stay on a wall-mounted tablet if the total investment (board, screen, case, enclosure, time) is worth less to you than the tablet you already own. For most home-lab folks, the ESP32 route is cheaper, uses less power, and lasts longer.
FAQ
What is the easiest way to build a Home Assistant dashboard display?
Flash OpenHASP if you want zero coding. Use ESPHome with LVGL if you want to customize freely without writing C++. Both work on a stock ESP32-2432S028R for under thirty dollars.
Do I need to run Home Assistant to build an ESP32 dashboard?
Yes, in practice. The dashboard displays HA entities and calls HA services. You can build a standalone screen that just shows the time, but there is little point in an ESP32 for that.
Which ESP32 board is best for a HA dashboard?
The ESP32-2432S028R (the “Cheap Yellow Display”) is the community standard. The WT32-SC01 Plus is a nicer capacitive-touch option. The ESP32-S3-Box has a first-party Espressif AI stack if you also want voice.
Can I do voice control on the same device?
Yes, with an ESP32-S3-Box or a stock ESP32 wired to an INMP441 microphone. ESPHome’s voice assistant integration relays audio to Home Assistant’s Assist pipeline and speaks back through a small speaker.
Do these apps work on macOS with Apple Silicon?
Yes. ESPHome, PlatformIO, and SquareLine Studio all ship native ARM64 builds. Flashing over USB works with the built-in drivers on macOS 14 and 15.
Can I update the display firmware over the air?
Yes. Both ESPHome and PlatformIO support OTA updates on ESP32. Wire OTA on the very first flash so you never have to unbolt the device from the wall.