Zum Inhalt springen

Module M9 - Grow Tracker

Dieser Inhalt ist noch nicht in deiner Sprache verfügbar.

File: packages/grow_tracker.yaml

What it does

Tracks the key dates of the current grow cycle and derives the current phase, the number of days spent in that phase, and the expected harvest date - rebuilding the “Grow Tracker” card from the previous dashboard as an actual module rather than a display-only widget.

Inputs you set

  • input_datetime.grow_tracker_seedling_start
  • input_datetime.grow_tracker_vegetation_start
  • input_datetime.grow_tracker_flower_start
  • input_datetime.grow_tracker_drying_start (optional - only needed once you start drying)
  • input_number.grow_tracker_expected_flower_days (default 60)
  • input_boolean.grow_tracker_harvest_done (flip on once you have harvested)

Derived values

  • sensor.grow_tracker_phase: one of Not started, Seedling, Vegetative, Flowering, Drying, Harvested - computed from today’s date against whichever milestone dates you have set (the most advanced phase whose start date has passed wins).
  • sensor.grow_tracker_day_in_phase: how many days you have been in the current phase.
  • sensor.grow_tracker_flower_day: days since flower start specifically (matches the “Flower Tag X” counter from the previous dashboard).
  • sensor.grow_tracker_expected_harvest_date: flower start date + grow_tracker_expected_flower_days.

Grow cycle ID

input_text.grow_tracker_cycle_id is auto-filled (via automation.grow_tracker_autofill_cycle_id) from the seedling start date the first time you set it, if you have not already named the cycle yourself. Editing it stays on Dashboard 1 only (see dashboard-1-configuration.md); multi-grow management itself (Phase 10) still isn’t built - this field exists from the start so existing history already has a grow_cycle_id to group by once that feature is built.

Displayed read-only on the Overview (2026-08-28). sensor. grow_tracker_cycle_name is a trivial read-only mirror of input_text. grow_tracker_cycle_id (“Not set” if empty), added specifically so Dashboard 2’s Overview can show “the name of the current running batch” without exposing a second editable copy of the field there - editing the real input_text stays exclusively on Dashboard 1, per the earlier Overview redesign’s “editing happens in exactly one place” decision.

Reset / Save buttons (2026-08-28, Dashboard 1 only). script.grow_tracker_save_cycle_id and script.grow_tracker_reset_cycle_id back two buttons on Dashboard 1’s Grow Tracker card. Home Assistant’s input_text already commits whatever you type the instant you tab away or press Enter - there is no separate “unsaved” state to actually save - so “Save” is a deliberate, visible confirmation: it posts a persistent notification echoing the current value back (“Grow Cycle ID saved: ”…"", or a nothing-to-save note if the field is empty), giving you a concrete “yes, that’s what’s stored” moment instead of relying on the implicit tab-away commit. “Reset” clears the field back to empty and posts its own confirmation notification; clearing it also re-arms automation.grow_tracker_autofill_cycle_id (which only fires while the field is empty), so the next Seedling / Cutting Start date you set regenerates a fresh default ID automatically, same as it would on a brand new deploy.