This project has been borne from the Surrey University Internet of Plants project. We needed a WiFi node that would monitor environmental sensors and publish the values to the Internet of Things. In addition, we also wanted to control watering valves and other actuators. This allows us to create a cloud application that would automate the watering and care of our plants.

While planning the system, we identified that a modular approach would be most useful, and allow for different configurations to suit particular applications - such as windowsill potted plants, hydroponics, allotments and polytunnels.

The system is based upon an ESP8266, but has no constraints as to what firmware or software should be run on it. We will provide an open source solution, but you are free to deploy whatever you like to the hardware.


Below is a list of the planned modules. We will expand this list when we can think of more, and please get in touch if you have any ideas you would like us to consider - or, once the project is running, feel free to contribute your own designs!

  • The master module will be approximately 6 cm square and 2 cm thick. It will contain an ESP8266 variant and a multiplexer to allow 8 digital sensors to be connected to it. The ports will be based on the rugged green PCB terminal block connectors often used in industrial environments. The power supply can be from 5V to 24V and will be propagated through the module expansion connector to allow other nodes access to the supply voltage (eg 24V valves). The expansion connector also provides 3.3V, GND, I2C and 1-Wire connections. The RF connection for the WiFi is brought out to an RP-SMA connector, which can be fitted with a small 'rubber duck' antenna or a larger one for longer range links. The sensor connectors provide 3.3V, SDA, SCK, GND, with the SCK lines tied as is allowed via the multiplexing. The reason we have decided to do this is because the most difficult sensor we are using is an SHT11/22, which is essentially a single address I2C sensor. This means we have to multiplex. Other options that are possible with this connector are 1-Wire/I2C thermocouples, ADCs and other sensors.
  • The valve module contains a bank of eight high current outputs suitable for driving solenoid valves at the chosen supply voltage. This node is made of an I2C digital multiplexer and a bank of FET switches.
  • The weather module is intended to interface with cheap weather station components from Maplins and allow the weather to be monitored. Related parts are the anemometer, wind vane, and rain sensor. There will also be a connection for a barometric sensor like this or this.
  • The growlight module will provide an output to common variants of LED strip in order to provide grow lights in polytunnel or similar environments.
  • The solar module provides a 0.5W solar cell and LiPo battery to power the Florio node. This is designed for small systems (typically windowsill based but perhaps polytunnels for sensing only).