I have just finished making my Raspberry Pi Boiler Controller, and since my wife is bored with pretending she is impressed with it, I thought I would put it on the forum. Also, it might be useful for other people who want to make something similar.
I am using the device to control my DIY plastic Boiler/HLT, which is heated by two Tescos Extra Value Kettle elements (each powered from a different 13A plug). The device has made a massive difference to my brew-day, because it means I donât have to keep monitoring the temperatures, starting stopwatches etc. It just sorts it all out for me!
The software is written in Python, which I coded onto the Pi remotely using WebIDE, which is an amazingly useful bit of software that allows you to connect to the Pi from another computer and program the Pi through your Chrome web browser.
The Python script runs automatically at boot, so there is no user intervention required, just power it on, wait 20 seconds for it to boot, and off you go!
Components Required:
- Raspberry Pi - £25
- SD Card - £4
- Slice of Pi/o V1.2 (used to easily interface digital i/oâs to the Pi) - £6
- Two push button switches - £2
- Wifi USB dongle - £5
- A dual 5V powered 240V 10A Relay board (for turning on the elements - £5
- Two â1 Wireâ digital thermometers (you only need one, but I got carried away) - £3
- A 16x2 Liquid Crystal Display - £2
- A plastic project box - £6
- A small buzzer - £2
- Kettle plugs and sockets to connect the relay to the mains, and then onto the boiler - £10
- A couple of DIY bulkheads to get the thermometers in âcontact" with the fluid (15 mm copper tank connectors) - £6
Total cost = 76 (Plus I had to buy a dremmel to cut holes in the project box, but that is more of an investment than a cost :) )
Functions:
- Welcome Screen at boot
- Two primary functions, HLT Mode and Boiler Mode
- HLT Mode:
- Display shows the target HLT temperature and current boiler temperature
- When target temperature is reached, the elements are switched off (and then one element is used intermittently to maintain temperature)
- Audio alarm is triggered when target temperature is reached
- Target temperature can be varied using Temperature UP and DOWN buttons (alarm function is reset if the target temperature is changed if the alarm has already gone off)
- Boiler Mode:
- System is commanded to Boiler Mode by pressing both temperature control buttons at the same time
- System turns both elements on
- When boil established (96 deg C), alarm is triggered (to prompt bitter hops) display then shows a countdown from 59:59 down to 00:00
- At 15:00 remaining, alarm is triggered again, for aroma hops prompt
- At 00:00 the alarm is sounded again and display prompts to go into cooling mode
- When Temperature Down button pressed, both elements turn off, and display shows the boiler temperature
- When 28 degrees is reached, the alarm is sounded again to alert the completion of the cooling cycle
Future Development Potential
- I would like to add a run-dry detection function to turn off the elements when the fluid levels go below a certain point (useful safety feature during the sparge)
- I will probably add a function to cycle one of the elements off during the boil to reduce the strength of the boil
- I might add a solenoid valve to open the cooling heat exchanger tap to fully automate the cooling cycle at the end of the boil phase
- I might make it post a message on Facebook when I complete my brew
I have just done a double brew-day using it for the first time in itâs completed state, and it rocks! :
Some photos below:
The innards:
In HLT Mode:
Connected to the boiler:
Boiler countdown:
Waiting for command to start cooling cycle:
I am using the device to control my DIY plastic Boiler/HLT, which is heated by two Tescos Extra Value Kettle elements (each powered from a different 13A plug). The device has made a massive difference to my brew-day, because it means I donât have to keep monitoring the temperatures, starting stopwatches etc. It just sorts it all out for me!
The software is written in Python, which I coded onto the Pi remotely using WebIDE, which is an amazingly useful bit of software that allows you to connect to the Pi from another computer and program the Pi through your Chrome web browser.
The Python script runs automatically at boot, so there is no user intervention required, just power it on, wait 20 seconds for it to boot, and off you go!
Components Required:
- Raspberry Pi - £25
- SD Card - £4
- Slice of Pi/o V1.2 (used to easily interface digital i/oâs to the Pi) - £6
- Two push button switches - £2
- Wifi USB dongle - £5
- A dual 5V powered 240V 10A Relay board (for turning on the elements - £5
- Two â1 Wireâ digital thermometers (you only need one, but I got carried away) - £3
- A 16x2 Liquid Crystal Display - £2
- A plastic project box - £6
- A small buzzer - £2
- Kettle plugs and sockets to connect the relay to the mains, and then onto the boiler - £10
- A couple of DIY bulkheads to get the thermometers in âcontact" with the fluid (15 mm copper tank connectors) - £6
Total cost = 76 (Plus I had to buy a dremmel to cut holes in the project box, but that is more of an investment than a cost :) )
Functions:
- Welcome Screen at boot
- Two primary functions, HLT Mode and Boiler Mode
- HLT Mode:
- Display shows the target HLT temperature and current boiler temperature
- When target temperature is reached, the elements are switched off (and then one element is used intermittently to maintain temperature)
- Audio alarm is triggered when target temperature is reached
- Target temperature can be varied using Temperature UP and DOWN buttons (alarm function is reset if the target temperature is changed if the alarm has already gone off)
- Boiler Mode:
- System is commanded to Boiler Mode by pressing both temperature control buttons at the same time
- System turns both elements on
- When boil established (96 deg C), alarm is triggered (to prompt bitter hops) display then shows a countdown from 59:59 down to 00:00
- At 15:00 remaining, alarm is triggered again, for aroma hops prompt
- At 00:00 the alarm is sounded again and display prompts to go into cooling mode
- When Temperature Down button pressed, both elements turn off, and display shows the boiler temperature
- When 28 degrees is reached, the alarm is sounded again to alert the completion of the cooling cycle
Future Development Potential
- I would like to add a run-dry detection function to turn off the elements when the fluid levels go below a certain point (useful safety feature during the sparge)
- I will probably add a function to cycle one of the elements off during the boil to reduce the strength of the boil
- I might add a solenoid valve to open the cooling heat exchanger tap to fully automate the cooling cycle at the end of the boil phase
- I might make it post a message on Facebook when I complete my brew
I have just done a double brew-day using it for the first time in itâs completed state, and it rocks! :
Some photos below:
The innards:
In HLT Mode:
Connected to the boiler:
Boiler countdown:
Waiting for command to start cooling cycle: