Introduction: Z-GOG: Zero Gravity Octagonal Garden

This is my entry to the Growing Beyond Earth Contest, the Zero Gravity Octagonal Garden: Z-GOG! I'm entering it in the professional category. Check out the video above for a quick video tour of the system and then follow along as I explain how I built it. I also outline some of the improvements I'd like to make for the next iteration of the system or for actually installing it into the ISS. If you have no interest in growing things in space (who are you and why are you on instructables??) the prototyping workflow I detail can be applied to just about anything and hopefully you will learn a trick or two that can improve your next project!

For my entry I was able to build a working earth based prototype that is ready to start growing test crops. I also collected real world sensor data that characterized the performance of the prototype system. Z-GOG is also connected to the internet so that you can remotely monitor and control it. Let's kick this instructable off by looking at the supplies needed for this build then let's examine the general steps I followed to prototype this system!

As a note my real workflow didn't exactly match these simplified steps so if you see a part of the system in the pictures before I detail how I built it that is because I jumped around and iterated between the steps in this instructable quite a bit. If you have any questions on this build please feel free to reach out to me. The Arduino code I wrote (mostly borrowed from Adafruit tutorials) for this project is embedded above so feel free to download it and browse through it as you are reading this instructable.

My brother Luke told me about this contest and provided me with the microcontroller and a lot of the sensors I use in this project. If not for him I don't know if I would have entered this contest at all so right off the bat I'd like to thank Luke so much for being an awesome big brother and pushing me to build awesome things!


The enclosure for the Z-GOG is fabricated from 1/8th in thick sheets of acrylic that I got from Tap Plastics in Seattle. I had them cut the individual pieces for me and they cut it so that when you glue (actually solvent weld but essentially the same result) the pieces together they form a 50cm cube. They have a pretty handy online tool (link) where you can get immediate price quotes on custom cut acrylic and are a pretty awesome company that you should probably support. The hinge (link), handle (link) and velcro (link) used throughout the enclosure were picked up at home depot.

The base for the octagonal light source is made from bolted together 80-20. Specifically four pieces of 25mm x 25mm extrusion (link) and four pieces of 45 degree extrusion (link). This ended up being really heavy but I'll discuss more about this later.

The grow lights were ordered from Amazon (link) mainly because they were a decent wattage that fit the form factor that I was aiming for. This is the first part of the system that I would upgrade if I build a second version of this because while these lights are quite bright they could be a lot brighter, have a better spectrum and dissipate heat much better.

The brains of the Z-GOG is an ESP32 Huzzah microcontroller from Adafruit that is pretty awesome (link). I got this microcontroller, the perma-proto board (link), the AM2320 temperature and humidity sensor (link), the light sensor (link), and soil moisture sensor(link) as a Christmas present from my brother Luke and then repurposed them to run the Z-GOG. I added a bunch of the TMP36 sensors (link) from Adafruit to get more temperature readings throughout the enclosure.

I had the relay board (link), the pump (link) and switches from previous projects. The fans for the enclosure were ordered from amazon(link) The plumbing for the watering system was picked up at home depot and is drip irrigation system components: the tubing (link), the T's (link), the drippers (link) and the shut off valves(link).

I also used a bunch of zip ties, nuts and bolts, wires and hot glue that I had around my house. The plant pillows were mocked up from white and black cotton fabric pillows filled with miracle grow. The connectors that I used for all of the sensors/some of the power are Molex SL connectors (link) and are an overall pretty great connector for prototyping but are a bit annoying to crimp without the proper tools.

In order to fabricate this prototype I used quite a few different tools:

  • A drill. I used a variety of drill bits to drill through plastic and metal.
  • Multiple different saws to cut acrylic and aluminum. My chop saw was probably used the most often in this project.
  • A router with a small bit in it. This was used to cut holes in the acrylic without shatter it too much. More on this later.
  • A pop rivet gun and 1/8th inch rivets- rivets provide a very secure way to bond things together and if you need to rework them you can always drill out the rivet and try again.
  • A 1/4-20 tap. This was used in order to bolt into the 80-20.
  • A 3D printer. This is probably optional but made the fabrication of one off parts really easy. This was used to make the manual override switch holder and the fan adapter.
  • My sister Mia's sewing machine and sewing stuff. These were used to mock up the plant pillows and my mom Lynn showed me how to use them. I only thought I broke the machine like five times. Thank you to Mia and Lynn for helping me with this!
  • Electronic prototyping tools. I used a soldering iron, snips, wire strippers, solder sucker, heat shrink, power supply, multimeter, and a lot of other electronic tools for this prototype. This project involved a ton of soldering and testing of electronic circuitry so at least a familiarity with these tools would be useful before attempting this project.

