The greenhouse control system graduated from simple monitoring to an actual working machine. We wired up the physical world: a dedicated ESP32 now controls the irrigation solenoid valve, and the window motor firmware got smarter with failsafes and diagnostic logging. The server can now trigger a full AI climate analysis on demand, which gives weekly optimization suggestions—think 'water less in the morning' rather than raw data. The dashboard became a proper control room with a permanent weather map, clearer logs, and even a basic 3D digital twin of the whole setup.
Firmware flashed and tested over USB; the relay clicks on command. Confirmed this week: valve 1 only waters the north bed — so the dashboard now honestly shows the water glow on the north plants only. Next up: wiring the 12/24V supply to prove the valve really opens.
climateControl.ts vents automatically on inside temperature with clean hysteresis. And once a day, the last 24 hours of climate history goes to Claude for a short written analysis with heat-stress and mildew warnings.
A separate ESP32 with a DHT11 for inside temperature and humidity, publishing WiFi signal strength as a bonus. The fancy DS18B20 probes never talked back despite extensive diagnosis — the humble onboard sensor won.
Actuators mounted, H-bridges wired, limit switches fitted (and promptly suspected dead — 90s timeout workaround in place). The weather safety-close and the 2-hour heartbeat failsafe have both already earned their keep.