A comprehensive ESPHome-based touch LCD display solution for Centrometal boilers, featuring real-time monitoring, weather forecasts, and interactive controls on a 7" Waveshare ESP32-S3 display.
Main boiler monitoring interface with real-time data
4-day weather forecast with Material Design icons
Interactive touch controls for thermostat settings
Live demonstration: Real-time boiler monitoring, touch navigation, weather updates, and animated status indicators
π·οΈ Project Tags: esphome esp32-s3 waveshare centrometal lvgl home-assistant lcd-display boiler-monitoring smart-home touchscreen weather-forecast mqtt iot dashboard heating-system automation diy 3d-printing
- Real-time Status Display: Shows current boiler state, temperatures, and operational parameters
- Animated Status Icons: Visual indicators for boiler operation (heating, paused, stopped)
- Temperature Sensors: Displays multiple temperature readings from the boiler system
- Pump Status: Real-time pump operation indicators with animations
- Air Flow Monitoring: Primary and secondary air flow percentages
- Lambda Sensor: Oxygen sensor readings for combustion optimization
- 4-Day Forecast: Today + 3 days ahead weather prediction
- Weather Icons: Material Design Icons for weather conditions
- Temperature Display: High/low temperatures for each day
- Auto-Update: Hourly updates and manual refresh capability
- Touch Interface: Full touchscreen support with gesture navigation
- Thermostat Control: Set target temperatures with +/- buttons
- Heating Mode Toggle: Enable/disable heating mode
- Screen Timeout: Configurable auto-sleep with touch wake-up
- Antiburn Protection: Screen saver to prevent OLED burn-in
- Dual Page Layout: Main boiler view and detailed sensor page
- MQTT Integration: Two-way communication with Home Assistant
- WiFi Connectivity: Wireless network connection with fallback AP
- OTA Updates: Over-the-air firmware updates
- Backlight Control: Adjustable screen brightness (requires hardware mod)
- Uptime Monitoring: System health and connectivity status
- Waveshare ESP32-S3-Touch-LCD-7 - Complete development board with integrated display
- ESP32-S3N16R8 SoC (16MB Flash, 8MB PSRAM)
- 7" IPS LCD display (800Γ480, 170Β° viewing angle)
- GT911 5-point capacitive touch controller (I2C interface)
- Onboard WiFi 2.4GHz & Bluetooth 5.0 with antenna
- USB-C port for programming and power
- Multiple expansion interfaces (CAN, RS485, I2C, UART, TF card)
- Processor: Xtensa 32-bit LX7 dual-core, up to 240MHz
- Memory: 512KB SRAM, 384KB ROM, 8MB PSRAM, 16MB Flash
- Display: 7" IPS LCD, 800Γ480 resolution, 65K colors, RGB interface
- Touch: 5-point capacitive touch with interrupt support
- Connectivity: WiFi 802.11 b/g/n, Bluetooth 5.0 LE
- Power: USB-C, 3.7V lithium battery support (PH2.0 connector)
- Size: 192.96Γ110.76mm (with touch version)
- Onboard Interfaces:
- CAN bus with terminal resistor selection
- RS485 with terminal resistor selection
- I2C with 3.3V/5V level selection
- UART1/UART2 (selectable)
- TF card slot for storage
- Sensor expansion header
- Status LEDs: Power, charging, done indicators
- Buttons: BOOT and RESET buttons
- Battery: Built-in lithium battery charging circuit
- ESPHome 2023.12.0 or later
- Home Assistant 2023.12.0 or later
- Centrometal Integration for Home Assistant
The project requires these sensor entities from the Centrometal integration:
# Boiler sensors (replace 'biotec_l' with your boiler name)
sensor.biotec_l_boiler_temperature
sensor.biotec_l_boiler_state
sensor.biotec_l_fan
sensor.biotec_l_glow
sensor.biotec_l_flue_gas
sensor.biotec_l_lambda_sensor
sensor.biotec_l_air_flow_engine_primary
sensor.biotec_l_air_flow_engine_secondary
sensor.biotec_l_firebox_temperature
sensor.biotec_l_mixer_temperature
sensor.biotec_l_buffer_tank_temparature_up
sensor.biotec_l_buffer_tank_temparature_down
sensor.biotec_l_domestic_hot_water
sensor.biotec_l_circuit_2k_flow_target_temperature
sensor.biotec_l_circuit_2k_flow_measured_temperature
sensor.biotec_l_circuit_2k_pump
sensor.biotec_l_boiler_pump
sensor.biotec_l_second_pump
# Additional sensors
sensor.buffertemp1 # Buffer tank temperature sensor 1
sensor.buffertemp2 # Buffer tank temperature sensor 2
sensor.buffertemp3 # Buffer tank temperature sensor 3
sensor.buffertemp4 # Buffer tank temperature sensor 4
sensor.buffertemp5 # Buffer tank temperature sensor 5
sensor.buffertemp6 # Buffer tank temperature sensor 6
# Weather sensors
sensor.vremenska_postaja_temperatura # Outdoor temperature
sensor.vremenska_postaja_vlaga # Outdoor humidity
weather.forecast_home # Weather forecast entity
# Room sensors
sensor.dnevna_soba_t_h_temperature # Living room temperature
sensor.dnevna_soba_t_h_humidity # Living room humidity
sensor.down_kitchen_temperature_zigbee_temperature # Kitchen temperature
sensor.0xa4c1382e1d43d34b_humidity # Kitchen humidity (Zigbee)- Unbox your Waveshare ESP32-S3-Touch-LCD-7 development board
- Ensure you have the touch version (ESP32-S3-Touch-LCD-7) not the non-touch version
- Connect USB-C cable for programming and power
- No additional wiring required - everything is integrated on the board!
- Copy
Centrometal_LCD.yamlto your ESPHome configuration directory - Create a
secrets.yamlfile with your credentials:
wifi_ssid: "YourWiFiNetwork"
wifi_password: "YourWiFiPassword"
mqtt_broker: "192.168.1.100" # Your MQTT broker IP
mqtt_username: "your_mqtt_user"
mqtt_password: "your_mqtt_password"- Update entity IDs in the YAML to match your Home Assistant setup
- Compile and upload the firmware to your ESP32-S3
- Install the Centrometal Integration
- Configure your boiler connection
- Add the weather automation from
ha_weather_automation_4DAY.yaml - Restart Home Assistant
- Create an
imagesfolder in your ESPHome configuration directory - Add the required image files:
centrometal_800x480_main3.png- Main page backgroundcentrometal_800x480_second.png- Second page backgroundglow.png- Glow plug indicatorpavza.png,play1.png,play2.png,stop.png- Boiler state iconsfangif/folder with fan animation frames (fan_00.png to fan_04.png)pumpgif/folder with pump animation frames (pump_00.png to pump_04.png)
- Ensure all images are sized correctly for 800Γ480 display
- π Photos/: Real photos of the LCD display in operation showing:
- Main boiler monitoring interface
- Weather forecast display
- Touch interface interaction
- π Video/: Demo video (
Centrometal_LCD.mp4) showcasing:- Live boiler data updates
- Touch navigation between pages
- Animated status indicators
- Weather forecast functionality
- π STL/: 3D printable case file (
Waveshare 7in Case.stl)- Custom designed for Waveshare ESP32-S3-Touch-LCD-7
- Provides protection and clean mounting solution
- Mounting options:
- Wall mounting with integrated mounting holes
- Desktop stand using included support brackets
- Hardware for desktop stand: M3x4x4mm heated inserts for secure assembly
- Print settings: 0.16mm layer height, 15% infill, PLA recommended
- Boiler Overview: Central boiler diagram with real-time status
- Temperature Readings: Multiple sensor displays around the boiler
- Animated Components: Fan, pumps, and status indicators
- Weather Panel: 4-day forecast in top-right corner
- System Status: WiFi, time, and outdoor conditions
- Buffer Tank Sensors: 6 temperature sensors for buffer tank monitoring
- Flow Temperatures: Target and measured flow temperatures
- Room Temperatures: Living room and kitchen sensors
- Thermostat Controls: Temperature setpoint adjustment
- Heating Mode Toggle: Enable/disable heating
- Touch Areas: Tap the right edge to switch between pages
- Screen Timeout: Configurable auto-sleep (default 60 seconds)
- Wake on Touch: Any touch wakes the display
- Antiburn Mode: Automatic screen saver to prevent burn-in
# Thermostat control
esp32LCD/thermostat/target_temp # Set target temperature
esp32LCD/thermostat/mode # Set heating mode (heat/off)
ha/thermostat/cmd/set_temp # Command to change temperature
ha/thermostat/cmd/mode # Command to change mode# Screen timeout (adjustable via UI)
screen_timeout_seconds: 60 # Auto-sleep timer
backlight_brightness: 100% # Display brightness
antiburn_enable: true # Screen saver protectionThe weather system uses Home Assistant's weather integration with automatic updates:
- Update Frequency: Every hour
- Trigger Events: ESP32 boot, weather entity changes
- Forecast Length: 4 days (today + 3 ahead)
- Icons: Material Design weather icons
Edit Centrometal_LCD.yaml and replace entity IDs to match your setup:
# Example: Change boiler name from 'biotec_l' to your boiler
entity_id: sensor.your_boiler_name_boiler_temperatureModify colors in the LVGL section:
text_color: 0xFFFFFF # White text
text_color: 0xFF8800 # Orange for temperatures
text_color: 0x1300FD # Blue for buffer sensorsAdjust animation intervals:
interval:
- interval: 40ms # Fast animations (pumps, fans)
- interval: 800ms # Slow animations (boiler status)Display not showing content:
- Check RGB interface connections
- Verify 8MB Flash/PSRAM configuration
- Ensure proper power supply (5V/3A)
Touch not responding:
- Verify GT911 I2C connections (SDA: GPIO8, SCL: GPIO9)
- Check touch reset pin (CH422G Pin 1)
- Confirm I2C address in configuration
Weather not updating:
- Verify Home Assistant weather entity exists
- Check automation is enabled and running
- Ensure ESP32 has network connectivity
Boiler data missing:
- Confirm Centrometal integration is working
- Check entity IDs match your boiler setup
- Verify MQTT broker connectivity
Enable debug logging in ESPHome:
logger:
level: DEBUGCheck logs for:
- WiFi connection status
- MQTT message traffic
- Sensor update events
- Touch screen events
This project is designed to work with the Centrometal Home Assistant Integration by 9a4gl. The integration provides:
- Real-time Data: Direct connection to Centrometal boiler systems
- Status Monitoring: Boiler state, temperatures, and operational parameters
- Control Capabilities: Remote boiler management through Home Assistant
- Sensor Support: Multiple temperature and status sensors
- Automation: Advanced automation capabilities for heating control
The Centrometal integration supports various models including:
- Biotec series
- EkoTech series
- PelTech series
Refer to the integration documentation for specific model compatibility and setup instructions.
This project is licensed under the MIT License - see the LICENSE file for details.
Centrometal_LCD.yaml- Main ESPHome configurationha_weather_automation_4DAY.yaml- Home Assistant automation for weather forecastsecrets.yaml.template- Template for sensitive configuration data
README.md- Project overview and setup guideINSTALL.md- Detailed installation instructionsHARDWARE.md- Hardware setup and specificationsCHANGELOG.md- Version history and updates
π Photos/- Real photos of the LCD display in operationπ Video/- Demo video showing interface functionalityπ images/- UI background images and iconsπ fonts/- Display font files
π STL/- 3D printable case file for Waveshare displayπ SLS/- SquareLine Studio project files for UI design
- Centrometal Integration by 9a4gl
- ESPHome Project for the excellent platform
- Home Assistant community
- LVGL for the graphics library
- Waveshare for the ESP32-S3-Touch-LCD-7 hardware
- Material Design Icons for weather icons
Find this project easily using these keywords:
- Hardware:
esp32-s3,waveshare,lcd-display,touchscreen,7-inch-display - Software:
esphome,lvgl,home-assistant,mqtt,cpp,yaml - Application:
centrometal,boiler-monitoring,smart-home,heating-system,thermostat - Project Type:
iot,dashboard,automation,diy,3d-printing,real-time-monitoring
- Language: C++ (ESPHome/YAML)
- Platform: ESP32-S3
- Display: 7" Touch LCD (800Γ480)
- Integration: Home Assistant + MQTT
- License: MIT (Open Source)
For support and questions:
- Check the troubleshooting section above
- Review ESPHome and Home Assistant logs
- Ensure all hardware connections are correct
- Verify entity IDs match your Home Assistant setup
This project is actively maintained. Check back for:
- New features and improvements
- Bug fixes and optimizations
- Additional boiler model support
- Enhanced UI components
Note: This is an open-source project created for educational and personal use. Ensure proper safety measures when working with heating systems and electrical components.