

MakeItRain
DIY ESP-32 Based sprinkler Controller
- Size
- 151.1 × 71.1 mm
- Copper layers
- 4
- Thickness
- 1.6 mm
- Parts
- 76
- Nets
- 89
- Pads
- 294
- Tracks, vias
- 853, 37
- Pours
- 3
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 6 Oct 2021
- Updated
- 18 Mar 2025
Overview
MakeItRain is an open-source printed circuit board by TJLTM, from the TJLTM/MakeItRain repository on GitHub. It is a 4-layer board of 151.1 × 71.1 mm with 76 parts on 89 nets, routed with 853 tracks and 37 vias.
It is built around the OPA2340UA/2K5G4, LTV-846S and IRF9Z34NPBF, with the BS250, BZX79C10 and STPS3150RL among its other parts. Its parts include 34 resistors, 13 transistors, 6 connectors, 5 diodes and 4 capacitors. It belongs with the home automation and IoT boards and the ESP32 boards of this library.
Main components
7OPA2340UA/2K5G4
SOIC-8-40℃~+85℃ 0.2pA 0.2pA 2 2.5uV/℃ 2.7V~5.5V 25nV/√Hz@1kHz 5.5MHz 500uV 50mA 6V/us 750uA 92dB Rail-to-Rail Input, Rail-to-Rail Output SOIC-8 Operational Amplifier ROHSTexas InstrumentsPrecision Op AmpsLTV-846S
SMD-16P-30℃~+100℃ 1.2V 100mV@20mA,1mA 200mW 3us 4 4us 50% 50mA 50mA 5kV 600% 6V 80V DC SMD-16P Transistor, Photovoltaic Output Optoisolators ROHSLite-OnTransistor, Photovoltaic Output OptoisolatorsIRF9Z34NPBF
TO-220AB-55℃~+175℃ 1 P-Channel 100mΩ@10V 140pF 19A 2V 35nC 55V 620pF 68W TO-220AB MOSFETs ROHSInfineon TechnologiesMOSFETsBS250
TO-92TO-92 MOSFETs ROHSQNHMOSFETsBZX79C10
DO-35-65℃~+200℃ 1 Independent 10V 200nA@7V 20Ω 500mW 9.4V~10.6V DO-35 Zener Diodes ROHSonsemiZener DiodesSTPS3150RL
DO-201AD1 Independent 100A 150V 2uA@150V 3A 820mV@3A DO-201AD Schottky Diodes ROHSSTMicroelectronicsSchottky DiodesTS02-66-160-BK-260-LCR-D
插件-4P,6x6mm-30℃~+80℃ 12V 16mm 2.6N 50mA 60,000 cycles 6mm 6mm PC Pin Round Button SPST-NO Through Hole 插件-4P,6x6mm Tactile Switches ROHSCUITactile Switches
README
README.mdMakeItRain
This is a project for a DIY multinode watering system like rainbird or whatever the other ones are. Using MQTT to control the valves or reading the local inputs from the device. will work with 12 or 24 volt (DC) systems. These can be set up remotely with a solar panel and a decent sized battery (solar charger not included)
Some basic documentation. Currently this is beta/dev FW and hardware that after I get working enough and integrated into my own systems, I will get some broader system integration going. Some Goals are to have this integrate with Homeassistant via a custom integration via MQTT and i will be adding support for self contained schedules and timers. Limited as they will be it is on my roadmap that this does not have to be connected to the internet or any Wifi to function. Those are optional extras if you want. Other things will be to have OTA FW updates, Web page control and possibly Telnet/SSL control if i get around to it.
Build Documentation
- Look in the BOM folder for the list of recommended parts
- Case that was designed for was a SERPAC - RB63
- Power can be supplied by any 3.3v regulator as long as it can take your selected input voltage and can supply at least 3 amps of power. I have a Design that can be used and will fit at https://github.com/TJLTM/LM2670SX-Carrier
Hardware
- ESP32 - https://www.amazon.com/gp/product/B07QCP2451/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1
- Valves - https://www.amazon.com/gp/product/B004RUH7A0/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1
- Battery - any 12Vdc with >=7.5 Ah will work for a few months or depending on how often you water may be less. CUrrently testing with a 12v 9Ah battery and months may be extremely optimistic. without a solar charger of some time it will be about a month at most for that battery with 4 zones. I'm going to look into what can be optimized power wise.
Documentation will be coming once i fix a few more issues.
To Dos:
- OTA Updates for FW
- Web server for control and set up
- AP/BLE support for Setup and Lack of WIFI
- Certs for MQTT
- Telnet/SSL Control (Maybe)
- Local Schedules
- Web API
Parts
76| Qty | Value | Footprint | References |
|---|---|---|---|
| 7 | 10k | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical | R3, R8, R12, R16, R20, R21, R36 |
| 5 | 330 | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical | R4, R26, R28, R39, R41 |
| 5 | IRF9Z34NPBF | SamacSys_Parts:TO254P469X1042X1967-3P | Q3, Q6, Q9, Q12, Q13 |
| 4 | 100k | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical | R7, R11, R15, R19 |
| 4 | 1K | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical | R27, R29, R40, R42 |
| 4 | 1M | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical | R6, R10, R14, R18 |
| 4 | 220nF | Capacitor_THT:C_Disc_D5.1mm_W3.2mm_P5.00mm | C1, C2, C3, C4 |
| 4 | 22k | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical | R30, R31, R32, R33 |
| 4 | 2N7000 | Package_TO_SOT_THT:TO-92_Inline | Q2, Q5, Q8, Q11 |
| 4 | BS250 | Package_TO_SOT_THT:TO-92_Inline | Q14, Q15, Q16, Q17 |
| 4 | BZX79C10 | SamacSys_Parts:DIOAD1068W53L380D172 | Z5, Z6, Z7, Z8 |
| 4 | STPS3150RL | Diode_THT:D_DO-201_P15.24mm_Horizontal | D3, D5, D7, D9 |
| 4 | Screw_Terminal_01x03 | TerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-3-5.08_1x03_P5.08mm_Horizontal | Z1, Z2, Z3, Z4 |
| 2 | 2.2k | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical | R37, R38 |
| 2 | 47k | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical | R25, R34 |
| 1 | 120k | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical | R23 |
| 1 | 15k | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P2.54mm_Vertical | R24 |
| 1 | 178.6165.0001 | SamacSys_Parts:17861650001 | U2 |
| 1 | 500k | Potentiometer_THT:Potentiometer_Bourns_3296W_Vertical | RV1 |
| 1 | Conn_01x01 | Connector_PinHeader_2.54mm:PinHeader_1x01_P2.54mm_Vertical | J4 |
| 1 | Conn_01x03 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J5 |
| 1 | Conn_01x19 | Connector_PinSocket_2.54mm:PinSocket_1x19_P2.54mm_Vertical | J3 |
| 1 | Conn_02x14_Odd_Even | Connector_PinHeader_2.54mm:PinHeader_2x14_P2.54mm_Vertical | J1 |
| 1 | Conn_02x19_Odd_Even | Connector_PinSocket_2.54mm:PinSocket_2x19_P2.54mm_Vertical | J2 |
| 1 | LED | LED_THT:LED_D3.0mm | D1 |
| 1 | LTV-846S | SamacSys_Parts:LTV846S | IC2 |
| 1 | MCP23008-xP | Package_DIP:DIP-18_W7.62mm | U1 |
| 1 | OPA2340UA_2K5 | SamacSys_Parts:SOIC127P600X175-8N | IC1 |
| 1 | Screw_Terminal_01x02 | TerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_Horizontal | P1 |
| 1 | TS02-66-160-BK-260-LCR-D | SamacSys_Parts:TS0266160BK260LCRD | S1 |
Questions
How big is the MakeItRain PCB?
It measures 151.1 × 71.1 mm and has 4 copper layers, 1.6 mm thick.
What parts does the MakeItRain use?
76 parts, built around the OPA2340UA/2K5G4, LTV-846S, IRF9Z34NPBF and BS250. 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 MakeItRain KiCad files?
From the TJLTM/MakeItRain repository on GitHub, at the commit this page was made from: the board is Hardware/MakeItRain/MakeItRain.kicad_pcb and its schematic Hardware/MIR-InputMod/MIR-InputMod.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the MakeItRain design in my own project?
Its repository states no licence, so its author keeps all rights: ask TJLTM before reusing the design.
More from TJLTM/MakeItRain
2- 2 layers121.3 × 68.1 mm

