Openag_brain is not working


Having come from a ‘test first’ background, this is a little frustrating that things are assumed to work. There are however several commands (scattered around in the documentation) that will help here. I documented some of them here:

The wiki on Docker has some useful commands for checking that Docker is correctly running. If things are good here, go to the next level down and check out the Ros. Shell into Docker, initializing the bash session, and checking the Ros topics. Much more than this requires setting up specific scripts for particular fixtures, etc.

It would nice to see a full regression test for the standard v2.0 computer, but it looks like it still needs to be built (do you want to volunteer?).


This is probably less than what you had in mind, but have you seen this repo that Jake made for testing out the hardware?

I think the scripts are mostly for making sure that the Arduino’s sensors and actuators are wired up correctly. It sounds like your problem might be more about keeping things running between the Arduino and ROS though, so maybe that won’t help much.

If you get stuck pursuing your current approach, maybe you could try repurposing the hardware to run Jake’s openag_brain_box code instead:


Thank you for the replies. As it turns out I was running into the same problem that @webbhm addressed in the “Rosrun openag_brain flash: timeout and errors” thread. I added a snippet of the error message text I was receiving so hopefully future Google searches eventually pop into that thread.

@webbhm - I’d love to get to the level of understanding with this system so that I could write a suite of regression tests. My initial goal is to build enough of the system so that I can continuously harvest 3-4 heads of lettuce a week. In order to create a test suite I suspect that I would need a dev setup separate from my production setup. The dev setup might be just fine with just a PI and Arduino. Paired with the Arduino could be a breadboard that would allow for testing of inputs with switches and outputs with LEDs. Do you have two setups?


I have several Pis and two Arduinos, all of my sensors are on breadboards.

We may be thinking of two different definitions of testing.

  1. Static testing of code (sensors and infrastructure) during development.
  2. Dynamic testing of the system while it is running

I have been thinking of the first, while I think you more of the second.
The software and Pi don’t know (or care) about whether the sensors are wired through a breadboard, or attached via a custom shield; hence I can get by running pieces of the Food Computer, without actually having a Food Computer.

This is getting off topic, but if you just want to grow a head of lettuce …