AI

Fyto - Your Plant, Expressed!

Fyto is a smart planter that gives your plant a personality. 6 senses, animated emotions, a live dashboard, and AI diagnostics. Your plant has always felt things. Now you can see them.

Shebin Jose Jacob

15 min read
Fyto - Your Plant, Expressed!

Your plant has always had feelings. It just never had a face.

It thirsts. It reaches toward light. It shivers in the cold and soaks in the warmth. It has been telling you things all along — in drooping leaves, in slow stretches toward the window, in the quiet patience of something alive that cannot speak.

Fyto gives it a personality. Six sensors read your plant's world in real time, and a round IPS display turns everything it feels into something you can finally see. Happy. Thirsty. Sleepy. Pampered. Not a reading. Not a number. A face — animated, expressive, unmistakably alive.

Your plant has always been a pet. Now it can act like one.

Fyto - Pampered
Fyto - Pampered
Fyto With Dashboard
Fyto With Dashboard

The Story

A couple of years ago, we built the first Fyto — a Raspberry Pi Zero 2W strapped to three sensors and a small rectangular LCD inside a 3D-printed pot. We published it on YouTube, shared it with the maker community, and honestly expected a few likes and a comment or two.

What we got was thousands of views, messages from people who actually built their own, and a community that genuinely loved the idea of turning a plant into a pet. The concept resonated. A plant that shows you how it feels — that's something people wanted in their lives.

But the first Fyto had rough edges. The Pi Zero was overkill for the job and drained power. An external ADC (ADS1115) added complexity and cost. Three sensors meant we were missing half the picture. The rectangular display felt like a screen bolted onto a pot, not a face looking back at you. And wiring everything together on a breadboard? That wasn't something most people wanted to do on a Saturday afternoon.

So we went back to the workbench. Every improvement in this version came from building, using, and sharing the original. The community showed us what mattered. Now we've rebuilt Fyto from the ground up — better hardware, more senses, a proper PCB, and a design that anyone can put together.

This is still the same Fyto. Same soul. Same personality. Just grown up!

The Personality

Think about what makes a dog a pet and a plant just a plant. It's not care — people are devoted to their plants. It's not companionship — plants share your space, your routines, your mornings. It's the feedback loop. A dog looks at you. A cat responds to your mood. There's a signal coming back.

Plants give you nothing. They can't. So the relationship stays one-sided — you care, you wonder, you guess.

Fyto closes that loop. A 1.28-inch round IPS display sits at the front of the planter and shows your plant's emotional state in real time. Not a percentage. Not a bar graph. A face. Animated, expressive, alive — full-color GIFs running at 240x240 pixels that shift the moment sensor readings change.

Screens are rectangular. Faces are round. That one design decision changes everything about how you relate to the object in front of you. It stops being a device with a readout and starts being something that looks back.

Meet Your Pet

Fyto has six emotions, each driven directly by sensor data. There's no algorithm deciding how your plant "should" feel — the readings map to states, and the states map to animations on the display. Simple, honest, and immediate.

Fyto
Fyto

Happy

Fyto - Happy
Fyto - Happy

Thirsty

The soil is getting dry and your plant is ready for a drink. Fyto's expression shifts to something wonderfully parched — a face that makes you laugh and reach for the watering can at the same time. Give it water and watch the expression melt into relief in real time.

Fyto - Thirsty
Fyto - Thirsty

Hot

It's getting warm. Fyto looks flushed and a little dramatic about it, the way we all feel on a sweltering afternoon. A gentle nudge to find a cooler spot — your plant will be happier for it.

Fyto - Hot
Fyto - Hot

Freeze

Too cold, and Fyto lets you know with a shivering, bundled-up expression. Cozy and expressive. Your plant would love a warmer corner.

Fyto - Freeze
Fyto - Freeze

Sleepy

Low light means low energy. Fyto yawns — droopy eyes, a long blink, thoroughly drowsy. It's genuinely adorable. Move Fyto somewhere the sun can reach and watch it wake right up.

Fyto - Sleepy
Fyto - Sleepy

Pampered

You stopped. You noticed. You reached out and gave your plant a moment of attention — and Fyto responds the way any pet would. Hearts. Wide eyes. Pure, uncomplicated joy.

