Writing a new integration for a Smart Pellet Stove

EDIT: I wrote my own implementation using ESPHome and it works really, really well now.

SO I posted asking about this back in Oct and got no responses. It appears I’ll need to dive into this and hopefully get some hand holding from you guys.

How do I even start? Are there guides somewhere on writing integrations? I’ve been an advanced HOME ASSISTANT user for several yrs now and somewhat capable if there are templates or examples available to get started.

The app is here:

pretty typical. username/password login, then several attributes that can be controlled/monitored

Device name
Stove off/on
Set temp + / -
ECO Mode P1/P2/P3/P4
current state on/off
current set temp in degrees
current room temp in degrees

That’s about it. The app is terrible and has no schedule ability, notification ability, etc. In fact when the stove throws an error, the app shows it but there’s no way to reset it w/out physically power cycling the stove.

Jeff

Start from here: Creating your first integration | Home Assistant Developer Docs

Check some of basic integrations, it will give you a minimum understanding.

Ask your specific questions here later on

From the functions you show for the device, it reminds me of Tuya based floor heater I have. You might explore to see if it is in fact a device based on the Tuya chip set. Easy way to do this is to see if you can added into the Tuya Smart app on your phone, or use one of the Tuya network scanning apps. If it is a Tuya based device, with a little work you can get into Home Assistant and/or HomeKit.
Good hunting!

I got through most of the dev environment setup except when I execute

script/setup

...
pre-commit installed at .git/hooks/pre-commit
Obtaining file:///root/core
  Installing build dependencies ... done
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/root/core/setup.py", line 7, in <module>
        import homeassistant.const as hass_const
      File "/root/core/homeassistant/const.py", line 4, in <module>
        from typing import Final
    ImportError: cannot import name 'Final' from 'typing' (/usr/lib/python3.7/typing.py)
    
    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /root/core/

So, I’m stuck.

Re: Tuya, I have that integration working, and I tried that, no such luck.

Well, will wonders Never cease… So, It IS Tuya based. It just took a dozen tries to get it to register. I had to manually add Electric Fireplace (BLE+Wi-fi) as the device.

1 Like

If you have it working with Tuya, I would recommend you ask for help from Tuya knowledgable people on how to get it working via one of the Tuya integrations.

Its all good - I just added the entity it to a thermostat card and it worked. There are some other attributes I want to expose so I’ll have to figure that out.

1 Like

Hi, have you ever checked the Naturela pellet controller? I use this on my pellet stove/boiler and it works great. An HA would be welcome :slight_smile:
Check https://youtu.be/JbnEL7xcD-M?si=CIY8n48-JuTXlqrn or Controllers for pellet Burners, pellet Stoves and pellet boilers | Naturela - Intelligent electronic systems and devices

Ok, that’s pretty cool. I had not seen it before.

But the final version of my controller has even more functionality than that unit! And it’s fully integrated with Home Assistant and total cost was about $15.00 US :sunglasses:

And it was way more fun to design it myself!

1 Like

For sure Designing it by yourselves gives a lot pof fun! I will check yours!