Skip to the content
PCBKitNew board
2 layers169.5 × 84 mmClimateSprinklerController, the printed circuit board in 3D

ClimateSprinklerController

kbx81/ClimateSprinklerController56

ESP32-based climate and sprinkler controller for use with ESPHome

Size
169.5 × 84 mm
Copper layers
2
Thickness
1.6 mm
Parts
184
Nets
131
Pads
681
Tracks, vias
1,383, 183
Pours
8
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
27 Jun 2020
Updated
8 Jan 2022

Overview

ClimateSprinklerController is an open-source printed circuit board by kbx81, from the kbx81/ClimateSprinklerController repository on GitHub. It is a 2-layer board of 169.5 × 84 mm with 184 parts on 131 nets, routed with 1,383 tracks and 183 vias.

It is built around the ESP32-WROVER, 2N6073BG and BME280, with the BME680, DHT22 and FT232RL among its other parts. Its parts include 55 resistors, 37 capacitors, 13 ICs, 8 transistors and 8 connectors. It belongs with the home automation and IoT boards and the ESP32 boards of this library.

Main components

8

README

README.md

kbx's Climate and Sprinkler Controller

Climate and Sprinkler Controller Climate and Sprinkler Controller

A DIY Thermostat and/or Sprinkler (Valve) Controller

Here you'll find plans for an ESP32-based controller designed with ESPHome in mind. It is primarily designed for switching 24-volt AC circuits but it is flexible by design and should be adaptable to other types of electrical workloads.

In the Preface you will find background information about this project such as how it came to be and some personal thoughts and experiences I've had with home automation through the years.

In the Hardware document you will find a general explanation of the theory of operation of a thermostat as well as a design overview of this device, some handy tips (should you choose to build one), construction, usage, and installation detail.

Finally, the Hardware Detail document aims to explain why I did what I did -- design decisions, etc.

Design Versions

At present there are two major "versions" of (iterations on?) the device -- a version that supports an OLED display such as the SSD1325 and a version (well, actually three versions) that supports a Nextion touchscreen display. The project files for each can be found in its respective directory:

PCB and BoMs

The schematic and PCB were drawn in KiCAD. I had PCBs fabricated by Elecrow but nearly any PCB fabricator should be able to manufacture these without any issues.

On Octopart I have posted a bill of materials (BoM) for each design version:

Important!

Save money by reading through the build guide before you order any parts, as you likely do not need every part in the linked BoMs! (For example, there are footprints multiple sensors on each PCB. You do not need all of the sensors!)

ESPHome Configuration & Code

I've created a separate repository for my ESPHome configurations; if you're looking for a starting point/example configuration, please have a look there.

Legal stuff and License

Everything you see here is provided to you free of charge. You are free to use it however you please within the constraints of the license -- but you do so at your own risk. I accept absolutely no liability if you cause damage to your property, HVAC system, or any other hardware you choose to connect to this device.

The circuit schematics, PCBs and enclosures found here are licensed under the Creative Commons Attribution-ShareAlike 4.0 International License.

Creative Commons License badge

Thanks for visiting!

Parts

