An imminent Homecamp reminded me that I had not finished even my first project with the hacked CurrentCost Bridge board. One of the possible projects was make it act as a cheap heating controller. This required it to have 2 peripheral devices: a temperature sensor and the ability to control a boiler relay. In this version I’m using a ByeByeStandby switch which has a documented protocol (thanks guys) and provides the necessary mains isolation. The temperature sensor is a one-wire analogue device, an LM35 (ADC available on Arduino and no need to read below 0 degC).
Refer back to my earlier blog to see how to facilitate programming the board. I attached a small piece of veroboard to the bridge board and mounted terminals for the temperature sensor and a 433 MHz RF transmitter module (RF Solutions AM-RF4-433). Wire up the power and ground and the input and output to relevant pins on the MCU. I chose pins that are on the corners of the device to make soldering easier (no I/O pads on this board).
This could be a lot easier if the board was open source like almost all Arduino products. A few clues can be found in the doc for the Arduino Pro Mini. As things stand I see this as a temporary solution. London Hackspace folks are working on a board that will be open source and maybe even cheaper.
The initial sketch I used is based on the standard Ethernet server. This is a simple way to test the hardware. This temporary sketch allows the user to control the switch from a browser, selecting a channel and turning it on or off. Another vital component of this solution is the RemoteSwitch library by Randy Simons. This generates the RF messages that control the BBSB socket. (Note: it’s not suitable for applications that need interrupts to be serviced while data is being sent.)
OK. So I can read temperature and switch the BBSB sockets and thence the boiler. Next steps are to write some code for the server (and cloud-based support) to control the heating. This will have the usual timers and override buttons and include some temperature compensation. To avoid deploying external thermometers I can use data from Weather Underground as there’s a node less than a mile from us.