Fyto - Pampered
Fyto - Pampered


Different animations cycle randomly, so every time you pamper your plant it feels a little different. This is the moment the whole product is built around — the same instinct that makes you scratch behind a cat's ears or ruffle a dog's fur. Your plant deserves that too. Now it can tell you it does.

Priority System

When your plant has more than one thing on its mind, Fyto stays calm and shows the most important thing first:

  1. Water Empty - shows first
  2. Thirsty - high priority
  3. Hot - medium priority
  4. Cold - medium priority
  5. Dark - lower priority
  6. Touch - overrides everything temporarily when you interact

One clear message at a time.

What Changed

The first Fyto ran on a Raspberry Pi Zero 2W with 3 sensors, an external ADC, and a rectangular LCD — wired together on a breadboard with a soldering iron.

The new Fyto replaces all of that. An ESP32-S3 handles everything the Pi did at a fraction of the power, with no external ADC needed. Sensors went from 3 to 6 — adding humidity, water level, and touch. The rectangular screen became a round IPS display. The breadboard became a proper PCB with JST connectors. And configuration that used to mean editing code
now happens through a serial menu.

Same soul. Everything else, rebuilt from scratch.

The Brain: ESP32-S3

We moved from the Raspberry Pi Zero 2W to the ESP32-S3. Here's why.

The Pi Zero was a full Linux computer running Python to read three sensors and play GIFs. It worked, but it was like using a pickup truck to deliver a letter. The ESP32-S3 is purpose-built for this kind of work — a dual-core 240MHz processor with 8MB of PSRAM, built-in WiFi, native analog-to-digital converters (no external ADC needed), and it sips less power compared to a Pi.

ESP32S3
ESP32S3

The ESP32-S3 handles GIF playback on the round display, reads all six sensors simultaneously using FreeRTOS tasks, runs a full serial configuration menu, publishes data over MQTT, and still has headroom to spare. It boots in under a second. The Pi took 30-40 seconds.

It's also cheaper, smaller, and more reliable for an always-on device sitting next to your plant. No SD card corruption. No kernel panics. No OS updates breaking your plant monitor at 2 AM.

Key specs:

  • Dual-core Xtensa LX7 @ 240 MHz- 8 MB PSRAM
  • Built-in WiFi (802.11 b/g/n)
  • Native ADC (no external converter needed)
  • USB-C for power and programming
  • FreeRTOS multitasking (6 concurrent tasks: display, sensors, touch, state, menu, MQTT)

The Senses

Fyto has six senses — each one telling a different part of your plant's story. Every sensor connects to the PCB via JST connectors. No soldering, no guessing which wire goes where.

Soil Moisture - Capacitive Sensor

Moisture Sensor - PCB
Moisture Sensor - PCB
  • What it does: Measures how much water is in your soil.
  • Why capacitive: Most cheap sensors use resistive moisture sensing — two exposed metal probes that corrode within weeks. Capacitive sensors measure moisture through changes in capacitance, not direct electrical contact with wet soil. No exposed metal, no corrosion, and they last years instead of months.
    Our sensor uses a TLC555-based circuit for stable, accurate readings. The firmware maps raw ADC values to a clean 0-100% scale after calibration — dry to soaking wet.
  • What your plant tells you: "I'm thirsty" (below dry threshold) or "I'm happy" (moisture in the sweet spot).

Temperature and Humidity - AHT20

AHT20 - Temperature and Humidity Sensor
AHT20 - Temperature and Humidity Sensor
  • What it does: Measures air temperature (in Celsius) and relative humidity around your plant.
  • Why AHT20: It's a high-precision digital sensor on the I2C bus — one chip gives us both temperature and humidity with no analog noise, no calibration drift, and no extra wiring. Temperature accuracy is +-0.3 degrees Celsius, humidity accuracy is +-2%.
  • What your plant tells you: "I'm too hot" (above hot threshold), "I'm freezing" (below cold threshold), or nothing — because comfortable plants don't complain about temperature.

Light - LDR Photoresistor

