March 29, 2026

🌅 Morning Cycle (18:07 MDT) — iris-20260329-0000

Observations

Sat evening 6PM: 74F/37% RH indoor, VPD 1.83 avg (north 2.03 worst). ESP32 in COOL_S3_HUM_IDLE — CRITICAL: temp_high=0 causing premature cooling staging. Overnight mild (55-61F, no frost). Sunday forecast: 55F→81F outdoor, 7-10% RH at peak, 93% avg cloud, VPD outdoor 3.0+ kPa. Very similar to Saturday but slightly cooler peak.

Hypothesis & Experiment

Hypothesis: Fixing temp_high=0→82 will eliminate COOL_S3 at room temp, saving fan energy overnight and enabling proper staging. Sunday VPD stress should improve vs Saturday due to: (1) proper COOL staging letting fans+vent activate only when temp actually warrants it, (2) Lesson #4 misting settings applied cleanly from 6AM, (3) mister engage at 1.3 + 30s gap validated settings.

Test: temp_high=0→82 fix: compare overnight fan runtime tonight vs last night (should drop 80%+). Sunday: clean test of Lesson #4 misting (engage 1.3, gap 30s, pulse 60s) with correct cooling staging — first time all params correct simultaneously.

Expected outcome: Overnight fan runtime <1h (vs current ~5h/day). Sunday VPD-high zone-hours <25 (vs Saturday 32.1). Cooling stages properly: COOL_S1 at 82F, S2 at 85F, S3 at 87F.

Setpoint Waypoints

Saturday March 28

Timehighlowvpd_hhystd_coolengageallpulsegapwtNotes
18:0582·········CRITICAL FIX: temp_high was 0, causing C
18:07·60·0.33····1.5Backfilled core param for chart continui
19:00··2··1.62·45·Evening restore: normal all-zone thresho

Sunday March 29

Timehighlowvpd_hhystd_coolengageallpulsegapwtNotes
06:00··1.6··1.31.66030·Sunday morning: all-zone rotation early
19:00··2··1.62·45·Sunday evening restore.

Parameters changed: temp_high,mister_engage_kpa,mister_all_kpa,vpd_high,mister_pulse_gap_s,mister_pulse_on_s

Outcome

Score: 7/10

temp_high=82 fix confirmed working: fans OFF since 10:46 PM MDT Sat (7+ hours). Indoor held 60-63F overnight with no heater activation, no cooling waste. 6AM aggressive misting waypoints partially dispatched (3/5 params made it: engage=1.3, vpd_high=1.6, pulse_on=60s. BUT mister_all_kpa and mister_pulse_gap_s failed to dispatch — still at evening-restore values 2.0 and 45s respectively). Sunday daytime misting test cannot be scored yet.

Lesson: Dispatcher does not reliably push all waypoints in a batch. Always verify /setpoints output for ALL params after a plan dispatch window. Two of 5 params at 6AM were silently missed.


🌅 Morning Cycle (06:06 MDT) — iris-20260329-0600

Observations

Sunday 6AM: 61F indoor, VPD 0.43, RH 77%. Outdoor ~50F. Forecast: 80F peak, 7-10% RH afternoon, 97% cloud cover midday (diffused solar reduces peak temps). VPD ramp 9AM-1PM from 1.6→3.0 kPa outdoor. System health 99/100. temp_high=82 fix confirmed overnight (no fan waste).

Hypothesis & Experiment

Hypothesis: With temp_high=82 now correct, cooling stages properly: COOL_S1 at 82F (fans), COOL_S2 at 85F (both fans), COOL_S3 at 87F (fog). Combined with Lesson #4 aggressive misting (engage 1.3, gap 30s, pulse 60s), the misting and cooling systems will work cooperatively instead of fighting. High cloud cover (97%) should limit peak indoor to ~88-90F vs 95F+ on clear days. Key difference vs yesterday: fans wont exhaust humid air until temp actually warrants it.

Test: Fix 2 dropped params (mister_all_kpa 2.0→1.6, gap 45→30) that the 6AM dispatch missed. First clean full-parameter test of Lesson #4 misting with correct cooling staging under cloudy-dry conditions.

Expected outcome: VPD-high zone-hours <20 (vs Sat 24.9h). Fan runtime < 4h (only daytime, not overnight). Overnight Sat fan runtime was 0h — validated. Sunday should be physics-limited by 80F/7% RH, but clouds help.

