See How This Smart Kettle Intelligently Schedules Water Heating
Swapping a switch for an ESP8266 and relay lets this kettle automatically heat water in conjunction with a Home Assistant setup.
On-demand hot water
Having a cup of fresh, hot coffee or tea in the morning is a must-have for most people, but waiting for the water to reach the correct temperature became a nuisance to YouTuber Taste the Code. Rather than purchasing an off-the-shelf smart kettle for a large amount of money, they wanted to go with a cheaper DIY alternative that could still deliver that piping hot water at just the right time.
Replacing the kettle's internals
The kettle selected for this project operates in a very straightforward manner, as it is only a switch, heating coil, and plug. By swapping the rocker switch on top for a normally closed relay, it will be on whenever it's connected to the wall outlet unless a schedule has been set. In this case, the microcontroller will activate the relay, thus opening it and disconnecting power, until the right time arrives.
PCB and enclosure assembly
For the circuitry, Taste the Code designed a custom PCB that has .1-inch headers for soldering an ESP8266 module in-place next to a 5V relay module, as well as a set of headers to plug in a pushbutton switch. Getting the power coming from a 220V outlet into the microcontroller was accomplished by adding an HLK-PM01 power module which takes the incoming voltage and steps it down/rectifies it into a 5V DC output. Finally, one wire of the heating coil was rerouted through relay in order to toggle its heating state.
Setting the schedule
The last step of building the smart kettle involved writing a simple ESP8266 sketch that defines itself as a new ESPHome device that a Home Assistant server can recognize. This allows for a single automation to check at the scheduled time if the button has been toggled and the kettle is off so it can be switched on automatically. To see more about this project, you can read Taste the Code's write-up here on Instructables or watch their videoon YouTube.