đŸ”„ Pellet stove 'Duepi-evo'

Indeed, using the ESP-link bypasses any cloud services.

But it looks like the issue you have is the dynamic IP.
Then I can only recommend something like a DynDNS service.
In that way you will use a DNS name (f.e. my.address.dns)

Have a look at https://www.duckdns.org/ (which has an addon available for HomeAssistant)

But there are more like these:
https://www.clickip.de/
https://www.noip.com/remote-access
https://www.securepoint.de/en/products/utm-firewalls/securepoint-dyndns.html
Ofc These tools needs to be running continuously and local, because it needs to check your IP address continuously.

Thanks!
I will try.

Good luck, keep us posted !
(and something tells me you aren’t using HomeAssistant, but only DPRemote right :face_with_raised_eyebrow:)

Yes. I haven’t figured out the Home Assistant yet.
Thank you

Hi all, for those that have a petit from artel i can confirm it working. i have flashed a wemos D1 mini pro and it works without any need for a 5 volt to 3.3 volt board just as is.
1 thing tho, can i set it somehow to turn off the stove if it reaches set temperature.? now it powers down to eco but i want it to shut down. many thanks and great work

Edwin

1 Like

Thanks for the feedback @kooibosmania :+1:

And a solution to your problem would be to write an automation for service: climate.set_hvac_mode:

alias: Turn off at 23 degs
description: ''
mode: single
trigger:
  - platform: state
    entity_id: climate.pellet_stove
    attribute: current_temperature
    from: '22.9'
    to: '23'
condition: []
action:
  - service: climate.set_hvac_mode
    target:
      entity_id: climate.pellet_stove
    data:
      hvac_mode: 'off'
'

Now that I think of it,

trigger:
  - platform: state
    entity_id: climate.pellet_stove
    attribute: burner_status
    to: 'Eco Idle'

should also work :stuck_out_tongue:

Thanks for the hard work! I’ve installed a Wemos D1 flashed with espeasy.


This device has a 5V input and integrated CH340 for easy flashing. The only tweak I needed was to add 5ms timeout delay in the serial device settings of espeasy to get robust data from my pellet stove ( Duroflame Rembrand).

Maybe this info is helpful for others

2 Likes

Hello, i hope this topic is not dead yet. i just bought 2 artel milano next stove. now i want to controll them via ha. just the basics so turning on and off and temp. i now saw your post of this intergration with the d1 mini. i have a few laying around. Maybe you could send me the arduino code that i need to upload. and can you tell me what pins you use :smiley:

greetings from holland

GitHub - jeelabs/esp-link: esp8266 wifi-serial bridge, outbound TCP, and arduino/AVR/LPC/NXP programmer should work on d1 mini too

And hi from Holland back

PS: Happen to know any address for cheap pellets?

I already have the ESP01 mounted with esp-link on the stove.
The DPRemote app connects fine in local mode, but in HA, Duepi can’t find it. Although in the registry it does appear:

“2022-11-21 20:31:19.957 DEBUG (MainThread) [custom_components.duepi_evo.climate] Bubbler: Received burner: Flame On, Ambient temp: 21.0, Fan speed: 5”

In configuration.yaml:
"climate:

  • platform: duepi_evo
    name: Pelele
    host: 192.168.1.140
    port: 23
    scan_interval: 10
    min_temp: 20
    max_temp: 30

logger:
default: warn
log:
custom_components.duepi_evo: debug"

Someone gives me a hand?

It won’t show up under integrations nor devices, only under enitities:

Did you search yor entities for Pelele?
image

after a couple of reboots and a few hours running, I’ve found it in Entity ID!
Thank you very much!

Firstly, thanks for the work in implementing this.

Secondly I hope someone can help .

Have ESP-01S flashed with Esplink and connected to a Artel Subtile6 stove. Connected to local network and can log in to the Esplink no problems. Cannot reach device through dpremote or not showing as entity in HA.

Error message in logs is:-

Logger: homeassistant.components.climate
Source: custom_components/duepi_evo/climate.py:129
Integration: Climate (documentation, issues)
First occurred: 10:47:52 (1 occurrences)
Last logged: 10:47:52

duepi_evo: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 503, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 729, in async_device_update
    await task
  File "/config/custom_components/duepi_evo/climate.py", line 184, in async_update
    data = await self.get_data(self)
  File "/config/custom_components/duepi_evo/climate.py", line 129, in get_data
    dataFromServer = sock.recv(10).decode()
TimeoutError: timed out

When checking the debug log in Esplink the following message is shown:-

815740> /DPremote/Messages.txt not found. 404!
816354> HTTP GET /DPremote/Messages.txt: 200, 616ms, h=15384

If there are in pointers it would be much appreciated.

Thanks.

The GPIO setting I used on my esp01:
image

And here my yaml config:

climate:
  - platform: duepi_evo
    name: Pellet stove
    host: duepi-evo.aceindy.nl
    port: 23
    scan_interval: 60
    min_temp: 6
    max_temp: 30

The console page of the esp-link page should show something like this:

Make sure it uses 115200 baud, 8 bits, No parity, 1 stop bit.
You can also try to swap the TX and RX pins, maybe it solves it :stuck_out_tongue:

Maybe of use, my esplink-logs:

led=2
   123> SER led=-1
   203> Wifi init, mode=STA
   203> Wifi uses DHCP, hostname=esp-link
   203> "ip": "0.0.0.0"
   203> "netmask": "0.0.0.0"
   203> "gateway": "0.0.0.0"
   204> "hostname": "esp-link"
   204> sleep enable,type: 2
   204> Httpd init, conn=0x3fff3820
   204> No user file system found!
   204> Serbridge pins: reset=0 isp=-1 swap=0
   205> Reset cause: 4=restart
   205> exccause=0 epc1=0x0 epc2=0x0 epc3=0x0 excvaddr=0x0 depc=0x0
   205> Flash map 512KB:256/256, manuf 0xD8 chip 0x4014
   205> ** esp-link v3.0.14-g963ffbb: ready, heap=21368
   206> SNTP timesource set to us.pool.ntp.org with offset 0
   206> initializing user application
   206> Waiting for work to do...
   206> mode : sta(48:3f:da:7d:e1:93) + softAP(4a:3f:da:7d:e1:93)
   207> add if0
   207> add if1
   207> dhcp server start:(ip:192.168.4.1,mask:255.255.255.0,gw:192.168.4.1)
   209> bcn 100
  2336> scandone
  2337> state: 0 -> 2 (b0)
  2340> state: 2 -> 3 (0)
  2342> state: 3 -> 5 (10)
  2343> add 0
  2343> aid 1
  2343> cnt 
  2353> connected with AceIOT, channel 6
  2354> dhcp client start...
  2354> Wifi connected to ssid AceIOT, ch 6
  3131> ip:192.168.103.11,mask:255.255.252.0,gw:192.168.101.254
  3131> Wifi got ip:192.168.103.11,mask:255.255.252.0,gw:192.168.101.254
  3132> host_name = esp-link
  3132> server_name = _duepi-evo._tcp.local
  3942> HTTP GET /log/text: 200, 48ms, h=16984
 15204> Wifi check: mode=AP+STA status=5
 15204> Wifi got IP. Going into STA mode..
 15205> bcn 0
 15205> del if1
 15205> pm open,type:2 0
 15205> mode : sta(48:3f:da:7d:e1:93)
 16865> HTTP GET /log/text: 200, 9918ms, h=18080
 30290> Wifi check: mode=STA status=5
 49684> Accept port 23, conn=0x3fff72e0, pool slot 0
109614> Accept port 23, conn=0x3fff72e0, pool slot 0

As for the app, you should use the ‘old’ DPRemote app (the new one doesn’t seem to work properly, probably because MyDPRemote doesn’t handle the port correct)
image
Not sure if it is still available though (but I still have it installed)

I still have a wish to convert all of it to ESPHome, but I don’t have the time to do so (and we have plans on moving; in which case the pellet stove will be abandoned
sorry for that )

Thanks.

My yaml is good.

Have change GPIO settings to match.

Have swapped tx/rx.

I get no message in the esplink console.

I have downloaded the old dpremote and it does appear to connect without error but does not show state nor can I send commends from the app.

When to old app is connected, do you see data passing-by on the ESPLink console ?

console remains blank

When the ESPLink console remains empty using the DPRemote app, there is something wrong with the ESPlink module or software; it should show all communications between stove and DPRemote app.
(and since that is not working, the HA integrationg won’t work either).

So check the wiring etc. Also, are you using an ESP01 (as I mentioned in the 1st post)?
If you use something else, the GPIO pins could differ.

PS: Do you know if your stove should work with DPRemote at all ??

Stove should work with dpremote.

Using a ESP01S.

Will check all connections again.

it could even be a faulty esp01 :thinking:

Which is easy to test; just disconnect from the stove; connect TX to RX, and open a telnet to the esphome’s IP; It should relay any character typed on the keyboard :wink: