Close
0%
0%

OPEN - Open Propagator with an Extensible Network

A open source and cost conscious take on a connected plant propagator for monitoring, fun and ..propagation!

Similar projects worth following
The OPEN will be a connected plant propagator with all the luxuries of passive watering and active heating for better root growth. The initial project focus will be on developing a leaf node which will be responsible for keeping the plants at a constant user definable temperature in the optimal range for plant germination and root growth. In addition each leaf node will report back to a stem node which will allow connection in a IoT manner for monitoring, data logging and warnings. The leaf nodes will be Arduino compatible and the trunk node will start as a raspberry pi with internet access.

I want to keep the project as cheap and accessible as possible to encourage study in electronics, biology and science in general. Hence the use of widely available Soda/Cola bottles.
I hope that in sharing this project with a wider audience it will propagate ideas, openness and even broaden tinkerers horizons to experimentation with plants and the outside world! ;p

System Overview

Leaf Nodes

The leaf nodes will have several capabilities:

  • Air, Soil and Humidity Sensing
  • Temperature regulation
  • Water level monitoring
  • Light sensing
  • Slaves on a larger network for logging

In addition It would be nice to have the option of a single node and a way to configure it to keep associated costs low.

Read more »

  • 1 × 5 Ohm PCB heater A purpose designed PCB used for heating the soil
  • 1 × DHT11 Humidity/Temperature sensor
  • 2 × 2 Litre generic drinks bottle Propagator housing
  • 1 × Cloth passive watering system
  • 1 × TMP36 Sensors / Temperature, Thermal

