How The Greenhouse Operates
This is the operating manual for the greenhouse day: lights, climate, wetting windows, irrigation, and fertigation. The relay-control boundary lives in Safety Architecture; this page focuses on what the greenhouse is trying to do.
TLDR
| System | What happens |
|---|---|
| Biological day | The greenhouse is currently “active” from 06:00 to 22:00. This is the shared schedule concept behind lighting and direct plant wetting. |
| Lights | The main and grow circuits each target 960 qualified light minutes per day. Natural light counts first; lights supplement when lux is low and the circuit is behind its daily runtime target. |
| Climate | Temperature and VPD bands come from active crop profiles, then the dispatcher derives the whole-house band the ESP32 enforces. The controller uses heat, fans, venting, misters, and fog to stay inside that band. |
| Misters | Misters are climate tools, not clock tools. They run only when VPD or zone stress creates demand, and only if the zone’s direct-wet gate is open. |
| Drydown | Direct wetting stops before the biological day ends. Center wetting stops earlier than the other wet paths so hanging orchids can dry before night. |
| Irrigation | Drip and fert paths are scheduled by zone, but they still have to pass the same direct-wet gate before water can reach plants. |
| Fertilization | Fertigation is scheduler-based. Wall drip, south/west fert-mister, and center fert paths now run as daily morning feed events; fertilizer is not added to every VPD-driven mist pulse. |
| Night | The greenhouse can still heat, circulate air, and protect safety limits, but automated plant wetting is blocked when the direct-wet gate is closed. |
Daily Rhythm
The operating day has four practical phases.
| Phase | Current timing | Behavior |
|---|---|---|
| Morning recovery | 06:00 onward | Lights may start counting. Climate recovers from night. Direct wetting is still held until each zone’s wet window opens. |
| Active wettable day | 07:00 or 08:00 onward | Climate misters and scheduled irrigation can run if there is demand and the direct-wet gate allows it. |
| Drydown | Late day | Direct wetting is blocked before lights-off so plants are not carried wet into the cooler night. |
| Dormant night | After 22:00 | Lights are off unless explicitly changed by policy. Direct plant wetting is blocked. Heat and air movement continue as needed. |
Current direct-wet windows:
| Wet path | Current window |
|---|---|
| Wall drip, south misters, west misters | 07:00-20:00 |
| Center misters and center clean/fert drip paths | 08:00-19:00 |
| Minimum temperature for automated direct wetting | 65F |
The windows are permission, not demand. If VPD is already fine, misters stay off. If an irrigation cycle is scheduled outside the window, firmware skips it rather than wetting plants at the wrong time.
Lighting
Lighting is controlled as daily useful-light time, not as a fixed on/off timer. Each Lutron circuit has its own policy:
- Main circuit: 960 qualified minutes, start 06:00, cutoff 22:00.
- Grow circuit: 960 qualified minutes, start 06:00, cutoff 22:00.
- Natural light counts toward the target when it is bright enough.
- If the greenhouse is dim and a circuit is behind its target, the controller can turn that circuit on.
- If natural light is strong enough, the circuit stays off or turns off.
The main light policy also defines the greenhouse’s biological activity window. That is why lighting and wetting now move together instead of being separate unrelated schedules.
Climate
The greenhouse has one real air mass but several microclimates. The south end is hotter and drier. East is cooler and more humid. West swings with afternoon sun. Center is a derived/reference zone with hanging orchids.
The control loop works like this:
- Active crops define target temperature and VPD ranges.
- The dispatcher derives the whole-house setpoints the ESP32 should enforce.
- The ESP32 evaluates sensors on its local control loop.
- The ESP32 chooses a safe mode: idle, heat, vent/cool, sealed mist, fog assist, or protection behavior.
- Relays change only through firmware logic and safety rules.
The AI planner can make bounded tactical adjustments: hysteresis, mist thresholds, water budget, fan timing, fog escalation, and heat/cool bias. The full parameter list lives in AI Tunables.
Misters And Fog
Misters primarily manage VPD. They are allowed only when three things are true:
- Climate or zone stress asks for moisture.
- The zone’s direct-wet window is open.
- Temperature, water budget, dwell, and safety gates allow it.
South, west, and center can be treated differently because each wet path has its own zone context. The center zone has a later start and earlier stop than the others. That supports hanging orchids without adding crop-specific firmware logic.
Fog is a separate climate tool. It is useful when humidity support is needed at room scale, but it is also a high-power wetting tool, so the controller keeps it behind its own thresholds and safety checks.
Irrigation And Fertilization
Irrigation is schedule-driven. Wall and center irrigation paths have day masks and start times. Firmware checks the schedule, then checks direct-wet permission before it queues a job.
Fertilization is also schedule-driven:
- Clean and fertilized paths are separate relay outputs where installed.
- Fert day masks decide whether a scheduled cycle uses the fertilized path.
- If a fert mask is zero, firmware falls back to the older every-N-cycle setting.
- Fert jobs open the fertilizer master valve, run the fertilized zone path, then flush with clean water when that zone has a flush duration.
Current fertigation policy:
| Setting | Current value |
|---|---|
| Wall fert schedule | Daily at 10:30 |
| South fert-mister schedule | Daily at 10:30, queued after wall fert |
| West fert-mister schedule | Daily at 10:30, queued after south fert mister |
| Center fert schedule | Daily at 10:30, queued after wall/south/west if all are due |
| Wall, south, west, and center fert duration | 6 minutes each |
| Clean-water flush after each fert event | 2 minutes |
| Wall fert day mask | Every day |
| Center fert day mask | Every day |
| Greenhouse weather skip | Off |
That means fertilizer dose is not tied to how many climate-mist pulses happen on a dry afternoon. Climate misting and fertigation remain separate behaviors.
What Happens If The AI Is Offline
The greenhouse keeps running from the last valid configured values. The dispatcher and public site may go stale, but the physical controller continues locally; detailed failure behavior is documented in Safety Architecture.
The public proof surfaces are:
- Operations for live health, relays, alerts, and data freshness.
- Greenhouse Lighting for the activity window and light runtime policy.
- Planning Loop for how Iris writes bounded plans.
- AI Tunables for the full parameter list.
- Safety for the control boundary.