LDR
LDR
  • What it does: Measures ambient light intensity on a 0-100% scale.
  • Why it matters: Light is photosynthesis. Too little and your plant starves. This sensor does double duty — it drives the "sleepy" emotion when light is too low for your plant, AND it controls auto-brightness on the display so it dims at night and brightens during the day. One sensor, two jobs.
    The firmware lets you calibrate it independently for both purposes: a sleep threshold (when should your plant complain about darkness?) and an auto-brightness range (min/max display brightness based on ambient light).
  • What your plant tells you:"I'm sleepy" — move me somewhere brighter.

Water Level - Conductivity Probe

Water Level JST
Water Level JST
  • What it does: Detects whether there's water in the reservoir.
  • How it works: A simple conductivity probe with an S8050 transistor circuit. Water conducts; air doesn't. This is a digital yes/no reading — there's water, or there isn't.
  • What your plant tells you: "My water is empty" — this triggers the highest-priority alert because an empty reservoir means your plant will be thirsty very soon.

Touch - TTP223 Capacitive Touch

Touch Pad
Touch Pad
  • What it does: This is the pampering sensor. The one that closes the feedback loop.
    Every other sensor tells you what your plant needs from you. This one lets you give something back — and lets your plant respond to it. Touch Fyto and it reacts with immediate joy. Hearts. Wide eyes. The same instinct that makes you reach for a cat or ruffle a dog translated into a plant interaction.
  • How it works: The TTP223 is a capacitive touch module — no mechanical button, no moving parts, nothing to wear out. Touch the sensor area (or connect a copper tape to the body and then connect it to touch pads) and Fyto's expression changes instantly. Configurable sensitivity and debounce mean it responds to intentional touches, not brushes.

The firmware also supports the ESP32-S3's native touch pins if you want to integrate pampering directly into the enclosure surface itself — so the whole pot becomes something you interact with.

The Face - 1.28" Round IPS Display

IPS Display
IPS Display
IPS Display - Back
IPS Display - Back

The display is where Fyto's personality lives. It's a 1.28-inch round IPS panel running at 240x240 pixels with a GC9A01 controller — the same type of display you'd find in a quality smartwatch.

  • Why IPS: Wide viewing angles (you can see the expression from across the room), accurate colors, and high contrast. The GIF animations look crisp and vibrant at any angle.
  • The animation system: Fyto plays full-color animated GIFs at 240x240 resolution using the LovyanGFX library. Eight unique animations are stored in flash memory and triggered by sensor states. Transitions between emotions can be instant, fade, slide, or dissolve — configurable through the serial menu.
  • Auto-brightness: The display automatically adjusts brightness based on the LDR light sensor. Bright room? Full brightness. Bedside table at night? Dims down to a gentle glow. You set the min and max brightness percentages, and Fyto handles the rest. No waking up to a blazing screen at 3 AM.

The PCB

This is the biggest upgrade from the first Fyto.

PCB
PCB

The original was a tangle of jumper wires, a breadboard, double-sided tape, and hope. It worked on our desk, but asking someone else to recreate that wiring was a lot to ask — and we know, because the community told us.

The new Fyto has a purpose-built PCB. Every component has its place. Every sensor connects through a JST connector — plug it in, hear the click, done. No soldering iron required for assembly. No wiring diagrams to decode.

What's on the board:

  • ESP32-S3 module
  • GC9A01 round display connector
  • AHT20 temperature/humidity sensor header
  • Capacitive soil moisture sensor connector
  • LDR light sensor connector
  • Water level probe connector
  • TTP223 touch sensor connector
  • USB-C port for power and programming
  • All sensor connections are JST connectors that only go in one way

The Enclosure

The enclosure is designed around one idea — Fyto should look like a companion, not a gadget. The round display sits flush at the front, the sensors are positioned to actually read the environment, and the whole thing fits around a standard small pot.

Outer Pot
Outer Pot
Inner Pot
Inner Pot

It's 3D printed in PLA. Three parts: the outer shell, the base, and the inner container that holds your plant. Everything slots together without screws — the tolerances are designed to hold firm once assembled.
The STL files are fully open source. Print it as designed, scale it up for a bigger plant, change the material, add your own cutouts — it's yours to do with as you like.

If you design a better enclosure, share it. The best remixes will be featured in the community.

Firmware and Configuration

