Sonoff NSPanel HAUI (HomeAssistant UI)

I have started a own implementation of the wallpanel components. Currently it supports basic functionality and is running stable.

You can find the source on Github: NSPanel HAUI

home_panel

!! INFO: the project is not finished yet, not everything works or is described / documented !!!

Its based on ESPHome, a custom esphome component and a appdaemon app.

Features:

A variety of different panels

feature_panels_1
feature_panels_2

Select from different Panels that can be displayed on the panel.

Touch gestures and sequences

feature_touch

Different touch gestures as swipe left or right are supported. There is also support for gesture sequences.

Live state updates

feature_live_update

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

feature_buttons

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

feature_dimming

The display will automatically dim its brightness after a timeout.

Sleep display change after a timeout

feature_sleep

The display can switch to a page after a timeout. There are sleep and wakeup panels possible.

Locking/Unlocking mechanism for panels

feature_unlock

All panels can be locked by a pin code. The panel can be accessed after entering the pin code.

Device settings in HomeAssistant

feature_config

The whole device configuration can be done in HomeAssistant.

Device display configuration in a single yaml file

feature_config

The whole configuration is located in the apps.yaml file. The configuration is done per device.

Optimized custom ESPHome component

feature_custom_component

For the communication between the esp32 and the nextion display a custom component nspanel_haui is used. It provides basic functionality like send_command, get_int_value, get_txt_value, etc. and also generates events for button presses and other changes on the display.

6 Likes

That’s great good luck. Also take a look at NSPanel Manager - Open Source Wall Switch Software

Thanks a lot. I also looked into the nspanel manager. They seem to have some nice ui elements. Some stuff like sliders on panels will also be available in HAUI. There are 4 different layouts available: grid, row, column, split.

A initial version 0.1.0 was released.

Any feedback, issues and feature requests are welcome!

A new version 0.1.1 was released.

What’s Changed?

Improved installation and first run: loading display updates works by loading directly from github. No need to serve tft files locally.

Improved light, media, timer, select panels

existing panels cleaned up, fixed issues and added missing functionality

Added vacuum panel

panel_vacuum

I was testing your latest version and it looks realy promising, but the weather forecast isn’t working. Will there be an update for that?

there will be definitely a update coming soon (one or two weeks). I am currently working on replacing the custom component that is being used with the esphome nextion component. The next version will contain support for new devices (climate and cover) and the weather / clock panel will support the updated weather entities.

Until recently i just developed it without having access to a home assistant controlled home which changed now so i can get all the issues sorted out now.

Notifications do not work currently but should work when the current issues are sorted out.

A new version 0.1.4 was released.

This release is the first version running in an productive environment! Any feedback is very welcome.

What’s new?

  • custom ESPHome component was replaced with ESPHome nextion component
  • basic functionality is done
  • updated all available screens
  • added weather forecast workaround
  • a lot of changes and fixes in yaml config files and the appdaemon app

A new version 0.1.5 was released.

This release is the first version running in an productive environment! Any feedback is very welcome.

What’s new?

  • a climate panel
    panel_climate

  • fixed some bugs and issues

1 Like