Introduction: Mushroom Monitoring System

To grow mushrooms effectively requires very careful monitoring of the environmental conditions so that heaters, fans and humidifying systems can maintain ideal conditions. After the monitoring system was set up, we initiated a short test run and started to notice some very interesting phenomena ..... and even succeeded in growing a few mushrooms!


  • PCBs
  • ESP32 wroom dev module
  • ESP32 Heltech LoRa 433 Mhz V2
  • Kingstate KSSGJ1028 buzzer
  • EBYTE E22-400M30S IPEX 433 MHz
  • Molex Picoblade 8 receptacle
  • 10 uF 0603 cap
  • 0.1 uF 0603 cap
  • 2K 0603 resistor
  • LED 0603
  • Sensirion Plantower Particulate sensor
  • SCD41 CO2 Sensor Breakout (Carbon Dioxide / Temperature / Humidity)
  • Solder Paste
  • Reflow oven
  • 40 mm waste water push fit pipe
  • 40 mm waste pipe push fit tank connectors x 2
  • 40 mm waste pipe push fit elbows x 8
  • 40 mm waste pipe stop ends x 2
  • Polycarbonate enclosure
  • 5v din rail mounted power supply
  • Din rail
  • 3mm stand offs + screws
  • 433 MHz LoRa Antenna
  • Ufl to SMA female pigtail
  • 40 mm 5v enclosure fan

The two sensor modules are both high quality items and the SCD41 senses true CO2 rather than deducing it from other gases present. The EBYTE module is a high powered 1 watt LoRa transceiver with it's own amplifier circuit onboard. The GERBER files for the PCBs are HERE, so just send them to your favourite PCB fab shop. The polycarbonate enclosure is best as the lid can be transparent and it's dead easy to drill the holes without cracking the plastic.

Step 1: Solder Up the PCB

The soldering is fairly easy, none of the components are particularly small and does not require a stencil although if anybody is worried about it, just order a stencil with the PCBs. The component locations are marked on the PCB, paste on the solder, place the components with some tweezers and throw into the oven. The CO2 sensor header is soldered by hand and the left hand side of the board where the 3 momentary switches are located is not currently used.

The ESP32 WROOM module is positioned on the underside of the PCB.

The enclosure is wired up with a pigtail lead from the EBYTE LoRa unit to an external antenna on top of the shipping container.

Code for the ESP32 MCUs and desktop computer is HERE.

Step 2: Data Flow

A 433 MHz signal comes from the antenna on top of the mushroom container and is picked up in the farm office. A Heltech ESP32 V2 picks up the transmissions and re-broadcasts them via serial USB cable to a desktop computer. This computer can display the results graphically ,in a terminal and also transmits the data to a cloud based database which is linked to a webpage. Setting up the database is beyond the scope of this article.

Step 3: Testing the Device

The device did not run too well off a USB cable but due to the heavy current load, but worked fine off a 5v battery.

Step 4: Install PCB and Sensors Into Enclosure

The sensor array relies on the 40 mm pipework to bring air from the environment gently into the enclosure without bringing in too much condensing water. As the air moves down the intake pipe it will enter a new environment that is slightly warmer than outside, thus preventing condensation. The heat is mostly created by the 5 volt power supply.

Two 47 mm holes are to be drilled with a hole-saw into the front of the enclosure. Dont worry, polycarbonate wont fracture! The waste pipe tank connector can now be screwed into place.

The enclosure is strapped to some of the shelving with cable ties and the rest of the pipework pushed together and supported with cable ties. The shelving is then placed inside the Fruiting Room.

Step 5: Installing Into Shipping Container

The shelving mounted sensor module is positioned in the center of the fruiting room.

Step 6: Results

The results can be seen live at: . The graph was created using AMCharts.

We ramped up the Fruiting Room temperature to 12 degrees C and installed 25 mushroom blocks to do an initial 1 week test. This is not the ideal temperature, but it was averaging about 1 degrees C outside and we did not want to waste a whole load of electricity unnecessarily.

The first thing that we noticed was that the 'shrooms seemed to get suffocated at about 70 ppm CO2/10 - they would respire quite happily up until that level but then the increase in CO2 level just stopped, which presumably means the 'shrooms became stifled.

Next, we noticed some horrendous particulate spikes which seemed to be out of sync with the fan and heater. Turned out we were picking up smog from the house next door! We looked at the spec. of the filter on the intake fan and found out it was 'only' 99% effective in removing 0.3 micron particles as this smog should really have been filtered out.

Finally, we took a reading from the electricity supply box and realised we had consumed a massive 64 kwh of juice at a total cost of £22.40. We quickly turned the heater down and it's now set to about 3 degrees C to keep the fruiting room from freezing up and the 'shrooms in stasis ready for the next test.

Lastly, our blocks of fruiting shiitake mushrooms did actually create mushrooms during the short 1 week test. Some of the other blocks in the incubation stage looked like they were developing more white mycelia as well. This confirms that the rise in CO2 levels were probably created by the mushrooms inside the container and not by some random outside factor.

Anything Goes Contest

Participated in the
Anything Goes Contest