Reference Project

Greenhouse Controller

A solar-powered greenhouse controller on a 12 V lead-acid battery, designed from Circuit Issues template blocks. It is being redesigned now; this page tracks how the blocks fit together on a real product.

System photo — coming with build log

System overview

The controller charges a 12 V lead-acid battery from a solar panel, runs pumps and grow LEDs from that battery, and measures soil moisture and its own energy use. Data and controls are exposed over Wi-Fi through ESPHome and Home Assistant.

MCU0140 ESP32-S3 core (WROOM-2), Wi-Fi + BLE
EnergySolar panel → 0120 MPPT charger (BQ24650) → 12 V lead-acid battery
Logic supply0101 buck converter (TPS562203) from the 12 V battery
Load control0110 low-side switches for pumps and grow LEDs; 0115 high-side switches for 12 V rails
Telemetry0010 INA219 current, voltage and power monitor
SensorsSoil moisture inputs (new 0–10 V analog input block) and I²C environment sensors
FirmwareESPHome / Home Assistant
StatusSchematic redesign from the blocks; prototypes follow

Templates used

Charging, regulation, switching, telemetry and control come from Circuit Issues blocks. 0120 and 0101 go onto the board once their open design-review items are fixed.

Key integration decisions

One 12 V battery bus

The 0120 MPPT charger keeps the lead-acid battery charged from the panel; loads and the 0101 buck for the logic rail run from the same battery.

Freewheel diodes on every pump

Pumps and solenoids are inductive, so the 0110 low-side switches are built with their freewheel diode fitted.

Measurement + switching feedback loop

0010 telemetry tells the firmware how much energy is available and used, and 0110/0115 switch the loads accordingly: energy-aware greenhouse automation.

Blocks verified on the prototype

Bring-up of the first prototypes is where blocks move to the “hardware verified” status shown on their template pages.

Build log

4 posts planned
1

Why I Built a Greenhouse Controller From Templates

PlanningComing soon

The motivation, system requirements, and why reusing proven building blocks beats designing from scratch every time.

2

Integrating Five Blocks on One PCB

HardwareComing soon

Combining 0140, 0120, 0101, 0110, and 0010: how rails, sensing, switching, and control fit together in one system.

3

Board Bring-Up and Sensor Calibration

DebugComing soon

First power-on checklist, probing the rails, flashing firmware over USB-C, and checking each block against its specs.

4

ESPHome Integration and Home Assistant Dashboard

FirmwareComing soon

Writing the ESPHome YAML, mapping GPIOs to sensors and pumps, and building the Home Assistant dashboard.

Video walkthrough

Video coming with build log series

Build your own project from templates

Start with the free 0140 ESP32-S3 core and add the power, measurement and switching blocks as they are released.