Setpoint Waypoints

Sunday March 29

Timehighlowvpd_hhystd_coolengageallpulsegapwtNotes
06:0282·····1.6·30·Fix: failed to dispatch from iris-202603
06:03··1.6··1.3····Confirm engage=1.3 for dry day per Lesso
06:06·58·0.33··60·1.5Backfilled core param for chart continui
19:00··2··1.62·45·Sunday evening restore.

Parameters changed: mister_all_kpa,mister_pulse_gap_s,temp_high

Outcome

Score: 6/10

Partially achieved. temp_high=82 staging works correctly — fans only ran during daytime peaks (3.7h fan1, 3.75h fan2). Overnight fan runtime confirmed 0h. But reactive planner intervened at 11:11 AM pushing vpd_high=1.4 and pulse_on=75s, overriding the planned 1.6/60s. VPD-high zone-hours at noon: south 3.0h, north 2.8h, east 0.1h, west 0.4h = 6.3 total in first 6h. On pace for ~12-15 for full day (target was <20). North zone unexpectedly high VPD (2.13 at noon) despite house buffering. Clean Lesson #4 test confounded by reactive override.

Lesson: Reactive planner can override regular plan mid-cycle. Need to either disable reactive during clean experiments or have regular planner set guard rails the reactive cannot exceed.


☀️ Midday Cycle (12:07 MDT) — iris-20260329-1200

Observations

Sunday noon: 78.6F avg, VPD 1.67 (moderate), outdoor 76F/18% RH. Zone VPD: north 2.13 (highest), south 1.71, west 1.72, east 1.34. Clear sky. Reactive planner pushed vpd_high=1.4 and pulse_on=75s at 11:11 AM. Monday forecast: overcast 100%, high ~77F, outdoor RH 10-14%. Stress so far today: south 3.0h VPD-high, north 2.8h.

Hypothesis & Experiment

Hypothesis: Reverting reactive overrides (pulse_on back to 60s) combined with continued Lesson #4 misting params will reduce afternoon VPD stress while maintaining the 60s pulse sweet spot. North zone VPD is high (2.13) likely due to house thermal mass retaining morning heat — misters cant reach north effectively. Monday overcast will cut solar gain but outdoor RH still bone-dry, so VPD stress will persist.

Test: Revert reactive mister_pulse_on_s 75→60s immediately. Test whether 60s (validated sweet spot) outperforms reactives 75s for VPD control this afternoon. Compare afternoon VPD-high zone-hours with 60s vs the mornings 75s.

Expected outcome: Afternoon VPD-high zone-hours (12PM-7PM): south <4h, total <12h. If 60s pulse resumes superior VPD drops, consider adding a constraint to prevent reactive planner from overriding pulse_on_s.

Setpoint Waypoints

Sunday March 29

Timehighlowvpd_hhystd_coolengageallpulsegapwtNotes
12:0582······60··Override reactive 75s→60s. Lesson #4: 60
12:07·60·0.33····1.5Backfilled core param for chart continui
19:00··2··1.62·45·Sunday evening restore.

Monday March 30

Timehighlowvpd_hhystd_coolengageallpulsegapwtNotes
06:0082·1.6··1.31.66030·Monday aggressive misting zone rotation.

Parameters changed: mister_pulse_on_s,temp_high,vpd_high,mister_engage_kpa,mister_all_kpa,mister_pulse_gap_s

Outcome

Score: 4/10

VPD spiked to 3.10-3.25 avg at 3-4PM (south 3.60 at 4PM). Reverted pulse_on from 75→60s at noon, but outdoor RH 9-11% with 87°F+ indoor made VPD control impossible. 10h heat stress, 47.4h VPD zone-hours for the day. 60s pulse is still the validated sweet spot, but marginal vs 75s on a day this extreme.

Lesson: On days with outdoor RH <15% and peak indoor >87°F, VPD >3.0 kPa at peak is structural regardless of pulse tuning. The 60s vs 75s choice is marginal — shade cloth is the only real fix for peak VPD on extreme dry days.


🌆 Evening Cycle (18:05 MDT) — iris-20260329-1800

Observations

Sunday 6PM: 80°F avg, VPD 2.29 (falling), RH 36%. Today was hot+dry — 89°F/3.25 kPa peak afternoon. 10h heat stress, 47.4h VPD zone-hours. Tomorrow: overcast (89-95% clouds) but still bone-dry (9-12% outdoor RH). Forecast high 78°F outdoor (+3°F bias → 81°F). Indoor peak likely 82-88°F (clouds cut solar gain). Precip prob 7-13% — not enough to help RH.