184
QtyValueFootprintReferences
17100 nFCapacitor_SMD:C_0805_2012MetricC3, C4, C6, C10, C11, C15, C17, C22, C23, C24, C26, C28, C29, C30, C31, C32 +1
1610KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR1, R2, R3, R5, R6, R7, R8, R11, R13, R14, R15, R22, R25, R26, R30, R50
5.01 uFCapacitor_SMD:C_0805_2012MetricC33, C34, C35, C36, C37
5180Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR40, R41, R42, R43, R44
5270Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR35, R36, R37, R38, R39
52N6073BGClimateSprinklerController:TO-225-3_VerticalQ5, Q6, Q7, Q8, Q9
539Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR51, R52, R53, R54, R55
5820Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR45, R46, R47, R48, R49
5MOC3043Package_DIP:SMDIP-6_W9.53mmU12, U13, U14, U15, U16
44.7 uFCapacitor_SMD:C_0805_2012MetricC2, C5, C9, C12
4MountingHole_PadMountingHole:MountingHole_3.2mm_M3_Pad_ViaH1, H2, H3, H4
4MountingHole_PadMountingHole:MountingHole_3.2mm_M3_DIN965_PadH5, H6, H7, H8
31 uFCapacitor_SMD:C_0805_2012MetricC14, C19, C20
32K7Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR10, R33, R34
347 uFCapacitor_SMD:C_1210_3225MetricC16, C18, C21
210 uFCapacitor_SMD:CP_Elec_5x5.8C25, C27
2100KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR16, R19
210KConnector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_VerticalTH1, TH2
21K5Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR31, R32
23K3Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR18, R21
24.7Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR12, R20
2MMSS8050Package_TO_SOT_SMD:SOT-23Q1, Q2
110 uFCapacitor_SMD:C_0805_2012MetricC1
1120Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR28
115 uHInductor_SMD:L_Wuerth_WE-PD-Typ-LSL1
11K2Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR9
11K6Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR27
1220 nFCapacitor_SMD:C_0805_2012MetricC13
124.9KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR17
12N7002Package_TO_SOT_SMD:SOT-23Q4
1300 mAFuse:Fuse_2920_7451MetricF1
13V3LED_SMD:LED_1206_3216Metric_ReverseMount_Hole1.8x2.4mmD7
1470 uFClimateSprinklerController:CP_Radial_Cutout_L20.0mm_D10.0mm_P5.00mmC7
14K7Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR4
1560Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR29
15KResistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR23
15VLED_SMD:LED_1206_3216Metric_ReverseMount_Hole1.8x2.4mmD6
17.5 TO 40 VConnector_BarrelJack:BarrelJack_HorizontalJ1
18K2Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolderR24
1AR_ENJumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP11
1AR_IO0Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP12
1BME280Package_LGA:Bosch_LGA-8_2.5x2.5mm_P0.65mm_ClockwisePinNumberingU9
1BME280_A0Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mmJP15
1BME680Package_LGA:Bosch_LGA-8_3x3mm_P0.8mm_ClockwisePinNumberingU7
1BME680_A0Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mmJP14
1ClimateSprinklerControllerQRClimateSprinklerController:ClimateSprinklerControllerQRQR*****
1DHT22Connector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_VerticalU17
1ESP32-WROVERClimateSprinklerController:ESP32-WROVERU1
1FT232RLPackage_SO:SSOP-28_5.3x10.2mm_P0.65mmU3
1GLED_SMD:LED_1206_3216Metric_ReverseMount_Hole1.8x2.4mmD11
1G6E-134P-US DC5Relay_THT:Relay_SPDT_Omron_G6EK1
1HVACClimateSprinklerController:PhoenixContact_SPTAF_1_12-3.5-IL_1x12_P3.50mm_VerticalJ10
1I2CConnector_PinSocket_2.54mm:PinSocket_1x05_P2.54mm_VerticalJ8
1INTA_TO_I36Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP5
1INTB_TO_I39Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP4
1IO15Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP13
1IO26/RTSJumper:SolderJumper-3_P1.3mm_Open_RoundedPad1.0x1.5mmJP8
1IO_EXPConnector_PinSocket_2.54mm:PinSocket_2x09_P2.54mm_VerticalJ9
1J5_V_SELJumper:SolderJumper-3_P1.3mm_Open_RoundedPad1.0x1.5mmJP9
1LD1086DT33TRPackage_TO_SOT_SMD:TO-252-2U8
1LMR36520Package_SO:Texas_HSOP-8-1EP_3.9x4.9mm_P1.27mm_ThermalViasU5
1LOGOClimateSprinklerController:HomeAssistant_slik_logoG***
1LOGOClimateSprinklerController:ESPHome_slik_logoG***
1MCP23017_A0Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mmJP1
1MCP23017_A1Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mmJP2
1MCP23017_A2Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mmJP3
1MCP23017_SOPackage_SO:SOIC-28W_7.5x17.9mm_P1.27mmU2
1MODEButton_Switch_THT:SW_Tactile_SPST_Angled_PTS645Vx58-2LFSSW3
1N/ADiode_SMD:D_SOD-123D9
1N/ADiode_SMD:D_SOD-123FD1
1N/AConnector_USB:USB_Micro-B_Molex-105017-0001J2
1N/AClimateSprinklerController:RV_Disc_D7mm_W4mm_P5mmRV1
1N/ADiode_SMD:Diode_Bridge_Bourns_CD-MBL2xxSD2
1NEXTIONConnector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_VerticalJ4
1PG_TO_ENJumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mmJP10
1PIRConnector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_VerticalJ7
1POWERButton_Switch_THT:SW_Push_1P2T_Vertical_E-Switch_800UDP8P1A1M6SW1
1POWER_SELConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalJ3
1RELAYLED_SMD:LED_1206_3216Metric_ReverseMount_Hole1.8x2.4mmD10
1RESETButton_Switch_THT:SW_Tactile_SPST_Angled_PTS645Vx58-2LFSSW2

