Garduino
========
Components
- Moisture sensor
- Humidity and Temperature (DHT11) - see the Arduino libraries folder, then dht and there is an exmaple of how to use it
- Light (LDR) -
Build
In the root folder of the project run:
ino build
Build and install to my Arduino pro mini:
ino build -m pro5v328
ino upload -m pro5v328
Debug
If the build gives errors try to run:
ino clean
ino build
Todo
- If temperature is above X water every x time (cycles)
- Plant profiles for optimized growing of specific herbs
- dht.getStatusString() returns TIMEOUT when connection problem and OK when connection is working. Maybe check for these values
- Water level sensor for the reservoir
- Add pH sensor
- Button to force start watering
- Add status lights for pump (in a later stage maybe switch to a rgb led or something that can represent the health of the plant)
- Add solar panel to power the arduino
- Buy water proof box for the electronics
- Maybe use interrupts for button based actions so we can use a slow main loop that only checks sensors each 30 seconds or so (more energy efficient). The buttons can then be directly handled when pushed.
- Use bandgap to detect low battery (see Interesting read), also see this for a code example
- Run from batteries instead of PSU
- Instead of the pump directly watering the plants use pump to pump water up in a higher places tube and then use electrical valves to water/drip the plants by opening a valve. This way you can make an extra container that contains extra nutritions that will be added a bit to the main container.
- Add rain sensor and if it rains you can give the plants less water
Optimal watering schedule
- Early morning when it's colder and there is less wind less of the water will evaporate.
- Do no wet the leaves
- Add rain sensor and if it rains you can give the plants less water
Interesting read
- Microcontroller assisted gardening
- pH levels for herbs
- Change pH level of soil
- Standalone Atmega
- Command line build and upload your Arduino project with ino
- Quick start with ino
- Multithreading
- Arduino libray list
- Interrupts
- REST interface for reading out sensor information
- Use bandgap to detect low battery
- Article about power saving
- Self sufficient arduino board with solar panel
Test
- Standard soil (bag) moistre reading => 126 (DX sensor)
- Wet soil (bag) moistre reading => 74 (DX sensor) => I think check each day is enough and then only water if level is above 100
- Light reading in room clouded day => 400
- Standard soil (bag) moisture reading => 450 (home made board and nails)
- Wet soil (bag) moisture reading => 350/360, very wet 300 (home made board and nails)
- Really dry soil moisture reading => 530 (home made board and nails)