Plant sensor by a non hardware engineer pt1

0xksure
4 min readMar 15, 2025

--

I’ve been building all kinds of software for several years. Backend and frontend. Some small MVPs, other larger projects. But never hardware!

Photo by Sonnie Hiles on Unsplash

A lot of interesting problems are in the physical world. One of these problems is how to take care of my plants.

Problem

Plants are expensive, and plants require different care. I would like to have nice plants to look at without having it as a dedicated hobby. I prioritize other hobbies, like…learning how to build hardware products.

Plants are expensive, and plants require different care.

Solution

A “simple” plant sensor that measures soil moisture, temperature, humidity and sunlight. The device should be cheap and according to user feedback, it should be discrete.

Problem 2

I have no experience with building hardware products.

Solution 2

“You can just do things.” seems to be the motto these days and surprisingly true. With better and better LLMs, it’s easier than ever to learn and apply new knowledge.

As you might have noticed, the article is a pt1. That’s because I’ve realized that starting from 0 and going to a real hardware product requires more than one part. This part is all about starting from scratch

The start

Like I’ve mentioned, this is my first ever hardware project, so to begin with, I had to get to a minimum level of electronics.

I had to get to a minimum level of electronics.

I also have some technical requirements, namely

  • The sensor should send data over wifi for great UX
  • Battery should be rechargeable, but not required to be charged often
  • Physical lights indicate that the plant needs care.
  • Easy setup.
  • An app where you can dig into the statistics.

Arduino

I, as so many, started with a simple arduino one kit. I learned about transistors, sensors, capacitors, resistors, and how to program an arduino. This allowed me to create a basic circuit for testing my idea. But it was not enough to create a temporary plant sensor and it looked really ugly.

A small soil sensor demo with an esp8266

Solder or PCB

The next step is usually to create a working demo by soldering. Now, I don’t have any experience with soldering, and I wasn’t even sure if my circuit was good enough. This led me to find a program to draw the circuit in.

KiCad, Flux, and back

KiCad is an open-source tool for drawing circuits digitally, designing the PCB (printed circuit board), and storing the bill of materials. But, the UI is not especially nice, plus I didn’t know how to approach the problem. Luckily, some companies have started creating KiCad clones powered by AI.

I discovered Flux pretty fast and got up to speed quickly. However, their AI offer was really weak, maybe chatgpt 3.5 level intelligence and the inference took forever. Instead, I used Sonnet 3.7 by screenshotting the circuit. This worked really well.

The next step was designing the PCB. It isn’t easy to design the shape in Flux. Instead you should design it externally and import it into Flux.

So now I’m back to KiCad because it allows me to design the PCB shape plus I’m more knowledgeable of how to use such a tool.

Finished circuit

Thanks to claude. I have a now more or less working circuit. I’ve ordered the parts and am waiting for them to arrive. The next step is to test the circuit on a breadboard and maybe solder a bit. This will be my first feedback cycle: update circuit -> create circuit -> update circuit.

If everything works fine, I will continue with the PCB design. I hope Claude is as good at PCB layout as it was circuit scheming.

Circuit in Flux that is now the basis for the next bread board demo

Enclosure

I have to design something around the PCB so it looks like a real product. For this, I will export the PCB as a 3d to onshape. This will allow me to design a box that will fit the PCB perfectly. To begin with, the plan is to print the box using a 3d printer.

Components

Here are the parts that I’m currently considering

  • ESP32 VROOM D32 SoC — I choose a system on a chip controller so I don’t have to have separate flash memory and wifi or bluetooth modules.
  • LiPo battery — 1200mAh 3.7v battery will keep this thing alive for a long time
  • TP4056 battery charger — The user can charge and even power the sensor through usb-c
  • USB-C module
  • AMS1117–3.3 voltage regulator — 3.7v from the battery needs to be converted to 3.3v to the ESP32
  • Light dependent resistor — allows electricity through depending on light
  • HDC2080DMBR — humidity and temperature sensor
  • A lot of capacitators and resistors

Conclusion

This is a crazy project for someone who has no experience with electronics.

Additionally, this product already exists, although some of the products are not really great.

I’m bot doing this to create something new or unique. I’m doing it for the learning and how fun it is. However, I will still aim to make it the best product for me. Either in 2025 or 2026.

--

--

0xksure
0xksure

Written by 0xksure

Developer and Mathematician

No responses yet