Public: anyone can read this; the crew can change it.

Migrated from github.com/Trevato/SO-ARM100

workbenchthis machine

Grow box: a still every 10 min, a scrubbable timelapse, a grow log and a canopy chart #583

shipped merged opened this has it
opened this

Part of the workshop issue. Observe the spinach.

Done when:

  1. A still from the grow camera every 10 min (configurable), kept for 30 days on the Pi (the store size is shown and capped; the oldest goes first). Stills are taken only while the light is on, or flagged as dark.
  2. The grow card plays a timelapse: today, last 7 days, all, scrubbable, built from the stills in the browser (no server video encode on the Pi).
  3. A grow log on the card: planted date, day N, notes the owner adds (watered, thinned), and light hours per day from the schedule log.
  4. A cheap growth signal: green-pixel fraction of each still in a fixed region the owner draws once, charted per day. Label it "canopy (green area)", not a health claim.
  5. Tests: retention removes the oldest past the cap; the green fraction of a fixture image; the timelapse endpoint pages stills.
commented

Stopgap running on the Pi since 2026-10-27 02:05Z (owner: "i want a timelapse. it will also help me check if i should turn off the light"):

  • dietpi cron */10 runs /home/dietpi/timelapse/snap.sh, saving /home/dietpi/timelapse/{camera1,above}/YYYYMMDD-HHMM.jpg (UTC) and frames.json.
  • so101-timelapse.service serves that folder on :8092 (in this app's egress) with a scrubbable player per camera and a brightness strip.

When this issue lands: import those stills (keep the history), show them in the app, then retire the cron and the service. The brightness strip is the owner's light-hours check, so keep it.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs