# PCB v1.2 # I made tons of updates to the printed circuit board design. * I added another soil moisture sensor * Removed the Arduino in favor of a cheaper ADC chip that communicates over SPI * Added a resistor to the Water Enable line to limit current to the TIP120. (doesn't like lots of current) * Added a rather large 16 pin 2x8 headers so wires aren't spread out. Maybe I can use a ribbon here. * Added analog signal test points via vias. (maybe I can find a test pad) * Lots of silkscreen text to help identify parts and connections https://circuits.io/circuits/3494886-auto-garden-v1-2
..is a Frankenstein monster of a contraption, but it works! Went on vacation for 2 weeks and carrots are well fed and continue to grow fine without any intervention. They should be ready in about 23 days. What to do with all that time...
Version 2!
I'll make another setup, and try to make it more efficient and compact. I want herbs to cook with, so I needed another setup anyway.
I've got a better grow lamp that will provide more distributed light and I'm looking for a smaller water container. 5 gallons is too much. I'm also debating on keeping the wire rack shelving. And I've got to move all the sensors to the soil level for more accurate readings. (currently the temp and light sensor are above, with the Raspberry Pi and Arduino) I want to change quite a bit, but the irrigation system works great and doesn't need to be changed.
This time, we'll grow basil, chives, cilantro, parsley and rosemary. Time to get planning.
A day in the shop, working on the Auto-Garden. 12/08/2016
Moved the breadboard components to a perma-proto board. Added another soil moisture sensor - so there’s 2 now. One will live under the soil and one will be pressed down on the soil bed. I also coated the sensor with Silicone Conformal Coating to protect the circuitry from corrosion and water damage.
Today, I’ll be adding the soil and sowing carrot seeds! Let the growing begin!
I think the hardware part is pretty solid, so I started drafting up a PCB. It’s time to start moving away from the trusty breadboard and make my first silicon board.
The board is using a top layer and a copper layer for the Ground. It has all the sensors (and connectors for the soil sensor) that I need. It has the 12v source and power transistor to switch on the solenoid valve.
Here’s the schematic.
This is my first time making an original design. There’s lots of isolated pieces here, but on the board it looks pretty fluid and together. That was pretty surprising to me.
It’s pretty fun designing the board and it was relatively easy thanks to circuits.io.
Here’s the link to the design: https://circuits.io/circuits/3426362-auto-garden-v1-0
And I went ahead and ordered 3! I went to oshpark.com and they made it really easy. I uploaded the Zip file from circuits.io to Oshpark’s website and they took care of the rest. Here’s a render of what it might come out looking like.
Plants need light to grow. (duh) But, it might be a problem when growing plants indoors. Some light will come in through the windows, but it might not be enough. So, I bought a 60w grow light form the local nursery.
I just need to switch it on when the plant needs more light - as a supplement to the natural light coming in from the windows. I put the potted planter in our sun room which has lots and lots of windows and catches the early morning sunshine. Hopefully that will help.
I also bought a AC Control Relay from Adafruit (link) that will let me switch on and off the grow light from the Arduino. (or Raspberry Pi I guess, if needed) But I’ll wire that part up later. For now, I’ve gotta figure out how to track how much light our delicate plant is getting.
My first option was to go with SparkFun’s UV Sensor (link), but that only looks at a pretty narrow range of the spectrum. (280-390nm light)
A quick Google search and Wikipedia (link) tells me plants grow from light in the 400-700nm range. That UV Sensor won’t work so good for this.
I also picked up a handful of Mini Photocells from SparkFun (link) too. The datasheet for these says it reacts to light in the 400-700+nm range, so that looks like my best bet! And these are much cheaper than the UV Sensor too, so... bonus.
Wired it up and let it loose! Now I’m tracking ambient light in Ohms. That should give me a clearer picture of everything I need to make decisions on how to best maintain my plants.
It’s dark now so the light readings (in Ohms, last column) are really high. High = Dark; Low = Light.
Let’s let it collect some data over the next 24 hours and see how it turns out. Tomorrow’s forecast?
Rain showers early with some sunshine later in the day.
Sunrise: 6:54 am
Sunset: 4:39 pm
I’ve never been any good at keeping plants alive. Whenever I went out of town for a week or so, all my potted herbs would die. They’d shrivel up from lack of watering and I’d never get the satisfaction of using what I could grow. That’s the challenge.
Can I throw technology at this? Let’s try!
The simple idea is to make some kind of system that will manage my home garden autonomously. So when I go out of town, they don’t die. Simple enough, right?
The grand idea is to eventually create a kit or setup that the general populous can use to do all this in their own home without a ton of effort. Everyone deserves fresh food, but no one wants to be a farmer and tend to their garden 3 hours a day to maintain it. Ideally, this system would maintain it for you so you can have a career, a life and enjoy home grown food and the many benefits that come with it.
As I write this, Columbo is on TV. I know, it’s an old show, but it’s fun to watch. He’s a deceptively smart guy, who’s curious and has to solve challenges every episode.
In this episode, we’ll get started with an Arduino, Raspberry Pi and a SparkFun Soil Moisture Sensor. We’re going to start simple.
I need to understand what the soil moisture measurements mean and how it can tell me when the soil is ready for watering. Let’s start at the beginning, with the physical sensor and the ADC conversion.
The Arduino I’m using (a Duemilanove) has 10 bit ADC converters. So that gives me a theoretical range of 2^10 (0-1023).
So what does this mean? I don’t know! Let’s use the sensor in some tests to see how it performs and what numbers actually come back.
The Arduino takes sensor readings every 60 seconds, and reports back to the Raspberry Pi. The Pi records the date-tme and the data from the Arduino and organizes the output in a CSV file that Excel or Numbers can view.
Here’s the setup:
The experiment consisted of a saturated paper towel, wrapped around the sensor. Data was recorded overnight. Here are the results.
The results range from 0 to 700. I’m not sure why it didn’t start out higher than 700.
This was just a test with a wet paper towel. The next steps are to research appropriate moisture content for soil, and to take readings on various stages of soil moisture. Then come up with some numeric definitions of Wet, Fair and Dry soil.
That’s all for this episode. I’ll report back with test results with actual soil and next steps.
Here’s the link to GitHub Repository.
Don’t forget to eat your veggies... and support your local farms and co-ops. :)
Hello, I got very interested on making the Gemma with the heartbeat, could you please provide the code changes you had done to work with the pulse sensor's code? Thank You!!
Hey! I have the code, let me add it to a github.com repository so I can share it. I’ll reply to this message and update the original post. Thanks for your interest.
Made out of Olive wood, cut with a band saw and laser engraved with my buddy’s initials.
Some slices had cracks so I filled them up with some epoxy. What good is a coaster that lets liquid seep through it?
Sliced with a band saw, filled with epoxy and sanded to high heaven with 40 to 220 grit. Laser engraved initials onto them and coated with wood finish and clear coat.
This may be the last year I’m in Vegas, so in honor of good Old Las Vegas, we will be Vegas Vic and Vegas Vicki; two of the most iconic neon signs in LV history!