User Tools

Site Tools


Basil test grow #1

  • Using Personal Food Computer 2.0 kit with new higher power GE red/white/blue LED's custom made by Tim.
  • Running the latest openag_brain v1.0.0 software from the develop branch.
    • Both diluted nutrient solutions are in the large 3.5L water bottle.
    • No FloraDuo A/B used (those hoses are not in any bottle).
  • Started with 2 week old basil seedlings from Bates.
  • Running on the spaghet-a-bot PFC v2.1.
  • The plants use approx. 0.5L of water + nutrients per day, so make sure the bottle is full before Friday.

Test Results

Hardware issues

  • Water level (high) sensor stops working sometimes, I think it is algae growing on it. Wiping fixes it.
  • Incorrect peristaltic pump assembly led to a cut/burnt water supply hose.
    • Second incident of an almost burnt hose. Is there a design flaw in the peristaltic pumps?
  • Ongoing I2C issues with the AM2315 sensors failing. Need to un/re-plug them sometimes. (error 255)
  • Broken air pump (for water aeration).
  • Ongoing USB issues with the web cameras on the RPi/raspbian OS. Not reliable and may cause the system to hang. Cause unknown.

Software issues

  • Serial communications issues between the Raspberry Pi and Arduino (now fixed thanks to goruck).
  • Filling up the file system on the SD card with many duplicate data points (now fixed).
  • ROS usb_cam node still not working. So no images from the built in cameras (still an issue).

User issues

  • Reseating connections in the growth chamber (susceptible to corrosion) WHILE THE PFC IS POWERED ON can cause a short! Always login in, do sudo shutdown now and then turn the power switch off before doing any electronics maintenance.
  • Hose to large water jug was pulled too tightly on the peristaltic pump, causing it to burn through. Need slack in the hoses, no sharp bends.
  • pH up and down fill hoses were not in the tub in the growth chamber.
  • Duh, my name is rob.

Design issues

  • Electrical connections in the growth chamber corrode and cause shorts - waterproof or have longer leads that connect in the electronics bay.
  • Air pump in the growth chamber corrodes - move out of chamber.
  • Moisture condenses on the chiller 'radiator' in the growth chamber and drips on the electrical connections - move chiller/heater out of chamber and move air across them from/to chamber.
  • No accurate nutrient dosing system / feedback loop. Currently using constant dosing in the water supply.
  • A lot of algae grows on the edge of the tub and floating raft - provide an easy to clean light blocking cutout.
  • Chiller runs 50% of the time - provide more growth chamber insulation.
  • Chiller is noisy - use a quieter fan.


plant week 1 & 2


  • Basil seeds started in germination rack at Bates by Peter K.

plant week 3


  • Put seedlings in spaghet-a-bot on without any pH or nutrient solutions (we need to fetch some from Bates).


  • Fixed some minor SW bugs and deployed to spaghet-a-bot. It was only off for a few minutes. Restarted the recipe.


  • Noticed some green foam around the edge of raft, wiped off most of it. Cleaned everything with bleach and filled water tub with the nutrient mix.
  • Added pH up/down and nutrient_formula from Peter's stock from Bates. This is in the 3.5L water bottle now.
  • Have bug starting recipes where the handler takes too long to start up if the environmental_data_point DB is too large. Simple solution for now is to kill that DB.

plant week 4


  • Brain restarted (without anyone logging why, perhaps a SW update).

plant week 5


  • Latest code updated with fixes for arduino serial and recipe handler starting with large DB.
  • Refilled large combined nutrient/water bottle.
  • Disk only had a few hundred MB available, had to kill the environmental_data_point DB so the experiment can continue.


  • Disk/DB space OK, environmental_data_point DB growing. Basil looks good.


  • Made light shroud to attempt to reduce algae growth. See today's picture.
  • Disk/DB space OK, environmental_data_point DB at 2.8G. Turned on couchdb automatic compaction using this command:
    curl -X PUT http://localhost:5984/_config/compactions/_default -d '"[{db_fragmentation, \"40%\"}, {view_fragmentation, \"30%\"}, {from, \"23:00\"}, {to, \"06:00\"}]"' 


  • The environmental_data_point DB is only 1.1G, so the automatic compaction seems to be working.
  • Noticed water level dropping below the high water sensor. Tested sensor with this command: rostopic echo /environments/environment_1/water_level_high/raw which was returning 0.0 when the sensor is out of the water which is wrong, it should return 1.0. The connector to the sensor had some corrosion on it, cleaned it and plugged it in again, and it now works.


  • The environmental_data_point DB is 1.9G.
  • Water circulation pump not working, while diagnosing the problem, the PFC stopped working. Not sure if I shorted something or it was a loose connection. !@#$%& Turns out the water circ. pump is very weak and its connector was loose. It is working again.
  • There is a bit more than 2L in the water+nutrient bottle, so it should be fine over the w/e.
  • The arduino_handler ROS node crashed when it could not open the sym link to the serial port. Issue #328 logged. Restarted the brain after pulling the fix for this issue: PR #329.

