I have been using Home Assistant and ESPHome for almost 2 years now and automated a lot of trivial stuff around my house.
I love these projects and rely on them day by day. There are many custom projects that I have made until now for my personal use and in all of them I used the information shared by this community, so I decided to give something back and share this project, hoping that it will be interesting and helpful for somebody else.
Project Description
As mentioned in the title, this project is a Lilygo T5 Plus based informer, designed to display some useful information from Home Assistant using the power of ESPHome.
It contains all the relevant information that I needed to make it work, and by âworkâ I mean to get it compiled, uploaded and displaying the right information for me.
It was tricky sometimes because of the esp32-s3 chip. Due to this, there were some difficulties at compilation in ESPHome, but I managed to do it in the end.
Below is a photo of the end result that I have obtained.
Hi,
Is this still working for you with the latest ESPHome version for HA?
I get the error: Configuration does not match the platform of the connected device. Expected an ESP32 device.
I have the latest 2024.11.2 ESPHome Device Compiler installed as Add on in my system and I have just tested compiling the software for this project.
The program was compiled without any issue.
I donât have a .esphome folder within my esphome main folder, so I created all the directories manually, Config/esphome/.esphome/build//boards/ and placed the lilygo-t5-47-plus.json file there. Trying to compile with the Esphome dev compiler (v2024.12.0-dev), and getting âUnknownBoard: Unknown board ID âlilygo-t5-47-plusââ
Can you help? Esphome is installed as an addon within my HA.
So the .esphome folder inside the esphome main folder exists when you are running ESPHome as a standalone container. If you run it as HASS Add On, it is a little bit different.
For this scenario you will need access to the OS, via ssh.
When you are logged in to the machine running your Home assistant, you should go to the directory /mnt/data/supervisor/addons/data/<add on container name (ending with _esphome)>/build/<your device name>/boards and place the .json file here.
For example, the âboardsâ path for me looks like this /mnt/data/supervisor/addons/data/5c53de3b_esphome/build/esphome-web-9e3bd4/boards.
After this it should find the board when you try to compile it.
Finally. Getting root access to HAOS was not, that easy.
After successfully coping lilygo-t5-47-plus.json to âboardsâ, I received another compiling error:
from .piolibdeps/esp32-paper/SensorLib/src/bosch/BoschParse.cpp:30:
.piolibdeps/esp32-paper/SensorLib/src/SensorLib.h:34:10: fatal error: SPI.h: No such file or directory
*************************************************************
* Looking for SPI.h dependency? Check our library registry!
*
* CLI > platformio lib search "header:SPI.h"
* Web > https://registry.platformio.org/search?q=header:SPI.h
*
*************************************************************
#include <SPI.h>
^~~~~~~
compilation terminated.
*** [.pioenvs/esp32-paper/lib049/SensorLib/bosch/BoschParse.cpp.o] Error 1
========================== [FAILED] Took 6.76 seconds ==========================
I solved it with ârootâ access again and renamed the affected files:
(they can be found in one of the subfolders of /mnt/data/supervisor/addons/data/5c53de3b_esphome/build/esp32-paper/.piolibdeps/
I followed your advice, only I also changed the name TouchDrvInterface.cpp.disabled
The firmware was successfully written.
But nothing is displayed on the screen. Does it matter that I am currently working without Homeassiatant
In the provided configuration example for the device there is this section:
- platform: homeassistant
entity_id: device_tracker.dina_s_phone
id: dina_location
internal: true
on_value: # Actions to perform once data for the last sensor has been received
then:
- script.execute: all_data_received
This sensor pulls data from HASS and when it has a value, it triggers the script which updates the screen.
If you used this code then the screen will not be updated and populated with information unless the sensor receives data from HASS.
You do not need to specify the IP address of your Home Assistant instance manually.
If your devices are connected to the same subnet, it will be automagically detected in Home Assistant and you need to just add it.
After this, your ESPHome device will be able to access the sensors data.