30a water heater controller
flaviut·30a-water-heater-controller
About the 30a water heater controller PCB
30a water heater controller is an open source ESP32 PCB design by flaviut, published on GitHub under the CERN-OHL-S-2.0 license. It is a 2-layer board measuring 85 × 56 mm, with 42 components from 23 distinct parts.
Its main chip is the ESP-WROOM-02, from the ESP32 family. Other key parts include the TPS54331DR and ADS1115IDGS. By type, the board carries 14 resistors, 13 capacitors, 3 ICs, 3 diodes, 2 relays and 1 transistor.
It belongs with the iot & wireless and sensors designs in this gallery.
From the project
Makes any resistive water heater 30A or less WiFi controllable
This board contains a design for a water heater controller that is good for up to 30A water heaters.
Working with high currents and mains voltages is dangerous. Death from electrical shock & house fires are both real risks with this project.
This project comes with no warranty, and is not examined by or listed by any NRTL. You are solely responsible for determining if it is safe.

Main components on the 30a water heater controller
30a water heater controller bill of materials (BOM)
42 components, 23 distinct parts.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | ESP-WROOM-02 | ESP-WROOM-02 | U1 |
| 1 | TPS54331DR | SOIC-8_3.9x4.9mm_P1.27mm | U2 |
| 1 | ADS1115IDGS | TSSOP-10_3x3mm_P0.5mm | U3 |
| 1 | AO3400A | SOT-23 | Q1 |
| 1 | PROG | PinHeader_1x04_P2.54mm_Vertical | J1 |
| 1 | 100k_COLD | JST_XH_B2B-XH-AM_1x02_P2.50mm_Vertical | 100k_COLD |
| 1 | 100k_HOT | JST_XH_B2B-XH-AM_1x02_P2.50mm_Vertical | 100k_HOT |
| 2 | J115F21C12VDCS.9 | Relay_SPDT_CIT-J115F2 | K1, K2 |
| 1 | IRM-05-12 | Converter_ACDC_MeanWell_IRM-05-xx_THT | PS1 |
| 1 | SKRKAEE020 | SW_Push_SPST_NO_Alps_SKRK | SW1 |
| 2 | SS54 | D_SMA | D1, D2 |
| 1 | SMF05CT1G | SOT-363_SC-70-6 | D3 |
| 1 | 33u | L_TDK_SLF6028 | L1 |
| 3 | 22u | C_0805_2012Metric | C1, C3, C9 |
| 1 | 8.2n | C_0603_1608Metric | C2 |
| 1 | 3.3n | C_0603_1608Metric | C4 |
| 7 | 100n | C_0402_1005Metric | C5, C7, C8, C10, C11, C12, C13 |
| 1 | 15n | C_0603_1608Metric | C6 |
| 1 | 1k | R_0402_1005Metric | R1 |
| 7 | 10k | R_0402_1005Metric | R2, R3, R8, R9, R12, R13, R14 |
Show 3 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | 7.5k | R_0402_1005Metric | R4 |
| 1 | 2.4k | R_0402_1005Metric | R5 |
| 4 | 100k | R_0402_1005Metric | R6, R7, R10, R11 |
30a water heater controller design files
The KiCad project lives in the flaviut/30a-water-heater-controller repository on GitHub; these links point at the commit this page was built from.
- Layoutwifi-30A-relay.kicad_pcb
- Schematicwifi-30A-relay.kicad_sch
30a water heater controller: common questions
What microcontroller does the 30a water heater controller use?
The 30a water heater controller is built around the ESP-WROOM-02, from the ESP32 family.
How big is the 30a water heater controller PCB?
The 30a water heater controller measures 85 × 56 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the 30a water heater controller?
42 components, from 23 distinct parts. The full bill of materials is listed on this page.
Where can I download the 30a water heater controller design files?
From the flaviut/30a-water-heater-controller repository on GitHub, which has the KiCad layout and the schematic; the links under Design files point to each one.
Can I use the 30a water heater controller design in my own project?
Yes, under the terms of its CERN-OHL-S-2.0 license, which flaviut chose for the repository.
Can I test firmware for the 30a water heater controller without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug ESP32 firmware against it before you order a PCB.
Similar boards
ESP32
Open Book Abridged Edition
joeycastillo
85 × 115 mm65 parts2LCC-BY-SA-4.08.1kESP32
Badge
atopile
56.3 × 39 mm239 parts4LMIT4.0kESP32
Esp32 minimal
atopile
36.2 × 26.8 mm20 parts2LMIT4.0kESP32
Racer
StuckAtPrototype
36 × 50.2 mm70 parts4LApache-2.03.8kESP32
Controller
StuckAtPrototype
29 × 74 mm58 parts4LApache-2.03.8kESP32
Bitaxe
skot
56.5 × 99.8 mm86 parts4LCERN-OHL-S-2.01.4k