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.
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.
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?
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.