View all 6 components

  • Soil/Heater Test Update

    Darren Blaxcell, aka Pork08/19/2014 at 00:23 0 comments

    Just finished testing the soil heater, after three hours given the temperature constraint on the heater of 40C the overall soil temp is around 30C. A relative rise of 5 to 7 degrees C given room temperature has been between 23C and 25C. To conclude, more power may be needed. And here is a pretty graph! 

  • Building a Bottle Propagator, Electronics or Otherwise!

    Darren Blaxcell, aka Pork08/18/2014 at 22:04 0 comments

    Part of the goal of my project is to make a cheap alternative to propagators commercially available and use waste materials, thus an important part of the project is the propagator itself. Bottle propagators are tried and true and inspiration was drawn from all over the web. Here is my take on a bottle propagator, you will need: 

    • Scissors/Knife
    • Two bottles, the same size but not necessarily 2L variant
    • Cloth
    • Soil (preferably fine compost for seeds/cuttings)
    • Water
    • Some seeds, you know, to grow!

    The electronics are extra and can be skipped for an ordinary unheated propagator.

    Tie a knot in one end of the cloth and pull it into the neck of the bottle:

    Fill one bottom half  with water and push the top half with cloth into it, place a small amount of soil on top of the cloth to hold it down evenly:

    ELECTRONIC STEP, place the heater on top of the soil and the heater temperature sensor close by:

    Fill with soil to a depth of about 50mm, add seeds or another sensor in my case:

    Cap off with another top half of a bottle and your done, one bottle propagator: 

  • Closing the loop, bang bang!

    Darren Blaxcell, aka Pork08/18/2014 at 21:21 0 comments

    Back again with some form of control for my soil heater and some test results, graphs yay! 

    This bit of scribble outlines the basic testing setup with two temperature sensors, one on top, one on the heater. The mosfet and heater is fed from a separate 5V supply and switched by pin 13 on the Uno.

    The graph below shows some promising results, the heater temperature was limited to 40C and the soil temp to 30C, after about 800 seconds the heater could start to back off and just maintain a constant soil temp of 30C.

    The graph above is still very noisy, so I set out to change the voltage reverence for the analogue to digital conversions to the quieter 3.3V. In addition I added some decoupling close to the tmp36 sensors.

    The code was re-arranged to provide the needed temperature control and ADC settling time (apparently the atmegas ADC is multiplexed and needs time to settle in-between samples).

    /*
     * initialize the serial connection
     */
    void setup()
    {
      Serial.begin(9600);  //Start the serial connection 
                           //to view the temperature open the serial monitor
      analogReference(EXTERNAL);
      pinMode(12, OUTPUT);
    }
    int twoSeconds = 0; 
    void loop() 
    {
     //getting the voltage reading from the temperature sensor
     analogRead(0);
     delay(1000);
     int reading1  = analogRead(0);
     analogRead(1);
     delay(1000);
     int reading2  = analogRead(1); 
    //conversion from reading to voltage
     float voltage1 = reading1 * 3.3;
     voltage1 /= 1024.0; 
     //converting from 10 mv per degree with 500 mV offset
     float temp1 = (voltage1 - 0.5) * 100 ;  
     
     float voltage2 = reading2 * 3.3;
     voltage2 /= 1024.0; 
     float temp2 = (voltage2 - 0.5) * 100 ;
     twoSeconds++;
     //comma separated output
     Serial.print(twoSeconds);Serial.print(" , ");
     Serial.print(temp1);Serial.print(" , ");
     Serial.print(temp2);Serial.print("\n");
     
     if(temp1 < 30){
       if(temp2 > 40){
        digitalWrite(12, LOW); 
       }
       else{
         digitalWrite(12, HIGH);
       }
     }
     else{
       digitalWrite(12, LOW);
     }
    }

    Here is another graph with the temperature sensors output swing halved. Clearly showing the measures taken to reduce the power supply noise and allowances for ADC settling time having a positive effect.

  • Quick and Dirty Heater Testing

    Darren Blaxcell, aka Pork08/17/2014 at 12:17 0 comments

    Instead of calculating the time taken to heat a mass of soil, I opted for a real world test. In order to test the capability of the 5W PCB heater two TMP36 temperature sensors were used in conjunction with a Arduino Uno and minimal serial output. Adafruit has a nice overview of how to use the TMP 35/36 series of temperature sensors at:  

    https://learn.adafruit.com/tmp36-temperature-sensor

    Again taking from the simple examples at Adafruit a simple comma separated values stream was created for viewing in the serial monitor. The analogue pins of the TMP36 were wired to AN0 and AN1.

    Code Snippet:

    /*
     * initialize the serial connection
     */
    void setup()
    {
      Serial.begin(9600);  //Start the serial connection 
                           //to view the temperature open the serial monitor
    }
    int twoSeconds = 0; 
    void loop() 
    {
     //getting the voltage reading from the temperature sensor
     int reading1  = analogRead(0);  
     int reading2  = analogRead(1); 
    //conversion from reading to voltage
     float voltage1 = reading1 * 5.0;
     voltage1 /= 1024.0; 
     //converting from 10 mv per degree with 500 mV offset
     float temp1 = (voltage1 - 0.5) * 100 ;  
     
     float voltage2 = reading2 * 5.0;
     voltage2 /= 1024.0; 
     float temp2 = (voltage2 - 0.5) * 100 ;
     twoSeconds++;
     //comma separated output
     Serial.print(twoSeconds);Serial.print(" , ");
     Serial.print(temp1);Serial.print(" , ");
     Serial.print(temp2);Serial.print("\n");
     //waiting a 2 seconds
     delay(2000);                  
    }

    The PCB heater was then provided with 5V giving a power dissipation of around 5W. No feedback is given at this stage to the heating element, just open loop at 5W. The heater was placed under ~40mm of soil with one sensor directly attached to the heater and the other on top of the soil. The picture below gives away my plans for a low cost propagator housing with universal availability and passive watering. 

    The bottle steamed up nicely as the heat increased inside.

    After copying the serial monitor output of the Arduino IDE to a text file and importing it into a spreadsheet this graph was generated.

    At this early stage a 5W heater is looking feasible to heat around 450g of moist soil or potting compound within an hour or two. The heater temperature is too high currently an will have to be reigned in with some basic bang bang feedback which will slow the heating of the soil down but create a better environment for the plants root system overall. At around 40 minutes I moved soil temperature probe to a distance of ~50mm from the heater hence the transient.

    Next up, really simple bang bang control and closing the loop!

  • PCB Heater

    Darren Blaxcell, aka Pork08/16/2014 at 20:38 0 comments

    In order to implement a low cost heating element that could be made widely available inspiration was taken from heated printer beds. A PCB heater can be made for very little at a Chinese fab house. To start with some calculations were done to determine the length of trace needed to get roughly 1 Ohm.

    Resistance = Resistivity × Length/Area

    Resistance= 16.8n × 0.5/(35μ × 0.25m)= 960m ≈ 1 Ohm

    Where Resistivity is in ohm meters, Length in meters, Area (Copper Thickness × PCB Trace Width) in m^2.

    The trace width was based on a 0.25mm trace width which is safely above most fab houses 8 mil trace width constraints.

    The photosensitive board was exposed and developed.

    Then etched in a warm bath of FeCl, as a sanity check I always pull the board from the acid to make sure all the areas that are unmasked have gone a nice red color.

    Etching went well and I ended up with the board below ready for some 'testing'

    After measuring the resistance of each section of 10 x 5cm = 0.5m they were all around 1 Ohm, not bad. All the sections were joined together (I should have done it from the beginning, fail!) 5 Volts was applied to the terminals and the heater warmed up such that it was hot to the touch, success! 

    Next I plan to get a sample of soil in my propagator with a temperature sensor and determine the length of time it will take to heat given it cant kill the plant.

View all 5 project logs

  • 1
    Step 1

    hmm?

View all instructions

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates