Skip to content

RobertBarbo/Centrometal_Esphome_LCD

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ”₯ Centrometal ESPHome LCD Display

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.

Centrometal LCD Display Home Assistant ESP32-S3 LVGL License

πŸ“Έ Project Gallery

Live Display Screenshots

Main Boiler Interface Main boiler monitoring interface with real-time data

Weather Forecast 4-day weather forecast with Material Design icons

Touch Controls Interactive touch controls for thermostat settings

πŸŽ₯ Demo Video

Centrometal LCD Demo 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

πŸ”₯ Features

Boiler Monitoring

  • 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

Weather Integration

  • 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

Interactive Controls

  • 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

System Features

  • 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

πŸ› οΈ Hardware Requirements

Main Hardware

  • 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)

Key Specifications

  • 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)

Additional Features

  • 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

πŸ“‹ Prerequisites

Software Requirements

Home Assistant Entities

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)

πŸš€ Installation

Step 1: Hardware Setup

  1. Unbox your Waveshare ESP32-S3-Touch-LCD-7 development board
  2. Ensure you have the touch version (ESP32-S3-Touch-LCD-7) not the non-touch version
  3. Connect USB-C cable for programming and power
  4. No additional wiring required - everything is integrated on the board!

Step 2: ESPHome Configuration

  1. Copy Centrometal_LCD.yaml to your ESPHome configuration directory
  2. Create a secrets.yaml file 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"
  1. Update entity IDs in the YAML to match your Home Assistant setup
  2. Compile and upload the firmware to your ESP32-S3

Step 3: Home Assistant Integration

  1. Install the Centrometal Integration
  2. Configure your boiler connection
  3. Add the weather automation from ha_weather_automation_4DAY.yaml
  4. Restart Home Assistant

Step 4: Display Assets

  1. Create an images folder in your ESPHome configuration directory
  2. Add the required image files:
    • centrometal_800x480_main3.png - Main page background
    • centrometal_800x480_second.png - Second page background
    • glow.png - Glow plug indicator
    • pavza.png, play1.png, play2.png, stop.png - Boiler state icons
    • fangif/ 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)
  3. Ensure all images are sized correctly for 800Γ—480 display

οΏ½ Photos & Demo

Project Media

  • πŸ“ 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

3D Printed Case

  • πŸ“ 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

οΏ½πŸ“± User Interface

Main Page

  • 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

Second Page

  • 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

Navigation

  • 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

πŸ”§ Configuration

MQTT Topics

# 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

Display Settings

# Screen timeout (adjustable via UI)
screen_timeout_seconds: 60        # Auto-sleep timer
backlight_brightness: 100%        # Display brightness
antiburn_enable: true            # Screen saver protection

Weather Configuration

The 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

🎨 Customization

Changing Entity IDs

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_temperature

UI Colors

Modify colors in the LVGL section:

text_color: 0xFFFFFF  # White text
text_color: 0xFF8800  # Orange for temperatures
text_color: 0x1300FD  # Blue for buffer sensors

Animation Speed

Adjust animation intervals:

interval:
  - interval: 40ms    # Fast animations (pumps, fans)
  - interval: 800ms   # Slow animations (boiler status)

πŸ” Troubleshooting

Common Issues

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

Debug Information

Enable debug logging in ESPHome:

logger:
  level: DEBUG

Check logs for:

  • WiFi connection status
  • MQTT message traffic
  • Sensor update events
  • Touch screen events

🀝 Integration with Centrometal Boiler

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

Supported Boiler Models

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.

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

οΏ½ Project Files

Core Files

  • Centrometal_LCD.yaml - Main ESPHome configuration
  • ha_weather_automation_4DAY.yaml - Home Assistant automation for weather forecast
  • secrets.yaml.template - Template for sensitive configuration data

Documentation

  • README.md - Project overview and setup guide
  • INSTALL.md - Detailed installation instructions
  • HARDWARE.md - Hardware setup and specifications
  • CHANGELOG.md - Version history and updates

Media & Assets

  • πŸ“ 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

Design & Manufacturing

  • πŸ“ STL/ - 3D printable case file for Waveshare display
  • πŸ“ SLS/ - SquareLine Studio project files for UI design

Acknowledgments

⭐ GitHub Repository Features

🏷️ Search Tags

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

πŸ“Š Project Stats

  • Language: C++ (ESPHome/YAML)
  • Platform: ESP32-S3
  • Display: 7" Touch LCD (800Γ—480)
  • Integration: Home Assistant + MQTT
  • License: MIT (Open Source)

πŸ“ž Support

For support and questions:

  1. Check the troubleshooting section above
  2. Review ESPHome and Home Assistant logs
  3. Ensure all hardware connections are correct
  4. Verify entity IDs match your Home Assistant setup

πŸ”„ Updates

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.

About

Waveshare 7" LCD with ESP

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors