Based on a number of excellent suggestions I got in previous thread, I have decided to convert all my smart home devices over to ZigBee. I have about 50 switches and sensors on-order at the moment.

One thing I can’t seem to find is a controller for my pellet stove. My stove is installed in my workshop, and during the winter, I usually have to run out to the shop in the morning, turn the stove on, then wait for a hour or two for it to warm up.

I’m thinking that I’ll most likely need to build a controller for the stove. I had some issues with the mainboard in the stove last year, so I’m fairly familiar with how it works. There area few sensors and relays.

  • An on/off sensor for the lid.
  • A safety sensor for the hopper (makes sure flames aren’t feeding back into the hopper).
  • A pressure sensor to detect if the door is open.
  • An external temperature probe.
  • An internal temperature probe.
  • A relay for the igniter.
  • A relay for the motor that rotates the hopper.
  • A relay for the induction fan.
  • A relay for the fan that blows warm air out from the stove.
  • A potentiometer that switches the stove on and controls the temperature set point.

I have built a number of custom PCBs in the past, and I’m confident that I could build a replacement for the mainboard that includes a ZigBee radio. This requires a significant amount of design work for the PCB, programming for the microcontroller, etc. I’m also just now learning about how the ZigBee protocol works, so there would be a fair amount of research involved.

My other idea was to build a PCB that essentially acts as a programmable potentiometer, replace the pellet stove’s pot with this PCB, and leave the mainboard as-is.

Has anyone here tried integrating a pellet stove into your home automation? How did you do it?

UPDATE: This was actually very easy. The potentiometer that controls my stove acts as a voltage divider. At 5V, it signals the stove to shut off, and at 0V, it’s fully on. I just leave the potentiometer in the “off” position, and I added a zigbee relay in normally-closed mode in series with the wire feeding from the center. When the relay is “off,” the stove sees 5V and does its normal shutdown routine. With the relay “on,” the stove starts up. HA switches it based on temperature from a temperature sensor in the room. Depending on your stove, you might need a pull-down resistor (if it expects GND instead of an open), but it works perfectly for me.

  • Dima@lemmy.one
    link
    fedilink
    English
    arrow-up
    3
    ·
    7 months ago

    Is the stove located somewhere with a decent WiFi connection? It seems like it would be easier to use ESPHome and an ESP32 board to integrate a complicated one-off device

  • limelight79@lemm.ee
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    7 months ago

    I did, but not to that extent. I used a Shelly 1 as a thermostat relay, along with a temperature sensor (Zigbee, not that it matters), and set up a thermostat device with them in the configuration.yaml.

    Mine has 3 modes - manual, in which it just runs at whatever level I set (1-5), and two thermostat controlled modes that switch to a lower setting when heat isn’t requested by the thermostat.

    The second of those modes shuts it down after half an hour if it stays on low heat, then restarts it when high heat is requested. I don’t trust my pellet stove to start reliably, so I don’t use that mode.

    • corroded@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      7 months ago

      I wasn’t familiar with the Shelly 1, but that looks like a great option. I only ever run my stove in fully-on mode, so I could just set the pot to max, then use the Shelly to switch it on and off.

      I’m curious about the modes you set. The potentiometer on mine goes from Off->Thermostat Controlled->Always On across the sweep of the potentiometer. I suspect it has a switch at both extremes of the range to trigger the Off/On modes, but I’ll have to test it to be sure; it does have more than the standard 3 pins you’d find on a pot, so there’s something unusual going on.

      Is yours configured the same?

      • limelight79@lemm.ee
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 months ago

        Mine is a 3-position switch, labeled “Auto/Off”, “High/Low”, and “Manual”. High/Low and Auto/Off operate as I described above, using an external thermostat - or, in my case, a Shelly 1. :)

        Also, that means I didn’t really need to touch the board or anything to do that - I just had to connect the wires from the relay on the Shelly to the terminal for a thermostat on the stove.

        A level sensor in the hopper would be nice. Hey…I could use a SaltSentry or OpenGarage device to measure the distance… HMMM.

  • SupremeFuzzler@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    Do you need to control the temperature remotely, or just switch it on? If the latter, could you just leave the existing potentiometer / power switch always in the on position and add a new zigbee relay to cut power to the whole works on & off?

    • corroded@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      3
      ·
      edit-2
      7 months ago

      The problem with this is that the induction fan is the same fan that blows the smoke out from the exhaust vent; pellet stoves don’t exhaust out a chimney like a fireplace. They require forced induction. When you turn off the pellet stove with the potentiometer, the fan continues running until whatever pellets remain in the combustion chamber stop burning. Simply removing power means that the pellets continue burning, but the smoke and exhaust gases have nowhere to go. They will fill up the stove and start leaking out.

      • BOFH666@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 months ago

        Would it help, to add a switch in the potentiometer path? When you disconnect ground from the potentiometer, will the stove shutdown gracefully?

        That could be a simple way…

        • corroded@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          7 months ago

          I think that’s the solution I’m going to go for. While my idea of building a custom mainboard does sound like a lot of fun, my main concern is with the code. The factory mainboard has set points where it turns the hopper, disables/enables the blower, etc. I could probably get it close in my own code, but I’m sure there are edge cases the factory engineers found that I would miss. I don’t much enjoy the idea of going out to my shop and finding it full of smoke or my stove jammed full of pellets, or worse the whole thing on fire.

  • ezekielmudd
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    I have a Green Mountain pellet smoker and it has a wifi enabled controller on it.

    I know it’s not the same thing as your pellet stove but it has all the same elements. They just do a different process.

    Maybe you could copy parts of its functionality into your own design.

    At least, it could inspire your design.

    • corroded@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

      I really do wish I had paid the extra money and got a stove with a built-in WiFi controller. I looked into ordering a replacement board for a model that is WiFi enabled and retrofitting it into mine, but even within the same brand, the interface and the physical hardware in the stove is different. When I bought my stove, I was more concerned with not freezing to death, and I didn’t really think much about how I’d be using it in the future. Live and learn, I guess.