nspanel_haui
is a versatile display system for HomeAssistant based smart homes.
NSPanel HAUI was started as a replacement for the original Sonoff Firmware. It provides a flexible way to configure the display and to control devices connected to home assistant.
It focuses on HomeAssistant and ESPHome. It does not use any custom protocol to communicate with the nextion display. Instead the display is completely controlled through the AppDaemon app written in python.
For details about the configuration see Configuration. Also take a look at Panels to get an overview of available panels.
-
Easy Installation
The nspanel_haui will load most parts of the required files automatically. Only the initial ESPHome flashing process is needed. After this all parts will be updated by the AppDaemon app.
-
Device display configuration in a single yaml file
The whole configuration is located in the
apps.yaml
file. The configuration is done per device. -
ESPHome component
For the communication between the esp32 and the nextion display the component
nextion
in ESPHome is being used. -
A variety of different panels
Select from different Panels that can be displayed on the panel.
-
Touch gestures and sequences
Different touch gestures as swipe left or right are supported. There is also support for gesture sequences.
-
Live state updates
The display will update when a entity state changes. All entities being displayed will notify about changes and the display will update.
-
Button and relay states, coupled and uncoupled relays
The buttons can be used in a couped state, so that by button presses, the relay will get activated. It is also possible to disable the relay and use the physical buttons as software buttonms.
-
Dimming of the display after a timeout
The display will automatically dim its brightness after a timeout.
-
Sleep display change after a timeout
The display can switch to a page after a timeout. There are sleep and wakeup panels possible.
-
Locking/Unlocking mechanism for panels
All panels can be locked by a pin code. The panel can be accessed after entering the pin code.
-
Device settings in HomeAssistant
The whole device configuration can be done in HomeAssistant.
In order to install NSPanel HAUI it is neccessary to flash the Panel with ESPHome.
The simplified process is as followed:
- Flash Panel with ESPHome
- Update Display TFT
- Install AppDaemon App
- Add Configuration
Take a look at the more detailed Installation Guide. Have also a look at the FAQ.
- Documentation
- Panels Overview
- Example Configurations
- Icons Cheatsheet
- Thread in HomeAssistant Community
For details about how the parts of the whole system communicate together see NSPanel HomeAssistant UI Docs.
-
Version 0.1.x: Into the wild - basic functionality, auto updates, cleanups
First versions, get basic functionality running
- stable core, basic functionality and panels are available
- available panels:
- screensaver: weather, clock
- overview: grid, row
- panels: light, media, vacuum, qr code, cover, climate, timer
- functionality:
- locking panels
- popups
-
Version 0.2.x: Sort it out - configuration and entity handling
Configuration and entity handling, more definitions, better code, sort out issues
For this cycle following work is planned:
- simplify config, internal handling
- clock - date too small, temp not good to read, todays temp and weather is confusing
- music player - show playlists
- panels eye-candy:
- cover, light, etc. wider slider
- common eye-candy improvements
- time in title?
- grid, row: preview state on background for percent (fill background to this value)
- new functionality:
- notifications
- simplify config, prepare for backend
-
Future:
- Replace AppDaemon with Home Assistant Integration
The project is based on the ideas of NSPanel Lovelace UI and NSPanel Custom with HA Blueprint.
- https://esphome.io
- https://nextion.tech/instruction-set/
- https://docs.nspanel.pky.eu/
- https://github.com/joBr99/nspanel-lovelace-ui
- https://github.com/joBr99/Generate-HASP-Fonts
- https://github.com/Blackymas/NSPanel_HA_Blueprint
- https://github.com/masto/NSPanel-Demo-Files
- https://github.com/marcfager/nspanel-mf
- https://github.com/krizkontrolz/Home-Assistant-nextion_handler