Skip to content

About

An script for the ESPHome flashed ESP devices to create a climate sensor in Home Assistent for DUEPI controlled pellet stoves

Topics

Resources

Stars

17 stars

Watchers

4 watching

Forks

Latest commit

 

History

138 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

☕ Buy Me A Coffee! ☕

ESPHome-Duepi

The Duepi EVO climate platform is a reverse engineered implementation of the app which is controlling Pellet stove heaters using a Duepi Evo Wifi module. With this module it is possible to control your pellet stove with HomeAssistant or Homey or official MyDPRemote (or alternative) app.

image Screenshot_2025-02-21_19-00-56

New:

  • moved all coding to seperate files so future updates are used directly when you flash ESPHome updates and included one main package file for smooth future updates. If you are updating please update pelletstove.yaml with at least these changes (as we made some major changes!!)
substitutions:
  min_temp: "10"     #set minimum temperature for climate
  max_temp: "35"     #set maximum temperature for climate
  temp_unit: "°C"    #set climate unit, use "°C" or "°F"
  tx_pin_esp: '1'    #TX pin on esp module
  rx_pin_esp: '3'    #RX pin on esp module

packages:
  duepi:
    url: https://github.com/mvroosmalen1970/ESPHome-Duepi.git
    file: components/packages.yaml
    ref: main
    refresh: 0d #optional to use fresh updates  
  • If you like to test a beta version change ref: main to ref: mvroosmalen1970-patch-xx in pelletstove.yaml (xx is the patch number)

Prerequisites

  • Hardware: Wemos D1 or ESP32-C3 flashed with ESPHome. These devices have a 5V input and integrated CH340 for easy flashing.
  • ESPHome installed in Homey or HomeAssistent

Functionality

  • Control target temperature (10-35°C). This can be modified.
  • Control system on/off.
  • Control fan speed (quite, low, middel, medium, high) image
  • Reset errors (ie out of pellet)
  • Automation possible using any of the reported Sensors or Controls
  • Optional official app MyDPRemote (or alternative) compatibility mode on TCP port 2000
  • Hidden installer mode for advanced service parameter access
  • PCB temperature
  • Full history of all Sensors or Controls (ie temperature, fanspeed....)
  • DUEPI firmware detected
  • running time stove reported (total life time and after cleaning reset), helps to get an early warning before stove sends a signal (the three beeps on startup 😊)
  • Optional ability to send a four character code to the stove to test out new commands.

Configuration

Install ESPHome in HomeAssistent or Homey using one of the links below:
https://homey.app/en-us/app/nl.inversion.esphome/ESPhome/
https://my.home-assistant.io/redirect/config_flow_start?domain=esphome

Paste pelletstove.yaml in ESPHome and change:

  • !secret encryption_key
  • !secret wifi_ssid
  • !secret wifi_password
  • CreateYourOwn
  • PelletKachelPWD
    with your own settings / preferences and flash device.
encryption:
  key: !secret encryption_key
wifi:
  networks:
    - ssid: !secret wifi_ssid
      password: !secret wifi_password
ota:
  - platform: esphome
    password: "CreateYourOwn"
ap:
  ssid: "Pelletkachel Fallback Hotspot"
  password: "PelletKachelPWD"

substitutions:
  min_temp: "10"     #set minimum temperature for climate
  max_temp: "35"     #set maximum temperature for climate
  temp_unit: "°C"    #set climate unit, use "°C" or "°F"
  tx_pin_esp: '1'    #TX pin on esp module
  rx_pin_esp: '3'    #RX pin on esp module

Compile and install on the Wemos. Connect the correct pins of the Wemos to the DEUPI board: image image image image

tx_pin: GPIO-01 rx_pin: GPIO-03 GND-pin 5V-pin

please report any unknown codes in the debug sensor with a possible explanation of what you think its related to. This will help others and robustness of this code.

If this sounds to complicated contact me for possibilies

Optional in Home assistent to activate custom commands for DUEPI stoves:

  1. Create text helper <pelletkachel_command> (length 4 characters (min and max))
  2. Create automation: (with action select your esphome......write)
alias: send command to pellet kachel
description: ""
triggers:
  - trigger: state
    entity_id:
      - input_text.pelletkachel_command
conditions: []
actions:
  - action: esphome.pelletkachel_write
    data:
      command: "{{ states('input_text.pelletkachel_command') }}"
mode: queued
max: 10

Note replace pelletkachel in action: esphome.pelletkachel_write with name of ESPHome yaml

Optional activate Official app compatibility mode (thanks to jbjardine):

  1. Set image
  2. In the MyDPRemote app: Press the setting (wheel top right), choose local and set IP address (192.168.1.xxx or pelletstove.local), port (2000) and give a name
    image
    While the app is connected, Home Assistant temporarily pauses UART control and resumes automatically when the app disconnects.

Optional activate installer mode (thanks to jbjardine):

  1. Set image
  2. Retreive parameter settings from your stove by running this yaml automation (or manually by entering numbers in installer parameter)
alias: Pelletkachel full Parameter Scan
description: Runs through all 107 parameters 
triggers: []
conditions: []
actions:
  - repeat:
      count: 107
      sequence:
        - action: esphome.pelletkachel_read_param
          data:
            param: "{{ repeat.index }}"
        - delay:
            hours: 0
            minutes: 0
            seconds: 3
            milliseconds: 0
mode: single
  1. Parameters are reported in Installer status (diagnostic):
    image
  2. Update parameters by filling the fields:
    image
  3. Write parameters by activating image

Confirmed working with:

  • Artel watt 9
  • Artel MeNext
  • Duroflame Rembrand
  • Eva Calòr Thelma (DUEPI EVO VM88 Board). Maybe with some limitations
  • Qlima Viola 85 S-Line
  • Qlima Delmara 88 S-Line
  • Interstove Milano
  • NextElite

Huge thanks goes to aceindy who found the solution for the HACS HomeAssistant integration, which I used to create this solution!

Buy Me A Coffee! ☕

About

An script for the ESPHome flashed ESP devices to create a climate sensor in Home Assistent for DUEPI controlled pellet stoves

Topics

Resources

Stars

17 stars

Watchers

4 watching

Forks

Releases

Packages

Contributors