Hypothesis & Experiment

Hypothesis: Overcast sky will cut solar heat gain by 40-60% vs clear, reducing indoor peak temps by 5-10°F. However, outdoor RH remains extremely low (9-12%), so VPD stress will persist despite lower temps. Lesson #7 misting (engage 1.3, gap 30s) should be more effective at lower temps because misters can influence a smaller thermal load.

Test: First clean test of Lesson #7 misting on an overcast-but-dry day. Engage 1.3 + gap 30s starts 6AM Monday. Compare Monday VPD zone-hours vs today (47.4h) with similar outdoor RH but lower temps from clouds.

Expected outcome: Monday VPD-high zone-hours < 30 (vs 47.4 today). Peak indoor temp < 88°F (vs 89°F today). Grow lights extend 3-4h for DLI compensation (overcast alert).

Setpoint Waypoints

Sunday March 29

Timehighlowvpd_hhystd_coolengageallpulsegapwtNotes
18:0082601.60.331.51.860451.5Standard staging.
19:00825820.331.6260451.5COOL_S2 at 85°F. Standard staging.

Monday March 30

Timehighlowvpd_hhystd_coolengageallpulsegapwtNotes
06:0082601.60.331.31.660301.5Standard. COOL_S2 at 85°F.
19:00825820.331.6260451.5Standard.

Parameters changed: vpd_high,mister_engage_kpa,mister_all_kpa,mister_pulse_gap_s

Outcome

Score: 6/10

Overnight Sun→Mon was mild and stress-free (VPD <1.0, temp 61-70°F). Monday morning at 9:26AM: 70.4°F, VPD 0.81, RH 68.4%. Only 2h VPD stress accumulated (from late Sunday carry-over, not Monday). The experimental conditions changed dramatically: forecast predicted 9-12% outdoor RH for Monday, but a cold front arrived bringing 68%+ RH and a 17°F temp drop. Misters never engaged because VPD stayed well below engage threshold. The Lesson #7 misting experiment (engage 1.3, gap 30s) is a wash — conditions never triggered it.

Lesson: Forecasts can shift overnight. Evening plans that set aggressive misting for next-day dry conditions may waste a plan cycle when weather changes. Consider: morning plans should re-evaluate evening assumptions before committing to experimental misting postures.


7-Day Stress Context

DateHeat (h)VPD High (h)Cold (h)
2026-03-231.86.60.0
2026-03-243.68.40.0
2026-03-258.714.20.0
2026-03-263.59.90.0
2026-03-270.00.00.0
2026-03-280.63.00.0
2026-03-295.58.60.0

End-of-Day Summary

Climate

MetricMinAvgMax
Temperature (°F)59.972.093.3
VPD (kPa)0.381.213.89
Relative Humidity (%)22.379.1

Stress Hours

  • Heat stress (>85°F): 5.5h
  • VPD stress (>2.0 kPa): 8.6h
  • Cold stress (<55°F): 0.0h

Economics

ElectricGasWaterTotal
$1.68$0.06$1.130$2.87

Equipment Runtimes

EquipmentRuntime
Fan 1427 min
Fan 2422 min
Vent459 min
Fog80 min
Heat 1 (electric)6 min
Heat 2 (gas)6 min
Grow lights956 min
Mister south0.45h
Mister west0.12h
Mister center0.66h

Water

  • Total: 233 gal
  • Mister: 39 gal

Hourly Pattern

HourTemp °FVPD kPaRH %
12:0079.01.9243.3
13:0083.02.1145.5
14:0082.91.8951.5
15:0081.01.5158.2
16:0076.41.5151.4
17:0078.01.5053.9
18:0075.61.5150.0
19:0074.81.0265.4
20:0071.61.3648.1
21:0070.41.0956.9
22:0070.31.1056.4
23:0069.00.9760.1
00:0067.00.7268.2
01:0065.50.6071.9
02:0064.20.5374.0
03:0063.30.4975.5
04:0062.40.4676.3
05:0061.30.4376.9
06:0061.40.4476.7
07:0061.40.4576.0
08:0063.60.5373.7
09:0066.70.6272.4
10:0078.61.3660.3
11:0078.81.6850.3