plant week 6


  • The environmental_data_point DB is 2.2G.
  • From Friday afternoon to Monday morning, 1L of water+nutrients have been used, so approx 0.5L per day.


  • The environmental_data_point DB is 2.5G.
  • Still have more than 1L of water+nut.
  • Basil still very tight and curved in on itself. Need to measure PAR of LEDs to see if they are too powerful.
  • Peter K's comments on the picture I sent him:

> That basil, for a first crop, looks pretty darn good. Things that can cause it to grow more tightly than we want include high light, low temperature, nutrition, maybe a couple other things. At Bates the first crop grew much like yours and it was the 500 umoles of light causing the response. I think your pfc temps are fine, not to chilly right? Chilly would be fifties, F.


  • The environmental_data_point DB is 2.9G.
  • Basil getting bigger and a bit less tightly curled.
  • Measured PAR of more powerful GE grow max LED panel we are using in this PFC.
  • While checking fluid levels, I noticed that no fluid had been used the past few days and the water level in the tub is dropping, hrm…
    • Problem 1: the high water level sensor was not working. Simple to put it into and out of a cup of water while echoing the ROS topic that shows its value. Replaced it and now it senses and the brain knows to turn on the water fill peristaltic pump.
    • Problem 2: the water peristaltic pump is not pumping, it turns, but no fluid flows in the hose. The hose must have gotten pulled tightly and the pump melted it. See the picture of the gray marks on the hose and it is split. Also notice in the photo that the pump back needed to be rotated 180 degrees to line up properly and keep the rollers and hose in line. That could have caused the hose burn too.


  • Keep getting arduino_handler ERROR> AM2315 #1: Sensor responded with the wrong function code:255
  • Is the PFC running? Can't grab an image from /dev/video* either…
  • I rebooted it and now I get this from the brain: [WARN] [WallTime: 1502480303.894952] No serial device found on system in /dev/serial/by-id
  • Looks like something is bad in USB land…

plant week 7


  • Had to shut down RPi, power off, reseat the arduino USB and web camera cables, and now it all works.
  • Luckily Basil looks healthy, water level was only down a liter in the tub. See pics.
  • The environmental_data_point DB is 3.6G.


  • Yay! The PFC is still running :) Used the top web cam to grab an over exposed pic.
  • The environmental_data_point DB is 5.3G. Ouch! Need to upgrade this PFC to my #327 data fix to limit recipe values to writing a data point only when they change.



  • So, this morning when I went to check on the PFC, I found a large puddle :( It turns out the high water sensor was not working, so the PFC pumped the entire 3 liter bottle of water+nutrients into the tub which overflowed. I cleaned the sensor by just wiping it off and now it works again.
  • The environmental_data_point DB is 7.4G, so the fix to write recipe variables only when they change is working. Only .3G added in a day.


  • The environmental_data_point DB is 7.6G.
  • Getting common error: arduino_handler ERROR> AM2315 #1: Sensor responded with the wrong function code:255.
    • Need to un/re-plug the sensor. Common problem that results in the temperature getting stuck and leaving the chiller constantly on!

plant week 8


  • Could not ssh into the RPi this morning, had to reboot it.
  • Reseated the AM2315 I2C sensor connector on the relay board, to hopefully take care of the “255” issue from last Friday.
  • Someone (maybe that dork Rob) left the pH up and down hoses outside of the tub, resulting in pretty red and blue fluid making a mess.
  • After restarting, the ROS arduino_handler node crashed because of a failed internal connection issue.
  • The environmental_data_point DB is 7.6G (same as last Friday, but that is due to the PFC being FUBAR over the w/e).


  • The environmental_data_point DB is 7.9G
  • Air pump (for water aeration) isn't working, need to replace it tomorrow.


  • Replaced air pump.
  • Harvested some basil.
  • Refilled large 3.5L bottle with water and nutrients.


  • Updated code to the latest openag_brain develop branch to verify Pi/Arduino serial fixes.
  • RPi was unreachable, nothing in the ROS or debian system logs to show the cause.


  • RPi was unreachable AGAIN! I think there is a USB issue, but have no log evidence. Unplugged the side web camera.
  • The top web camera gives an VIDIOC_S_INPUT: Device or resource busy when manually using the fswebcam utility. So, something is wrong in general still with USB / web cams.
  • The water fill peristaltic pump hose is GREY, like it was almost worn out. But it is not leaking. Took the pump apart and moved the hose farther down. Design issue with these pumps?

For comparison

plant week 9


  • Crop is ready to harvest. Letting the grow continue until we are ready to start arugula.
  • Got error 255 from the AM2315 temp. sensor that messed up the arduino. Error started on 08-25. The water fill pump did not run and the heater was stuck on. Shut down, reset the I2C AM2315 connection on the relay board and the error went away.

plant week 10


  • PFC still running! 5 days unattended operation - a new record. Constantly getting error 255 from the AM2315, but that is not preventing the arduino sketch code from running. See the picture Caleb took for me.

plant week 12


  • Harvested basil and cleaned out PFC with bleach. See pictures for harvest.
contributors/test_grows/basil_1.txt · Last modified: 2017/09/19 19:21 by rbaynes