← All projects
IoT · Group project

EDEN Smart Terrarium

A smart dual-plant terrarium and its live dashboard — sensors, pumps, a fan and a grow light, built as a group project for the Interactive Systems course.

Role
Team member · web dashboard
Timeline
2026
Type
Group project · Interactive Systems, Saarland University
Stack
ESP32, C++, HTML/CSS/JS
Overview

Two plants, two soils, one terrarium. EDEN keeps both alive — and shows you how.

EDEN is a smart terrarium with two independent watering zones. An ESP32 sensor hub reads soil moisture, temperature, humidity, light and the water reservoir, and drives two pumps, a fan and a grow light. The web dashboard turns those readings into a calm, glanceable view and lets you take over manual control.

Home — plant health, humidity, soil and reservoir, with trends and per-zone moisture.
Home — plant health, humidity, soil and reservoir, with trends and per-zone moisture.
Challenge & solution

What made it hard, and how I approached it.

The challenge

Real hardware, real constraints

  • Two plants with different watering needs in the same enclosure.
  • A small sensor hub on a local network, with request timeouts under load.
  • Automation that people can trust and override.
The solution

Simple, transparent, offline-first

  • Independent per-zone soil moisture and pumps, each with its own thresholds.
  • A dependency-free PWA that polls the hub directly and handles a disconnected device gracefully.
  • Auto / Manual control for every actuator, with plain-language explanations of why automation is acting.
Key features

Built around what people actually need.

Plant health

A single health score plus humidity, soil and reservoir levels on the home screen.

Systems control

Auto or manual control of Pump A, Pump B, the fan and the grow light.

Works offline

Installable PWA with a demo mode that simulates the terrarium when the device is unreachable.

EDEN Smart Terrarium on a phone
Responsive

Designed phone-first

The dashboard was designed for a phone next to the terrarium, then extended to a two-column desktop layout.

  • Thumb-reachable floating navigation
  • Health panel readable at a glance
  • Installable as an app on the home screen
In the data

The control logic, made visible.

EDEN’s firmware decides when to water, ventilate and light the terrarium. Both views run the same thresholds as esp32s.ino.

Auto-watering

Why the pump turns on at 40% but only turns off at 60%.

A noisy soil sensor hovering around a single threshold would switch the pump on and off constantly. The firmware’s 40–60% hysteresis band turns that into a few long watering cycles. Toggle to compare both rules on identical readings.

Simulation with the firmware thresholds and a seeded sensor-noise model: illustrative, not logged sensor data.

Try it

Move the readings, watch the actuators respond.

Drag any sensor value. The fan, pump and grow light react the way the dashboard’s auto mode does, including the safety lock that blocks the pumps when the reservoir runs low.

Rules from esp32s.ino: fan outside 18–28 °C or 40–80% humidity; pump on below 40% soil, off above 60%; pumps blocked when the water is more than 4.5 cm from the sensor.

Screens

A closer look at the product.

How it works

Under the hood.

ESP32C++HTMLCSSJavaScriptPWAService worker
Takeaway

What I learned.

Building for real hardware changes priorities: graceful failure, clear status and trustworthy automation matter more than features. Working in a team also meant agreeing early on the data contract between the device and the dashboard.

Next project

GrandLense

A portfolio website for a wedding and portrait photography studio — built to let the photographs lead.

View case study →
Let’s connect

Have an idea
worth exploring?