That A (lettuce) Wrap!

And we’re done! The entire rig is sealed off and the control box is mounted!

Here is a link to our final video describing how it works: Video

Here is a link to our final write up: Write Up

And here is a final picture to show it off:



Successful Demo Day and Dirt Has Been Found

Back on Friday our demo ended up going very well. Our system was able to be manually controlled from our “Remote” website and all necessary information (such as sensor data and user input) was correctly being relayed. Our logging software for past sensor readings was and is correctly tracking historical data which we can then use to give analytic information. Hard part is all done!

Now another really exciting update…….we managed to get dirt! Yes, this might seem uninteresting but the process of actually getting it was a logistical nightmare. Below is our fully filled plot with cabbage, basil, and a tomato plant.


Now all we have to do is seal it off and interface our control box with all components in a weather proof manner since we will be leaving this alone for a few months. In a few days we will post our final blog post with our video and lab report.

Before Black Friday (Morning)

Before we go into the night and eventually morning of our final demo day, here is an update on the current state of the rig.

On the left is the solenoid valves which are hooked up to a 12V source and mosfets controlled by the microcontroller. Out the bottom right of the right picture is a bunch of wires that go out to our two sensor hubs and four water sensors. At this point we have much of the hardware implemented and just need to verify it all works.

Our goal through the night will be interfacing the server we created with the Photon to relay information to it (like which plants are where) so it can act on those variables.

Our Web Server is Live!

We’ve finally moved from our development server to a live server!
The server runs using nginx to serve http requests and static files (i.e. scripts, css, and images) and interfaces with gunicorn to create the dynamic website with flask (as detailed in this blog post). We then used a free dns service (freeDNS) to connect to nginx via our own domain name so no one has to remember any pesky IP addresses! Without further ado, meet our credit card sized web server (on a Raspberry Pi 3 Model B)!


Obviously, this can’t handle hundreds of requests, but this is a microcontrollers class after all, so we figured running a microframework on a microcomputer would also be appropriate instead of a big Amazon Web Services node.
Feel free to visit the live site here

Framing the Box

Really quick update. We were able to break down the 80/20 that another group had used for their project and rebuilt it to act as the frame for our greenhouse. We plan on wrapping most of it with clear plastic while certain parts will be acrylic to support the exhaust fan.


Boxing it All In

To hold all of our electrical components and keep them out of the elements, we created a press-fit box. It will house our four relay switches which control 120V sources to our lights, duct-fan, and irrigation control valves. Under the relays will be all of our microcontroller circuitry. Here are some pictures of the control box.

We are also making progress in the server side of things. We received a raspberry pi from the lab on which we will host our server with all our plant information. In this way, we will be able to create new recipes for additional plants in the future and by extension will only relay the desired growing conditions to our Photon board. This gives us much easier control over future additions to our inventory.

Coming soon in the mail we have our analog muxes to take in and read more analog devices than the Photon allows on board. We also have our four water sensors for irrigation control, a duct fan for cooling, and plastic sheeting to put around our greenhouse. We plan on working with 80/20 T-slotted, aluminum building material provided by a previous class project for a frame around which we will wrap the plastic sheeting.