The 161 most common of 184 parts.

Questions

How big is the ClimateSprinklerController PCB?

It measures 169.5 × 84 mm and has 2 copper layers, 1.6 mm thick.

What parts does the ClimateSprinklerController use?

184 parts, built around the ESP32-WROVER, 2N6073BG, BME280 and BME680. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the ClimateSprinklerController KiCad files?

From the kbx81/ClimateSprinklerController repository on GitHub, at the commit this page was made from: the board is WROVER-Nextion5/ClimateSprinklerController.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the ClimateSprinklerController design in my own project?

Its repository states no licence, so its author keeps all rights: ask kbx81 before reusing the design.

More from kbx81/ClimateSprinklerController

3
  • 2 layers136 × 100 mmClimateSprinklerController, the printed circuit board in 3D

    ClimateSprinklerController

    kbx81/ClimateSprinklerController

    ESP32-based climate and sprinkler controller for use with ESPHome

    194 parts56
  • 2 layers136 × 100 mmClimateSprinklerController, the printed circuit board in 3D

    ClimateSprinklerController

    kbx81/ClimateSprinklerController

    ESP32-based climate and sprinkler controller for use with ESPHome

    187 parts56
  • 2 layers136.5 × 54.9 mmClimateSprinklerController, the printed circuit board in 3D

    ClimateSprinklerController

    kbx81/ClimateSprinklerController

    ESP32-based climate and sprinkler controller for use with ESPHome

    120 parts56

Similar boards

  • 2 layers22 × 66.5 mmKbxIrBlaster, the printed circuit board in 3D

    KbxIrBlaster

    kbx81/kbxIRBlaster

    ESP32-based IR MegaBlaster!

    106 parts58CC-BY-SA-4.0
  • 2 layers73 × 94 mm8FilPilotes Base, the printed circuit board in 3D

    8FilPilotes Base

    LudovicLemarinel/EspHomeAutomation

    Home Automation based on ESP8266 and MQTT

    75 parts3
  • 2 layers35 × 17 mmEsp32, the printed circuit board in 3D

    Esp32

    buganini/usb-dl

    Various usb firmware downloader boards

    22 parts
  • 2 layers263.3 × 128 mmKIKAD, the printed circuit board in 3D

    KIKAD

    MUBARIS-KT/DC-DC_CONVERTER

    This project provides the complete design and code for a DC to DC converter that steps up 12V DC to 300V DC. The project is a comprehensive solution in power electronics, including PCB design, STM32 code for PWM…

    133 parts
  • 4 layers149.6 × 98 mmMch2022, the printed circuit board in 3D

    Mch2022

    kitspace-test-repos/kicad6-file-collection

    235 partsMIT
  • 2 layers69.9 × 69.9 mmAirQualityPCB, the printed circuit board in 3D

    AirQualityPCB

    curiouselectric/airQualitySensor

    This is a PCB and design for an air quality sensor unit using the airrohr/luftdaten/sensor.community design

    21 parts2
  • 2 layers25.4 × 40.1 mmPTL IR remote, the printed circuit board in 3D

    PTL IR remote

    PostTenebrasLab/PTL-IR_remote

    IR remote based on esp8266 with OTA, MQTT, web server, DHT22, brightness, IRM

    22 parts1GPL-3.0