- 2 layers50.8 × 38.1 mm

Similar boards
- 2 layers72.9 × 71.1 mm

AMS - CANBus Sensor - RPM
TJLTM/Automotive-Monitoring-System-CANBus-Sensor
What is this? --- when working on my AMS solution i kept putting more and more stuff into a single box and everytime i needed to make a change it was $200 for a board that may or may not work so i decided to make it…
52 parts - 4 layers193.7 × 142.2 mm

CampKeen
TJLTM/CampKeen
What this can monitor: 1. Holding Tanks - Grey/Sewage via galvanic sensors (posts in the tank) these are the ones i'm using (https://www.amazon.com/gp/product/B07YVK2V2K/ref=ppxyodtbsearchasintitle?ie=UTF8&psc=1 and…
326 parts - 2 layers329.9 × 146.6 mm

- 2 layers100.2 × 68.6 mm

Board MKIV
Demetrius-Ross/SimMonitor
Rename the main script to main.py '''bash mv espnowsenderrelay.py main.py '''
45 parts - 4 layers221.5 × 130.8 mm

MEP MAXI-85V-1-REV-2-Interface Board
JGilcreast/MetalHead
An opensource firmware and software drop-in replacement for the 85V Automatic Stirrup Bender by CRS Specialties Inc. ...short story behind the name...
407 parts - 2 layers21.5 × 49.5 mm

- 2 layers130 × 75 mm

- 2 layers100 × 100 mm