Fyto runs custom firmware on the ESP32-S3. Everything is configurable through a serial menu — and you have two ways to access it.

  • From a serial terminal: Connect via USB-C, open any serial terminal at 115200 baud, type `menu`, and you're in. No coding required. No IDE. No compiling. Just a text menu.
  • From the dashboard: Plug Fyto into your computer via USB-C and open the dashboard in a Chrome or Edge browser. The dashboard uses WebSerial to connect directly to Fyto — the same full serial menu, right inside your browser. No separate terminal app, no setup. This is the recommended way for most people.

Plant Profiles

You can create up to 10 plant profiles with different thresholds. A succulent and a fern have very different needs - set Fyto up to understand each one.
Each profile stores:

  • Plant name
  • Soil moisture thresholds (dry/wet percentages)
  • Temperature thresholds (cold/hot in Celsius)
  • Light threshold (when to show the sleepy emoji)
  • Water level threshold

Switch between profiles from the menu. If you move Fyto to a different plant, switch the profile and the thresholds update instantly.

Sensor Calibration

Every environment is different. Calibration teaches Fyto what "dry" and "wet" mean for your specific soil, and what "dark" and "bright" mean in your room.

  • Soil moisture: Place the sensor in completely dry soil, press enter. Place it in soaking wet soil, press enter. Done.
  • Light sensor: Cover the sensor completely (darkness), press enter. Expose it to the brightest light in the room, press enter. Done.

Calibration values are stored in flash memory — they survive power cycles and firmware updates.

Display Settings

From the menu, you can configure:

  • Transition effects between emotions: fade, slide, dissolve, or instant
  • Display duration for each animation (default: 2 seconds)
  • Priority mode: show only the highest-priority emotion, or cycle through all active states
  • Boot screen: show an animation, an image, or nothing on startup
  • Auto-brightness: enable/disable, set min/max brightness range

WiFi and MQTT

Fyto can optionally connect to WiFi and publish sensor data over MQTT. This is disabled by default — your plant monitor works fully offline, no internet needed.

When enabled, Fyto publishes to these MQTT topics:

  • fyto/{device-mac}/sensors → moisture, temperature, humidity, light, water level
  • fyto/{device-mac}/status → online status, firmware version, uptime
  • fyto/{device-mac}/mood → current emotion

Configure WiFi credentials and MQTT broker address through the serial menu. This is how Fyto talks to the dashboard.

The Dashboard

When you connect Fyto to WiFi, your sensor data flows to a web dashboard where you can monitor your plants from anywhere — not just glance at an expression, but understand the full picture of their health over time.

Dashboard
Dashboard

What you see:

  • Real-time sensor gauges (moisture, temperature, humidity, light)
  • Mood timeline - a history of how your plant has been feeling
  • Sensor charts - trends over hours, days, weeks
  • Comfort score - an at-a-glance health rating
  • Alerts - notifications when thresholds are crossed
  • Multi-plant support - monitor all your Fytos from one screen

AI Diagnostics

The dashboard includes AI-powered plant diagnostics. When something seems off — unusual sensor patterns, a mood that won't clear, readings outside the normal range — you can run a diagnosis. The AI analyzes your plant's data and gives you a plain-language read on what's happening and what to do about it. Not a generic care tip. Actual insight based on your plant's specific readings and history.

Think of it as a vet visit for your plant, available whenever you need it.

How it works: Fyto publishes sensor data over MQTT. A bridge service picks it up, stores it in a database, and pushes real-time updates to the web dashboard via WebSocket. You open a browser, see your plants.
The dashboard works out of the box with our hosted service — connect your Fyto to WiFi, point it at our MQTT broker, and your dashboard is live. No server setup, no Docker, no command line.

Community

Fyto started as a community project and it stays that way.

The firmware, PCB files, and 3D enclosure files are all open source. Fork it, mod it, improve it, make it yours. If you design a better enclosure, we want to see it. If you add a new sensor, tell us about it. If you write a Home Assistant integration, the community will love you.

Links:

Fyto Prototype on Hackster.io - where it all started

GitHub - source code, hardware files, issues

YouTube - build videos and demos

Built with ❤️ by the CodersCafe team. Backed by a community that turns plants into pets.