What tasks will each perform?
1. Collect sensor data
2. Send sensor data to Pi via serial
3. Control actuators (pump, solenoids, fans, LED)
1. Rx sensor data from Arduino
2. Tx settings for the actuators to the Arduino
3. GUI (Tkinter) to display sensor data and state of actuators on a touch screen. Allow users to change limits for the sensors. So e.g. set temperature range of 20-25C. If temperature out of range, alarm is triggered, and perhaps actuator is triggered. Allow users to change settings for the actuators e.g. spray for 1 min then off for 5 mins.
4. Save all our sensor data to MySQL databases
5. Send our sensor data to the web
6. Take images of the growing plants. These can be used in an ML model. See 7
7. ML: So we want to learn which nutrients, gas mix, temperature, humidity, spray condition, lighting condition, etc. result in the best plant growth or taste! I imagine users would label each dataset for a harvest as being 'good taste', 'nasty taste' etc. So we can after a while, and with lots of people using the homefarm, get an idea of which variables result in the best taste for each plant! Yes, this is a bit sketchy at present! I can't really imagine the Pi training these models. More likely we want to upload all the data to a cloud-computer with a GPU.