Control your home-automation devices from a customizable touchscreen UI connected via MQTT.
This project is a re-implementation of the popular HASwitchPlate sketch created by aderusha. The original HASwitchPlate project uses a Wemos D1 mini and requires a Nextion/TJC HMI display. This rewrite removes the Nextion/TJC requirement by using the Light and Versatile Graphics Library on the MCU to drive a cheap commodity display.
This version also adds ESP32 and STM32F4 support to take advantage of the additional hardware capabilities.
Feature | ESP8266 | ESP32 | STM32F4 |
---|---|---|---|
SPI display | ✅ yes | ✅ yes | ✅ yes |
Parallel display | ❌ no | ✅ yes | ✅ yes |
PWM Screen dimming | ✅ yes | ✅ yes | ✅ yes |
Maximum Page Count | 4 | 12 | 12 |
Object Types / Widgets | 14 | 15 | 15 |
Dynamic Objects | ✅ yes | ✅ yes | ✅ yes |
Lvgl Theme Support | basic only | all themes | tbd |
Custom .zi V5 font | ✅ yes (latin1) | ✅ yes (latin1) | no |
FontAwesome Icons | ✅ 1300+ | ✅ 1300+ | no |
PNG images | ❌ no | ❔ tbd | ❔ tbd |
Network | ✅ Wifi | ✅ Wifi | ✅ Ethernet |
Make sure to add the --recursive
parameter when cloning the project. Otherwise git will not download the required submodules in the /lib
subdirectory.
git clone --recursive https://github.com/fvanroie/hasp-lvgl
If you already cloned hasp-lvgl without the submodules, you can fetch the submodules seperately using:
git submodule update --init --recursive
To build a defierent branch use:
git clone --recursive https://github.com/fvanroie/hasp-lvgl
cd hasp-lvgl
git checkout 0.1.0-dev
git submodule update --init --recursive
Check out the documentation for how-to's, information and frequently asked questions.
For support using hasp-lvgl, please join the #hasp-lvgl channel on Discord.