-
Plant update
06/14/2017 at 20:31 • 0 commentsI posted two photos of the current setup. Thanks to the esp8266 sketch I noticed that the plants were getting far too hot so I adjusted by opening the window during the day. This dropped the temperature down by 5 degree's from 30 to around 25-26 degrees.
Compare this to the red/orange plant tray. The lettuce in that container died as a result of being too hot during the day which likely promoted fungal growth/root rot.
I've also eliminated the use of the clear plastic tray covers to try to avoid containing heat within the planters.
If this batch goes well, I should have edible lettuce in approximately six weeks.
Which brings me to my plans for a few revisions to Phase II:
- Add a gold-plated capacitive soil moisture probe to the agi-esp8266 prototype (Looking at DFRobot for that)
- Integrate a water reservoir to both cool the plant soil in the hot sun during the day as well as water the plants.
- Integrate Homie-ESP8266 with contributions to the project for the various plant sensors OR integrating Arduino OTA updates and a default wireless AP mode for configuring the esp8266 uC.
In the final setup in the desired arctic window conditions, a reservoir would likely serve the opposite effect of warming the soil by getting the plants up to room temperature and/or passively warming the soil by using bleedoff heat from a nearby heated air vent or a nearby radiator. Keeping the soil warm will likely be more effective than attempting to warm the entire plant from residual air temperature. An actual implemented system down the road will be the ultimate test of that. So, that will likely be a testing parameter for Phase III. -
Rabbit hole
06/07/2017 at 19:46 • 0 commentsHowdy folks,
After a bit of thought it seems that it will take more than just a wirelessly accessible set of sensors to grow plants on window sills in the arctic.
Basically, the issue as it exists now is the plants I am growing need to be cooled and temperature controlled. The opposite principle applies for a setup in the north. The setup will need a way of heating the plant environment to stay within an acceptable range for promoting plant growth whilst inhibiting fungal and bacterial growth.
After a bit of thinking last night, a solution involving the use of water for it's excellent thermal transfer properties was obvious. After a quick bit of research, it is the roots of plants that need to be kept warm or cool which makes the task a bit easier.
First, let's operate on the assumption that most homes in the Canadian North use one of two technologies for heating, forced air heating or thermal fluid heating systems. If a small water reservoir was added near an air duct or heat vent it would serve the purpose nicely.
Passively heating water to room temperature then pumping it through tubing placed under the planters seems like an ideal solution. The opposite principle would apply anywhere warm, circulating comparatively cool water at room temperature to plants on a hot window sill would prevent plants from bolting too soon and/or dying due to fungal soil growth caused by higher temperatures.
Since we are already going to the trouble of adding a heat exchanger, we may as well also add a system to automatically water the plants too. Plants also tend to have a wide variety of optimal growth conditions, and incorporating those as presets into the final microcontroller system would be an obvious benefit.
All of this means the scope of the final system configuration changes a bit, from a simple planter and sensor setup into a slightly larger setup involving tubes, pumps and self-watering system. -
Lactuca Sativa
06/06/2017 at 20:25 • 0 commentsH'okay, so I have a bit of a theory on why my lettuce died:
After looking at the sensor logs, a pattern I noticed is that the average temperature for the seeds was between 23-30 degrees celsius. The ideal temperature for lettuce seedlings is actually 16 to 21 degrees. So there's a bit of an issue there.
To mitigate that as a possible cause with the next test batch, I will likely leave the window open a bit to encourage slight cooling during the day to acceptable levels.
On that note, I will likely need to think of solutions for a window sill deployments up north. The window setup will likely need a temperature/humidity controlled environment -
Progress Report
06/06/2017 at 19:49 • 0 commentsSoil Moisture Sensor(s):
- Currently researching available options. Corrosion resistance seems to be pretty important as several soil moisture probes available seem to oxidize too quickly to be usable long term. Suggested course of action involve's performing DIY unit testing with an Arduino microcontroller and various soil mock-ups. Will follow up with a post about this specifically once various soil moisture experiments can be conducted.
Native Clients for WIndows/Mac OS X/Linux:
- Currently working on Linux-based approach using Mosquitto and Raspbian. Setup as-is currently dumping MQTT sensor data to multiple text files. Suggested course of action involves developing a web server to aggregate MQTT sensor data, and to integrate MQTT OTA update functionality.
- Currently thinking out multi-client support at the moment. A home PC connected to a Wireless Local Area Network (also connected to the AGI-ESP8266) would be the perfect local storage point for sensor data and aggregate analysis from multiple plant sensors. Configuration would need to take place with the software as well. I like the approach that the Homie-esp8266 project took and has the esp8266 enter a default AP station state which requires connecting to it via wifi for configuration.
Android Client:
- The Paho Android client library is an MQTT library for developing IoT applications on Android. I'm currently getting famiiar with the codebase, but I suspect that if I pursue the Homie route; I will likely add support for it. However, if I do not, the current AGI-ESP8266 software will likely have a large update aimed at integrating similar features as the Homie-esp8266 project. Namely the ability to push microcontroller software updates Over The Air using MQTT and to re-configure wireless settings easily using the Android client itself.
IOS Client:
- If this happens at all, it will likely be when everything else is complete. Pending review of Apple-centric development/library
Cloud MQTT Functionality:
- Currently looking at integrating AGI-ESP8266 with Amazon's AWS IoT platform. Exploring other service options as well.
PCB Design:
- Waiting out on final design requirements for soil moisture sensor and evaluation of other possible candidate sensors. End goal is cheapest per unit cost while maintaining reasonable accuracy. Alternatives to the DHT22 temperature/humidity sensor capable of similar accuracy being researched. The BME280 (Temp/humidity/pressure) and the SI7021 (Temp/humidity) are possible options, alongside specific application sensors such as the DS18B20 (Temperature). -
Shelves!
06/05/2017 at 23:56 • 0 commentsAdded another shelf, unfortunately I didn't spot this the other day but it seems that the 1x4 boards warped in the heat of the sun.
This actually presents an issue I hadn't thought of. Namely, if this unit is setup on a window in the north with an environmental control setup; the growing environment will likely have high humidity.
The 1x4 boards, unless they are treated will almost certainly warp.
It's a bit of a setback actually. I was hoping to have the bulkiest item shipped being the plastic planting trays with baggies of starter soil sandwiched in the middle. Pictured below is the second shelf added, and the board itself has actually warped significantly.
It seems to work, but it's pretty crude.
An avenue I may be looking at implementing is utilizing aircraft cable almost entirely for the structural support.
This would mean 3D printing brackets to hold the planter trays and a suspended adjustment system for levelling the planters. Such a setup might actually be the best setup, as it minimizes the shipping footprint to basically just aluminum wire and accompanying hardware. Items which could likely fit inside a single, low footprint envelope. -
Bad news
06/04/2017 at 19:30 • 0 commentsThe seedlings that look so promising have unfortunately died.
I suspect the cause of their demise was changing the relative humidity of their container by placing a clear plastic cover over the planter. I noticed it was getting quite sunny so I put the cover on hoping it would help retain some moisture.
Alas, the lettuce died. For reference, the lettuce I am attempting to grow is black seeded simpson.
We will see what happens with the next set. In addition, I've sown the seeds for the spinach, which is Emilia F1.
In other good news, I've organized the licensing related stuff and added an Apache 2.0 license header to the source code. This should fulfill the requirements for the Hackaday 2017 Internet of Useful Things contest.
I have also gotten the agi-esp8266 microcontroller setup again and uploaded a new photo of the prototype unit. Down the road I will be designing a PCB to include everything needed and having additional prototypes printed for deployment to some of my family up north in the community of Cambridge Bay, Nunavut. The reason I chose to use 1x4 for the shelves primarily relates to making the brains of the setup easy to ship. I'm going to revise the construction/erection setup as I go because I'd prefer if the entire configuration required the least amount of tools possible. To that end, I picked up a 3D printer so I can print brackets to replace the Tee Nut and eye bolts. The reason for this is that constructing the shelves then requires a drill. Ideally, I'd like the end user setting such a unit up to only require a hand saw or skillsaw to adjust the shelf to match the width of their window then using a commonly available screwdriver to attach the brackets to an level adjuster connected to the aircraft cable.
Amongst the environmental considerations involved with growing on a window sill are including enough insulation and artificial LED light to augment natural daylight. It will likely be a bit of work to get that figured out.
Essentially, the problem with growing plants so near a window in the arctic relate to how cold it is in the winter months. I am anticipating needing multiple layers of clear plastic vapour barrier to be added to a window to retain as much heat as possible. The only way to know what this will look like is getting a unit setup on a window in the north, once at that point additional in situ data would be needed.
Another idea that I had for retaining both heat and humidity involved using LED lights to raise the temperature of the plants by a few degrees and to maintain humidity, I was also thinking of having on the other side of the window (the interior) a lightweight frame with clear plastic vapour barrier to act as a moisture and heat retaining insert. This would obviously need to be removable so that the end user could service and water their plants. However, how such a setup would work is vague at the moment. I will clearly need to be exploring options for that.
Most homes in the Canadian north used forced air heating, which tends to rapidly decrease relative humidity. -
Build environment
06/02/2017 at 22:52 • 0 commentsHowdy all,
As per the post from yesterday, I've assembled the first test shelf. However, I need to get the AGI-ESP8266 sensor working to a state where I can push updates to it via Arduino OTA.
Currently, the AGI-ESP8266 will post updates to an MQTT broker running on one of my Raspberry Pi's via Mosquitto.
The instructions for setting that up are on the github repository. There are issues with such a setup. Namely, each time the Raspberry Pi is restarted; the client commands need to be run and the output piped into a text file. I have setup a batch file, but it's a less than ideal solution. It works as a proof of concept, as evidenced by the logs in the photo here:The multiple values of 0.00 are from the DS18B20 sensor. I was comparing the two against each other when it was working, but I putting integrating it aside for the moment until I sort out the more nitty gritty stuff. The temperate difference when I had the i2c addressing setup properly was pretty insignificant, usually within half a degree difference at it's most extreme.
Note that these logs are from March when I was running long term testing on battery life with the deep sleep function. The deep sleep function on the Adafruit ESP8266 Huzzah with 4x AA NiMH rechargeable batteries was actually quite good. It ran for approximately a month and a several weeks, towards the end it got a little iffy. However, a month between battery changes seems reasonable for end users.
Next update will be on setting the system up with the proof of concept demonstrator AGI-ESP8266 with detailed instructions. Following that, I'm going to begin the process of fulfilling the 2017 Hackaday Internet of Useful Things contest requirements. This involves documenting the licensing issues from the various open source libraries I've used, to licensing any code I've written under similar/derivative open source licenses. -
Hanging mechanism
06/01/2017 at 21:22 • 0 commentsAlright, so as per my post on my website:
I had issues with leveling the planter shelves. Since I am looking at shipping the bare minimum to communities in the arctic, I'd like to keep shipping costs down.
The reason I went with 1x4 boards for the suspended shelves is because they are a commonly available building material that most communities would have access to.
The prior method relied on strapping the aircraft cable to the sides of the board. Right now, I'm exploring suspending the shelves from one another using eyelet bolt's and tee nut.
Here are a few photos:
The picture below shows the new setup I am trying.Here's a shot of it from the bottom.
With this configuration, I can raise or lower the shelf to level it properly. It's not ideal from the perspective of people being able to easily set this up so I will likely be refining this down the road.
Finally, here's a shot of the current setup.
As you can see, I've taken the three suspended shelves down. I have one, and I'm currently starting the next round of test plants (Spinach and Kale) now. -
Phase II: Chirp! and ESP12-f
05/31/2017 at 20:22 • 0 commentsForgot to mention in the previous update, I never received the esp-12f microcontrollers I ordered so I'll wait out for more. Additionally, I've removed the DS18B20 sensors from the project as I'm getting inconsistent results with them.
-
Phase II: Adjustment
05/31/2017 at 20:20 • 0 commentsUpdate: Long term testing revealed that I can utilize the deep sleep function to put the esp8266 microcontroller to sleep for 10 to 15 minute intervals and that it extended the run time of the AGI-ESP8266 system by several weeks.
I am removing the DS18B20 and sticking with the DHT22 for temperature/humidity logging, and the TSL2561 for ambient light logging. I am still looking at soil moisture sensor options so expect an update on that soon.
However, I've changed the project parameters from mimicking existing weather and plant logging projects and instead opted to focus on things that can be reproducible in the arctic using commonly available building supplies.
I have setup a hanging planter setup (which you can see attached to this project in the photo gallery) and will begin small scale testing this week to determine how effective the system is growing here where I currently live in Calgary, Alberta.
I had a bit of an issue getting any lettuce seedlings to grow in the peat moss seedling plugs that I picked up. However, I've added them into a plant tray and they seem to be doing better. That photo is also attached to the gallery.
I'll be posting an update later this week as I tweak and adjust the method for hanging the planter trays on my window sill. I'm having a bit of an issue leveling the 1x4 boards I'm using so once I figure out to solve that I will likely be shipping my setup to a family member up north for testing with a UL listed electronic outlet timer and a full spectrum LED light.
On that note, I should probably explain the regulatory concerns about deploying the project up north. Essentially, in order to plug any device into household electrical power; you need to ensure that any electronics you plug in are tested and conform to NRTL (Nationally Recognized Testing Laboratory) standards. This is to minimize the risk to consumers of electrical fires from poorly designed electronics.
Since the AGI-ESP8266 project is looking at using and deploying hardware in Canada, following local regulatory laws is a priority. This means that UL listed equipment for connecting to household electrical outlet power and conforming to CRTC guidelines for deploying non-intentional battery operated transmitters (as the Adafruit ESP8266 Huzzah is already covered under it's own license with both the FCC and CRTC, the microcontroller package itself will likely not need an intentional transmitter certification.)
What all of the above text means is that the AGI-ESP8266 will remain battery powered, and that any interface with any household electrical power will be done via UL listed equipment that can be picked up at your local hardware store.
While there are UL listed LED power supplies that are capable of interfacing with the ESP8266 over an IR sensor and transmitter, I've elected to use an electronic timer instead. This is due to the fact that they are simple devices readily capable of controlling an LED light source easily and effectively. The other option was using a complicated relay and/or MOSFET system to power the LEDs on or off. I've elected not to pursue that route as it's complicated, and it also requires the setup to be submitted to a NRTL testing lab for verification, a process which costs upwards of several thousand dollars.
Short version: The brains of the AGI-ESP8266 system will be via battery powered sensors and WiFi access. The LED grow lights will be controlled by proven outlet timers. End users will need to use their phone to login to the AGI-ESP8266 and follow instructions for when they need to set the LED lights on and off to extend the available natural daylight to maximize plant growth and minimize energy use.
Sorry for the giant update, this has been on the back burner for several weeks now as I figure out all of this stuff.