Step 1: Model/Sketch Out the Design

The first step of any prototyping project is to come up with an idea that you think would solve the problem that you are working on. Once you have an idea you need a way to convey it other people that are unable to read your mind. This is where modeling and sketching out your idea comes in super handy!

After reading the rules of this contest and thinking for a bit I came up with the idea of having an octagonal light source that extends centrally through the 50cm cube, using four sides of the cube to grow plants on and using the front of the cube as an access door and the back to house the water supply and control electronics. After sketching out this design I then took some time to outline what exact components would be needed in order to actually implement this in a rough system block diagram. This initial outline of major system components is really useful to solidify which components you need and to figure out more precisely how different parts of the system are going to communicate. I used this rough system sketch to figure out if the ESP32 Huzzah would have enough IO to support all of the different functions I wanted to implement on the Z-GOG and to get a general sense of what communication protocols and voltage levels I would need to deal with in this build. Note that initially I thought I would need a relay per each light strip but eventually realized toggling all of the lights on and off would be sufficient. I also thought I would need a 3.3V to 5V converter to interface the Huzzah with the relay board and was initially planning on running the fans and pump off of 12V vs 5V. Both of these ended up being disproved as I tested the actual components.

Once you get a good idea of the major system components and how you want them to communicate you can then start working on how you want to physically assemble them. After googling around to see if anyone sold an octagonal aluminum extrusion profile and only finding hex ones I used Sketchup to quickly draw a 50cm cube and then imported a model of the 25cm x 25cm 80-20 extrusion to mock up an octagonal light source made out of 80-20. With the triangular pieces of 80-20 added this looked pretty good so I pretty quickly moved on to the next step in this instructable of ordering components.

As I worked on the actual build of the Z-GOG I refined the model and got more details on how astronauts actually use the existing veggie system. I was able to use sketchup to lay out a couple of different planting patterns which show that the Z-GOG should be able to easily grow 34 different lettuce plants and could support up to 56 different plants at one time. As currently prototyped using a 6mm plant pillow thickness the Z-GOG design theoretically has 52,800 cubic cm of soil space available for the plant roots while the plants in the center plant pillows have ~15cm of vertical grow space and the plants in the corner plant pillows have ~22cm. It appears that the Z-GOG can pretty easily support at least 4 lettuce plants per plant pillow and can possibly support up to 56 if they are planted 7 per pillow in rows of 3 then rows of 4 but more testing/research is needed to figure out the optimal plant spacing to produce the most edible plant matter. As you add more and more plants to the Z-GOG each one will compete with its neighbors for light/water/nutrients so care must be taken to ensure that your soil/fertilizer/lighting/watering system can adequately provide the added nutrients to the plants that you plan on growing.

Now lets actually order parts for our space lettuce box!

Step 2: Order Parts and Test Them Out As You Receive Them

Once you have a pretty good idea of what you want your prototype system to look like you should start to order parts for it. Google is your best friend for this step in the process. Try to find as many different usable versions of the parts you need as possible. Once you narrow down your parts to a couple of acceptable versions you need to figure out what you are optimizing for and pull the trigger on ordering them. If you are really cost constrained then order the cheapest part that you think will be adequate. If you need a specific criteria met make sure that the parts you buy will actually fulfill that criteria.

For this prototype I really tried to optimize for mechanical fit and and price point. I didn't want to spend too much on individual components and wanted to make sure that they fit within the 50cm cube specified by the contest requirements. Once you start getting parts in be sure to test them out to make sure that they are functioning and fit together like you expect them to. I ended up using two sets of the 45W grow lights from amazon and was able to figure out that rather than operating them at the manufacturer recommended 24V I could up their intensity by running them all the way up to 32V. At 24V one strip was using ~8W of power and so they were really more of a 32W set rather than a 45W set. At 32V the LED's were a lot brighter but they also were dissipating a ton more heat and consuming ~94W per set. This didn't seem like a good way to run them for long periods of time so I settled on running them at 28V drawing 57W per set and using two sets so a total of 114W of power being used by the lighting system. The strips would heat up a bit more than at 24 volts but I can always bump down the power supply if this becomes an issue.

While you are waiting for your parts to arrive try to get as much done on the other parts of your system that you have the parts available for. For me this meant starting with figuring out the control electronics for the Z-GOG first.

Step 3: Prototype and Test Out the Control Electronics

Amazon shipped the grow lights really quickly, I had a relay board that seemed like it should work well and I had the Huzzah microcontroller already from my brother so one of the first things I started on for this project was the control electronics. The fritzing diagram hopefully does a pretty decent job of showing how I ended up hooking up the different components but in general I'm using four different relays to control the four major subsystems in the Z-GOG. One relay for the lights, one for the pump, one for the box cooling fans and one for the LED cooling fan. The relays are commanded to toggle closed and turn power on to the different systems by two different ways: either by the manual override switch or digital outputs on the microcontroller providing a ground path for the relay control. The manual overrides were initially just push buttons that I was using to test the relay board but then I figured that they would be really useful for testing the subsystems as I was building up the prototype and they would be useful to have on the space station so that astronauts could activate the systems themselves if they wanted to. For instance if they wanted to check on the plants during the 12 hours that the grow lights were turned off it would be helpful for them to be able to just flip a switch and be able to see all of the plants.

The computer fans and pump I used for this build are all rated for 12V DC but in testing them out I found that they are ok with running at 5V DC and when they were powered with 12V the pump moved a ton of water making it not a great choice since you would have to toggle it on for only a couple of seconds before it pumped a decent amount of water out. Using 28V for the lights and 5V for everything else let me also minimize the number of power inputs/circuitry I had in the box. I'll discuss this more later but ideally the LED cooling fan should move more air than it currently does and an easy way to increase the CFM of this fan would be to bump up the voltage that it is run at.

It is always helpful to initially start your electronic prototyping on a breadboard. It makes it really easy to verify that everything is working properly and to swap things around/measure stuff when it inevitably isn't functioning as you would expect. Breadboards are not super reliable though so moving to a wiring method that is more robust is one of the required next steps.

Step 4: Prototype and Test Out the Sensing Electronics

The Huzzah microcontroller I got from my brother was already mounted on an Adafruit perma-protoboard and so after un-soldering a couple of the sensors that he included on it I was able to start laying out my planned sensors for the Z-GOG. The fritzing diagram I drew up and the Arduino sketch should show the connectivity of each of the sensors pretty well but what they don't really show is how important it is to have each of your sensors easily removable via a connector. While building and testing a prototype having the ability to isolate issues is really helpful. Adding connectors to each of your sensors enables you to test them one at a time and make sure each is operating correctly. Connecterizing your designs also enables you to easily swap out sensors that are giving bad readings or that you damaged during your build. Molex SL connectors come in a wide variety of form factors and are pretty great for prototypes.

Moving from a breadboarded design to a perma-protoboard or protoboard based design is a good way to ensure that your connections are actually solid and that they wont give you any intermittent faults like breadboards are prone to. Another thing to be wary of while prototyping is shorting out sensors or exposing them to environments that they are not designed for. The TMP36 sensors I use in this build are really only designed for breadboard/pcb use and aren't really suited for being embedded into soil or other more trying environments. By soldering wires onto the pins coming from the TMP36 package and reinforcing them with hot glue I was able to make sure that they were at least a bit waterproof and wouldn't short out on any of the metal components within my system.

Another important thing to consider while prototyping is to ensure that your wiring has enough length so that it is able to reach all of the different areas that you you could possibly want sensor data from. It is almost always better to have too much wire that you can just bundle up rather than having too little so that you have to rework a lot of stuff you've already done.

After making sure that the sensors were functioning properly (more details on that in step 11) you can wrap up the sensing electronics and move onto actually building the mechanical parts of your prototype!

Step 5: Build the Octagonal Light Source

Building the octagonal base for the LED grow lights was pretty straightforward. You basically need to just bolt together the pieces of 80-20 that you ordered, trim the ends flush and then tap the ends of it so that you can bolt the completed assembly to your enclosure.

One of the machining tricks that I found super helpful in this step was drilling an oversized hole and then changing the angle of the drill so that the hole widens into a slot. This let me have access to both sides of the interior of the triangular pieces of 80-20 in order to bolt everything together. This is a bit hard on your drill bits so make sure to take it slow and have everything clamped down securely while you are drilling. Aluminum also creates quite a few sharp chips and burrs so be sure to clean any of your cuts or holes so that you don't get any nasty splinters from it.

After you have the light source base you can then start on building your enclosure!

Step 6: Build Your Space Lettuce Box

Once you buy or cut your pieces of acrylic to length you can start assembling your enclosure for the Z-GOG. I picked up a plastic drill bit, acrylic cement, a funnel and applicator at Tap plastics and they came in quite handy in assembling the acrylic enclosure. Blue painters tape was also a good way to hold the pieces in place before you solvent weld them together. A handle, hinge and velcro closures rounded out the basic enclosure and then I started working on cutting fan air holes into the front door of the enclosure. This is where I ran into a couple of issues with trying to cut the acrylic. Acrylic is a pretty brittle material and it cracked quite a few times on me as I was cutting or drilling into it. I had the most success with using a plastic drill bit to drill holes into it, a router with a small cutting bit in it to cut profiles and a chop saw to cut straight pieces of it. If you do crack it a bit of acrylic cement will patch it up pretty well but leaves a pretty bad surface finish.

For the water tank I used some silicone caulking on the seams in order to ensure the acrylic joints were water proof. A quick test by filling it with water is helpful to ensure that you don't have any leaks in it. I reached out to the organizers of the contest to see how much water the current veggie system holds and was told that it used a roughly 46cm x 18cm bag that holds about 2L. The tank that I built in to the Z-GOG holds ~4L of water and is roughly 50cm x 15cm x 5cm in volume. In the actual space station the plan is that rather than having this fixed tank the pumping system would be connected to a bag or set of bags that are velcroed onto the back wall of the enclosure and can be easily swapped out by the astronauts when empty. This means that two full bags of water installed in the Z-GOG it can provide 100ml of water to 400 plants or can provide the maximum 56 planting configuration with 100ml of water per plant for a little over a week. If you go with the more manageable 32 plant configuration then two bags would last you for a bit over 12 days. If two of the bags end up taking up too much space then you can go with a single 2L bag and then just have the astronauts swap out bags in half the time (I'll discuss more options for providing water to the Z-GOG on the ISS in step 13).

After you have your enclosure and water tank assembled it is time to start integrating all of the separate mechanical pieces of your prototype together!

Step 7: Start Assembling Your Prototype and Check for Any Mechanical Clearance Issues

Once you start combining the different mechanical pieces of your system make sure that everything is fitting together like you designed them to and reposition or redesign them if they are not meshing together. Right around this step I realized that when the octagonal base was bolted to the back of the enclosure the 25mm x 25mm 80-20 would allow proper airflow under the LED strips while the triangular profile would not. An air hole was then drilled in the back of the triangular profiles so that cooling air would be able to be drawn from the back of the base under the LED strips hopefully keeping them quite cool. In this step I also added two steel wire supports for the octagonal base so that the weight of the profiles (6lbs 11oz or 3kg!) wasn't just supported by the back wall of the enclosure. Future design considerations for the LED base are discussed in step 13!

For the Z-GOG I decided to use plant pillows similar to what they currently use on the veggie system on the ISS. This technology is proven to work on the ISS so I figured it had the least amount of risk associated with it. Future growing mediums are discussed in more detail in step 13. I reached out for more details on the existing veggie pillows and found out that they are "an expandable, gusseted TeflonTM coated Kevlar® bag, manufactured by ORBITEC. The pillows have a Nomex® wicking bottom surface that interfaces directly to the Veggie root mat reservoir, designed to establish a capillary column from the reservoir to the rooting substrate. Each pillow contains a silicon foam gasket penetrating the top surface with a central slot to allow the insertion of wicks and seeds. This gasket allows substrate containment while plant shoots can emerge and enlarge without constraint." (Massa et al. Gravitational and Space Research vol 5 (1) July 2017, page 25). This was not something that I could easily recreate so instead I decided to mock up my plant pillows two different ways: with foam and with sewn together fabric. The foam pillows were velcroed in place on the sides and top of the enclosure to emulate the veggie pillows that would be easily secured in the same manner in zero gravity on the ISS. I added some fake plants to these pillows to model out the clearances and real plants would have an to see how much shading their would be in the different planting configurations. These mock up plant pillows made me realize that I needed to move the box cooling fans in closer to the center of the Z-GOG so that they would have proper clearance away from the pillows mounted on the sides.

For the plant pillows on the bottom of the Z-GOG I borrowed my sister Mia's sewing machine and my Mom Lynn helped me pick up fabric and showed me how to sew together a cube that could hold my growing medium, miracle grow. The growing medium used in the current veggie system is calcinated clay and fertilizer which I couldn't find a source for locally so I settled on Miracle grow as a substitute. After checking that everything fit properly within the enclosure I was then able to start getting ready to integrate my electronics into the mechanical enclosure!

Step 8: Integrate Your Electronics Into Your Mechanical Build

I found that the easiest way to mount my LED grow lights onto the octagonal base was to drill an 1/8th in hole on both ends of the aluminum profile that the LED's shipped attached to and pop rivet them onto the base. I also added a dab of heat sink compound on the triangular profiles to aid in the heat transfer between the LED's and the octagonal base. I then soldered all of the LED grow lights together so that they are all able to be controlled by a single relay and are powered by one power source. I then took some time to mount all of my electronics onto the back wall of the Z-GOG enclosure with velcro. I drilled two holes in the back wall in order to feed in the 28V DC power source for the lights and the 5V DC power for everything else. The grow lights shipped with barrel jack connector extension cables that I was able to solder two banana jack leads onto and reuse as my power input cables. I also added a power and ground strip of breadboard to the back wall of the enclosure to act as a terminal board for easy access to all of the 5V DC and ground connections that I was going to need for the electronics. During testing I noticed that when the pump motor was on it was causing some noise on the 5V line so I also added a capacitor on this terminal board and on the power rails on the perma-proto board to help suppress this electrical noise. This seemed to work quite well and I haven't noticed any other noise issues during testing after they were installed.

Around this step is when I 3D printed a small switch block in order to mount the manual override switches onto the front of the Z-GOG. After installing the switches in place, soldering wires to them, adding a connector to the other end I was ready to continue installing components into the Z-GOG and to trouble shoot any of the other issues that arose!

Step 9: Fix Any and All Integration Issues That Arise

As you continue to install different components into your prototype you will invariably run into other issues that will take some time to troubleshoot. For the Z-GOG after installing the LED cooling fan, LED grow lights and the octagonal base I realized that just having the cooling fan in front of the LED's was not going to provide enough airflow to keep the LED's cool. I then modeled up an adapter that would tightly fit around the LED's mounted on the octagonal profile and direct all of the fans airflow to where it was needed. This was a pretty easy part to design and print but I ended up making the octagonal profile too long so I ended up having to cut a section of it off. I thought I sized it so that it would be able to slide further over the LED strips but I didn't make the octagon wide enough so trimming it seemed like the best option rather than taking the time to print another version of the part. After sealing the fan adapter onto the octagonal base with hot glue and checking the alignment with the fan it looked like it was going to function much better and cooling airflow would get where it was needed.

At this point I was able to mount the manual override switch block and properly route the wiring for it and the fans to the back wall of the enclosure. This part was hot glued onto the front of the enclosure and the wiring was run though a hole drilled in the front door of it. Another great prototyping tip is that if you hot glue something in place and need to move it you can cover the glue with some 90% isopropyl alcohol to get it to release. After a couple of minutes the glue should be able to be easily pulled off of the parts and once the alcohol evaporates you can try to glue it back on again. After quickly testing to ensure the manual overriders were functioning properly and that the Z-GOG was performing as expected I was ready to start adding in some plumbing for the watering system!

Step 10: Add Drip Irrigation Drippers and Drip Line to Your Pump System

The 12V DC pump in the Z-GOG is currently run to four different lines of drip irrigation piping: one for the bottom left plant pillow, the bottom middle, the bottom right and a test loop. Each of these lines can be turned on or off with an inline shut off valve so that you can have one or all of them active at a time. You can shut all of the shut off valves but this would probably just stall the pump motor or cause one of the connections to fail so I would advise against this. The test loop merely circulates water from the holding tank to the pump and then back into the tank. This is installed so that I could test the functionality of the pump without getting the plant pillows too wet. Drip irrigation drippers are installed on the lines that feed the plant pillows but would not actually be necessary on the ISS. The current veggie system relies on a piece of nomex that uses capillary action to ensure that the water is distributed properly throughout the bottom of plant pillows and that the roots have easy access to water. This established system would ideally be used on the Z-GOG but the drip irrigation drippers will have to act as a stand in for now.

After mopping up the water that was pumped out into the bottom of the enclosure I reinstalled the plant pillows and ran a quick system test before getting ready to collect actual data on the working system!

Step 11: Start Collecting and Processing Actual Data From Your Sensors

Prior to installing the sensors into the Z-GOG I ran a desktop test on them to ensure that they were functioning properly and as I was expecting them to. The graphs above are taken from the excel spreadsheet that I generated by copying the output of the serial monitor as I individually tested each sensor. The spreadsheet with the actual sensor data collected is available to download at this google drive link:

While the TMP36 sensors are a bit noisy and have a weird offset they seemed to be functioning properly and all of the other sensors seemed to be working well too. I then integrated the sensor readings into an Adafruit IO dashboard and realized that I had some issues. Two of the TMP36 readings and the soil moisture reading were maxed out and not changing. I troubleshot this for a bit before finding this line in the Adafruit FAQ on the ESP32 Huzzah: " Question: Why can I not read analog inputs once WiFi is initialized? Answer: Due to the design of the ESP32, you can only read analog inputs on ADC #1 once WiFi has started. That means pins on ADC 2 (check the pinouts page) can't be used as analog inputs." Turns out I had initially wired the soil sensor and two of the TMP36 sensors to an ADC that the WiFi chip uses once it is connected to the internet. These pins can still be used as digital outputs so a couple of wire swaps later I was able to install the sensors into the Z-GOG and get good data pushed out to the Adafruit IO dashboard.

After getting good data I performed similar sensor tests to the desktop tests but with the sensors actually installed into the Z-GOG. The first test was a lighting test to see how many Lux of lights the grow lights actually produced vs the different voltages that I could run them at. I installed the light sensor on the right side foam plant pillow and toggled the lights on and off at different voltages. At the manufacturer recommended 24V they produced around 6,000 lux or somewhere around 100 𝜇mol/M2/s according to this online calculator. At 28V they produced around 10,000 lux and about 190 𝜇mol/M2/s. At 32.6V (the max of my power supply) they produces around 15,000 lux and about 285 𝜇mol/M2/s. These are not great results since these LED strips run at their very highest unsustainable for a long period of time voltage are still not within the 300-400 𝜇mol/M2/s recommended by the FAQ page for the contest. This means that these grow lights should probably be the first piece of equipment that is swapped out in the next version of the Z-GOG.

The next test I performed was a longer term test to see how well the LED's dissipated heat while powered at 28V. I zip tied two of the TMP36 sensors onto the ends of the LED base and then zip tied the AM2320 sensor onto the middle of the top of the base. The temperature sensor in the AM2320 was found to be the most accurate and I figured that this would be the hottest part of the system so it made sense to instrument it and see what the worst case condition was. I started this test with all of the cooling fans off and the temperature reading of the AM2320 quickly climbed to around 100 degrees F. At this point I was worried about the LED's getting damaged by being run at too high of a temperature so I switched on all of the cooling fans. The temperature dropped down to a steady state of ~90 degrees F and at this point I then tested to see how well just the LED cooling fan dissipated the heat from the LED grow lights. Turns out not very well since the AM2320 temperature reading quickly climbed to above 100 degrees F with only the fan on. I then decided to turn on the box fans and see if they were able to drop the temperature again. They were able to drop the temperature back down to a steady state of ~95 degrees F. I then ended the lighting/temperature test and the temperature readings slowly returned to ambient.

Next I used a household humidifier to blow humid air into the enclosure while the fans were off. This was able to get a ~95% humidity level reading from the AM2320 and I then closed the front panel of the enclosure and turned on the fans to see how well they were able to clear out the humid air. They pretty quickly dropped the sensor reading to ambient and seem to be performing well. The soil moisture sensor also responded well to the drippers being turned on and providing water to the plant pillows. More tests are needed to figure out how often and for how long the drippers need to be run in order for the plants in the plant pillows to remain happy. This is one of the first things that will need to be fine tuned before growing any plants in the Z-GOG.

Now that everything seems to be working pretty well within the Z-GOG it is time to work on automating the different sub-systems!

Step 12: Automate Your System!

As demonstrated in the video tour of the Z-GOG in step 1 the main sub-systems are able to be toggled on and off by clicking on the toggles within the Adafruit IO dashboard I set up for the system. Adafruit IO also has an API that should enable me to easily automate growing plants within the Z-GOG but I have yet to dive into this. Adafruit IO also enables you to connect your IFTTT account with your project so connecting the Z-GOG to other internet services and other smart devices should be relatively straightforward. Adafruit IO also supports Alexa integration so in theory I could make the Z-GOG voice controlled but I haven't been able to get this to work yet.

Local automation with just the ESP32 Huzzah should also be pretty straightforward to implement but I have yet to get it actually working since my coding skills are pretty garbage. Setting up a counter to toggle the lights on for 12 hours and then off for 12 hours is one of the first steps I will take for this. Then once that works I will try to get it so that I can enter specific on times and specific off times in the Adafruit IO dashboard so that my timers don't reset every time I power the Huzzah on or off. After this I'll need to complete more testing for the moisture sensor and pumping system to figure out how long I need to have the pump run in order to properly water the plant pillows. Finally I'll need to ensure that the the fans turn on at appropriate temperature or humidity levels and if the temperature continues to climb even with the fans on I'd have to have the light source shut off and send an alert to the astronauts to check on the system. Alerts for any of the sensors losing value or the light sensor not properly detecting the lights turning on or the moisture sensor not detecting the soil getting properly watered should be relatively easy to set up.

Now that our prototype Z-GOG is just about finished up lets look at ways that we can improve it both for possible use in the next round of this contest and ways to make it more useable on the ISS!

Step 13: Next Steps and Possible Improvements

After completing the first prototype version of the Z-GOG I've brainstormed multiple different improvements that I can make for this system. In general they fall into three basic categories: Steps I can almost immediately implement within the current prototype, steps that seem really useful but would require quite a bit of redesign and steps that could be taken if the Z-GOG is actually implemented on the ISS.

Let's start by examining some of the steps that I could take right away to improve the Z-GOG:

  • Get better LED grow lights: As discussed in step 11 the cheap 45W LED grow strips I ordered from Amazon are only able to output about 190 𝜇mol/M2/s. Swapping these light strips out with higher powered ones will be an easy to implement improvement that should make the Z-GOG much better at growing plants.
  • Get a better/higher voltage/higher CFM cooling fan: Also as discussed in step 11 the LED cooling fan doesn't keep the LED grow lights very cool on its own and needs to have the box cooling fans running in order to keep the enclosure at a steady temperature when the lights are on. Running this fan at the manufacturer recommended 12V vs the 5V that I'm currently running it on should help but it should be really straightforward to swap out this fan for a higher CFM version to keep the LED's cooler.
  • Fine tune the automation: As discussed in step 12 I still need to write the code for and figure out the proper parameters in order to fine tune the automation of the Z-GOG.
  • Make the manual override be able to turn off the components: The way that I currently have the the control switches and DO's from the Huzzah wired results in a logical OR of the different signals. This means that apart from powering down the system or toggling the DO's through the Adafruit IO dashboard their is no way to power individual sub-systems off. The manual override switches should be rewired or additional switches to cut the power to each subsystem should be added to the Z-GOG.
  • Consolidate/properly package/seal the electronics: While a perma-protoboard is really useful to ensure proper connections between the electronic components a custom fabricated PCB would decrease the footprint of the PCB vs protoboard and a properly sealed enclosure would help to ensure that the electronics don't get damaged or provide bad sensor data as plants are actually introduced into the system.

Some of the improvements that I've come up with that seem really useful but I'm not able to implement right away because they require quite a bit of redesign work are:

  • Make the Z-GOG flat packable: The current prototype consists of 50cm pieces of acrylic solvent welded together and would be super annoying to transport or fly up to the space station. Redesigning the enclosure in order to make it flat packable is definitely doable but I would have to cut into the existing prototype and figure out a way to ensure that the water tank or water bag would stay in place and not leak.
  • Smaller LED base: See the pictures above for a rendering of an octagonal extrusion that would increase the vertical growing height of the plants installed in the Z-GOG and be a lot lighter than the current bolted together 80-20 LED base.
  • A removable or telescoping LED base: Having the LED's and the LED base able to be easily removed or telescope in and out from the center of the Z-GOG would make it much easier to reach the water bags to swap them in and out and provide better access to the back of the plant pillows in order to make harvesting the plants growing in the Z-GOG much easier.
  • Switch to Hydroponics and or smaller plant pillows: The current version of the plant pillows I'm using were sewn together to match the dimensions of the pieces of foam that I had and could easily use to model plant pillows velcroed in place in the microgravity of the ISS. Further testing needs to be done to figure out how much soil/growth medium needs to be in each plant pillow and if soil or calcinated clay is even needed and the plants can be grown hydroponically saving a bunch of weight in plant pillows.
  • Add Webcams: Being able to track plant growth in real time with a couple of different webcam feeds would make checking on the status of the plants within the Z-GOG as easy as visiting a webpage and checking the feeds. This would also open up the possibility of using a machine learning algorithm to alert astronauts about possible growing issues that are detected in the plants.
  • Adding in a water flow sensor: As detailed in step 12 further testing is necessary to figure out how to properly automate the pumping system. A sensor or sensors to detect exactly how much water the pump has distributed to the plant pillows would definitely help with this automation.
  • Evaluate the usefulness of an air pump: Some plants require more air on their roots than the current Z-GOG system might be able to provide. It would be pretty straightforward to add an air pump that pumps more air to the roots of the plants but further testing is needed to determine if this a worthwhile improvement.

Finally lets look at some of the improvements that would need to be made to the Z-GOG if it were to actually be implemented on the space station:

  • Ensure that the build quality is appropriate for something on/flying to the space station: this one is pretty straightforward and basically means that everything would have to be redesigned to ensure that it robust enough to survive a trip to the space station and safe enough so that it is able to operate while in orbit.
  • Create the ability to move the plant pillows closer/further away from the light source as the plants grow: as modeled up in one of the pictures above it would be somewhat useful to be able to move the plants closer to the light sources while they are young and short and then move them further away once they start growing. In the microgravity of the space station a couple of strips of velcro or small support beams could be added to allow the astronauts to reposition the plant pillows wherever makes the most sense for the current growth stage of the plants.
  • Ensure that it is easily stackable/modular so that multiple versions can be implemented at once: This one again is pretty straightforward and is modeled up in one of the pictures above. Ideally adding more Z-GOG's should be as straightforward as possible and would require just making a couple of connections and installing another version of it.
  • Integrate with the ISS's water systems: Hooking up the Z-GOG's pumping system to the water dispensing/recycling system on the ISS should drastically cut down on the amount of space it takes to store water within the enclosure and will make it so that astronauts don't have to waste time swapping out bags of water to water the plants. Ideally the system would just pump water directly into the plant pillows without the need for astronauts to do anything.
  • Integrate with cooling sources available on the ISS: Ideally the Z-GOG should be able to integrate to the different cooling systems already available on the ISS so that the grow lights are kept as cool as possible. The guide to the ISS calls out multiple different cooling sources available so hopefully this would be relatively straightforward to implement.
  • Create modular plant pillows: Ideally the plant pillows should be designed to be as modular as possible so that multiple different planting configurations or types of plants can be grown at the same time within the Z-GOG. Building in the appropriate sensors and connectors so that plant pillows are easily connected and disconnected from the system should definitely be implement before the Z-GOG is installed on the ISS.

These are the different improvements I've come up with for the Z-GOG and this wraps up my instructable! If you enjoyed reading it or learned something from it please vote for it in the Growing Beyond Earth contest! Let me know if you have any suggestions for improvements or found anything wrong with this write up!



Growing Beyond Earth Maker Contest

Runner Up in the
Growing Beyond Earth Maker Contest