← Lab

Designer & builder 2026

The Greenhouse Gazette

I wired sensors, a camera, and a Raspberry Pi into my family's greenhouse on the Outer Banks. Every morning at 7:00, an AI narrator called the Canal Captain emails the family a report, a timelapse, and a riddle.

  • AI
  • IoT
  • Character design
A hairline greenhouse with two temperature traces flowing out of it, and a marked tick at 07:00, when the daily edition ships.

What it is

My family keeps a greenhouse on a canal in Colington Harbour, on the Outer Banks. I wanted the greenhouse to report on itself, so I ran a Raspberry Pi out to it. A camera hangs overhead and photographs the interior through the day, and those frames become the timelapse. Temperature and humidity sensors read the air on both sides of the wall, because an indoor number only means something next to the outdoor one.

Every morning at 7:00, the family gets an email from the Canal Captain, a retired fisherman with opinions about king tides. He reports the greenhouse vitals, the tides at Jennette’s Pier, yesterday’s daylight as a timelapse, and the day’s riddle. Sundays bring a weekly edition. The same readings sit on a dashboard behind family-only access.

Sensors +cameraPi 5The CaptainFamily7:004 / hour · one at a timeblackout at send
The narrator writes under a budget. The edition ships at 7:00, whatever else is happening.

How it works

The report is written by a character rather than laid out as a dashboard. The Captain works from the same readings a chart would plot and files them as a morning report. A written persona spec holds his voice: salty, pragmatic, hyper-local. The model behind him is Gemini 2.5 Flash.

The May 19, 2026 edition. Under a cream masthead dated Tuesday, May 19, a serif headline reads "Clear skies and warm temps mean it is plant transition time," followed by the Captain's report on hardening off seedlings and cobia season. Below, boxed cards in a hand-drawn style: today's forecast with wind, sun, moon and tide, a three-day outlook, a three-clue riddle titled Brain Fart with an "Email your guess" button, and yesterday's answer, Jockey's Ridge, with the Captain's gloss about a swallowed mini-golf course.

A real edition, May 19, 2026. The greenhouse sensor was dead that week, so the vitals cards are cropped, along with the family leaderboard.

The Captain sets a riddle every morning on the greenhouse-and-weather theme. Guesses come back as replies to the email or get typed into the dashboard, where a model judges them on the spot. The first correct answer is worth 3 points, every one after it is worth 2, and the standings run for a season. Each morning’s edition carries the previous day’s answer with the Captain’s gloss on it. On May 19, that answer was Jockey’s Ridge, and the gloss was about the mini-golf course the dune swallowed. The family can write into the paper as well. Anyone on the allowlist can email a message and the Captain carries it into the next edition.

The dashboard streams the greenhouse live in 720p, and every reading on it shows its age, so an hour-old temperature is labeled an hour old.

How I built it

Inside the greenhouse: a wood-framed polycarbonate structure with shelves of potted plants, a blue workbench with tools and shell-filled pots, hanging baskets, a small circulation fan, and sensor wiring taped along the frame. The sound glows through the translucent walls.

The camera’s view of the greenhouse, the frame every timelapse is built from. The image is flipped here because the camera hangs upside down.

The Captain writes under a budget: four generations an hour at most, a lock so two can’t run at once, and a blackout window around the 7:00 send so nothing competes with the edition going out.

Underneath, the stack is ordinary. A FastAPI service serves a React and TypeScript dashboard and streams the camera over HLS, which cuts the video into short chunks a browser can pick up mid-stream. The Pi assembles the timelapses itself, in 4K. Every push runs a security scan and a set of Playwright tests that walk the dashboard in a browser before the deploy goes out.

What I learned

Wiring the greenhouse was the easy half. A daily email of temperature and humidity is a novelty, and novelty wears out. Better charts wouldn’t have fixed that, so the readings travel with a game. The riddle is written each morning out of the same greenhouse, weather, and coast the rest of the edition reports on, so playing it means paying attention to the thing the report is about. Points and a season-long leaderboard make that a competition among the people who share the greenhouse. The leaderboard is the only readership figure I have, and there are names on it.

The character also turned out to be useful when the system broke. In May, salt ate the wire on the greenhouse sensor and the vitals stopped. The Captain reported the outage in his own voice, which told the family more about what had happened than a blank card on a dashboard would have.