Microwth - automated microgreen farm

Microwth enables you to grow your own soilless microgreens indoors to add to your meals

Public Chat
Similar projects worth following
The Microwth is a soilless indoor microgreen farm with build-in lighting and watering pump, the user interface provides an easy way to set a custom watering and lighting cycle - or you could use the default values to grow your greens. In the future this platform could be extended to different growing techniques to grow bigger crops like lettuce. The goal of this project is to create an open source platform to easily grow microgreens with a perpetual harvest. To reach this goal I will test different lighting solutions, create multiple designs with different materials, optimize the growing cycle and create software to easily manage the system(s).

Check out my Instagram page for more frequent updates:

The goal with Microwth to help you grow microgreens, salad greens and herbs indoors with the help of automation. There's a pump installed to keep the grow medium moist, lighting to provide enough light to grow them as quick as possible, and an user interface with internet connectivity to create custom grow cycles with notifications when there are any actions you need to take.

Project goals:

There are a couple of project goals that we have in mind and are listed below:

  • Design reliable standalone hardware to control lights and watering
  • Good looking design that is easy to produce and functional
  • Multiple size for different needs
  • Software for offline functionality
  • Software for online functionality
  • Web app to manage Microwth farm(s) and have greater control over the process
  • Create grow cycles for different types of plants

It would also be nice to set up a camera to take pictures periodically ans test if it's possible to identify growth problems, speed and height of the plants.

Microwth construction


The system is controlled by a Raspberry pi with a custom Garden Automation HAT. This board takes 12V and converts it to the required 5V to supply the RPi. This 12V power is also used to power the lamp and pump and is controllable using the RPi GPIO driving two MOSFETs. The I2C bus available on the 4 pin JST connector can be used to connect a BME280 sensor and an optional HMI board. The three-pin JST connectors are used as a breakout for two OneWire interfaces that can be used for temperature sensors.


The current design uses a peristaltic pump with a 3x5mm tubing connection and that could approximately pump 90 ml/min at 12V.


The best lighting options are currently being explored but they will most certainly be assembled in a light unit with passive cooling that is easily mountable.

Plant types


Microgreens are young vegetables with a high nutritional value and a great color and flavor profile. They are often seen as luxury food because they have a short shelve live and should be served fresh. That's why they are generally served in restaurants or shipped in containers without harvesting them. These small plants can be grown from almost all available seeds but a few common ones are sunflowers, broccoli, kale, and arugula.

Salad greens

Salad greens are plants grown for their leafs also called leaf vegetables or leafy greens. These plants can be used in salads but could also be used in stir-fried, steamed or stewed meals and they provide a lot of nutrition. Plants that could be grown under this category are endive, arugula, spinach, and etc.


The definition of herbs is up to discussion but the use for most of these plants is to provide flavoring for food and drinks. They could be harvested and used fresh or dried, in the Microwth system it should be possible to grow mint, basil, parsley, coriander and hopefully many more.

  • Log #6 development update

    bram12/22/2019 at 16:38 0 comments

    I received another pair of lights recently and installed them in one of the test devices, I will be testing it with some microgreens after I've installed a camera to track the growth. Another thing I am currently working on is a vacuum former to make custom trays for different plants, I would like to make some Microwth's with different heights to grow leafy greens and herbs.

    The first results from the vacuum forming look promising, but I still need to settle on a design to vacuum form. I wanted to create a tray design with a flat lid to make it easier to create new ones for different growing mediums/techniques. However it seems like this won't be the easiest to vacuum form, I will be updating the design to see if the results will improve.

  • Log #5 First grow

    bram12/08/2019 at 12:26 0 comments

    Grow results (cress)

    This week I grew some microgreens in the Microwth without intervention, there were a few glitches that seems to be fixed by adding an adequate power supply and shielding/filtering to the pump. The results of after a week are really nice as can be seen above.


    I've uploaded all the hardware and software files to Github, set up proper version control and added some issues to work on. The current master branch aren't production ready files but I will continue getting the files ready in the dev branch.


    I received the tee barbs and designed a bracket to nicely mount the tubing. The next feature to add to the design is a water reservoir, I've been looking for something but I am not quite sure where to mount it.

    The 3D files can be found on the Github page and are available in step and ipt format. An assembly instruction will be made but I will focus on new functionality first.

    Cloud software ideas

    The standalone software is fully working and only a few enhancements should be made, that's why I will start looking into ways to connect the systems to the internet for more precise control and data logging.

    I would like to create something to help with the planning, send reminder and warnings. For this I would need a web application with an API to connect the Microwth to.

  • Log #4 Let's start growing

    bram11/30/2019 at 11:41 0 comments

    Last week I installed the first motor controller and wanted to start growing, but when I was testing the device I ran into some issues. I wasn't able to upload any program to the ESP it did still run (unlike the other time when I broke the ESP ;)) but it started spitting out garbage over serial after a few seconds. When I took it apart and installed a new controller the issues for this unit were resolved. So I started testing the "broken" controller and to my surprise, I was able to upload code again. I hypothesize that the power source is a bit unstable while the motor is connected and that this caused some issue when I uploaded some software, however when I disconnected only the motor I couldn't get it working either. When I was disconnecting it further I did found a power connection that might have been the culprit, but I don't know for sure. One thing is for sure and that is that there's some noisy power when the pump is running because the OLED starts glitching.

    At least the first version is working I added a pull-down resistor to the mosfet to keep the pump off when the system is powered up, and I ran the first successful watering test. I've just sown some microgreens to grow the coming week.

    Sown trays stacked and weighted to germinate in the dark and establish a good rooting inside the growing medium.

    First watering test.

  • Log #3: pump controller

    bram11/22/2019 at 23:01 0 comments

    I finally received the PCA9536 and assembled one of the pump controller boards. The board is mounted in the bottom area with the help of some 3D printed brackets. The board is connected to the 12V supply and the i2c interface that is routed in a slot to the controller. The frame used in this build didn't have this feature yet so I've hand milled it into the frame, the new design has this slot milled with the CNC making it less noticeable.

    When I connected the controller I found out that the default pin state of the PCA9536 switches the MOSFET. I am currently using a workaround in the software, but this will be fixed in the next iteration of the hardware because it's currently possible that the pump would start pumping if the system crashes.

    I am currently working on debugging the code and once that's finished I will start testing the automated growing feature and new light with some real microgreens, I will keep you updated.

  • Log #2: Sofware and pump update

    bram11/16/2019 at 19:12 0 comments

    Software changes

    Centered time

    The software now includes a setup to start a growth, this settings goes through the lighting and pump settings. I couldn't quite decide which settings would be best for the pump so I've implemented an interval timer that turns the pump on for a set amount of time.

    This new code version (available on Github) has been cleaned up and the interface is easier to use due to a less nested interface. I've also centered all the text on the display.

    Next up will be adding the pump output over I2C and adding labels in the grow setup.

    Pump and barb

    3D printed tee barb

    I have ordered some tee barbs to split the pump output to all the trays, but since these aren't in yet I will be using a 3D printed barb it's a bit leaky but that's something some epoxy will fix :) I am also waiting the the PCA9536 but I expect these sooner then the barbs so I will just be waiting on them. In the meantime I've been testing the pump to see what happens when you split the pump output. The first results show a 25% difference between the two output, this is pretty significant so I will try using a barb design more like the ones I've ordered to see if that makes any difference.

  • Light tests #1

    bram11/11/2019 at 20:10 0 comments

    The first lights I will test are these two Chinese led strips:

    These lights don't have much information on the seller page but they are advertised as grow lights. I will be growing some microgreens under them to see how they perform. microgreens don't need a lot light and too much might even result in too spicy microgreens so they also need to be tasted.

    I started by testing the current draw when I noticed that the current started rising when left on for a while. So I made a small setup to measure the temperature and current at the same time. The results(below) show that both LEDs get a steady temperature/current draw at 44c, and that it might be worth it to add some passive cooling especially for the full spectrum LEDs.


  • Log #1: Design rev 1

    bram11/07/2019 at 17:50 0 comments

    Design requirements

    The design of the Microwth has to meet a couple of design requirements:

    • The whole system has to be easy to manufacture
    • The design has to be good looking
    • The device has to be easy to use
    • The devices should be stackable to create bigger farms

    With these thing in mind I designed and manufactured the first version, that will be used to test different electronic configurations.

    Design version 1

    The first design on the right allowed for stacking, but after manufacturing and testing proved to have some design flaws.

    • The growing trays in this design are hard to remove because there's no easy way to lift the trays up.
    • The current lights gave a comparable result to the natural lights but the height could be reduced to increase the light intensity for better grow results or reduce power
    • The closed side panels create a closed look and illusion that it takes in a lot of room, it might also look better if the plants are more visible.

    Improvements in the next iteration

    In the next version, I will include cut-outs to easily remove the grow trays, the height will also be reduced to lower the lights, and there will be an extra cutout in the wooden side panels to create a more open design. This version will also include a pump to automate watering for this the bottom height had to be increased to fit the pump.

View all 7 project logs

Enjoy this project?



sunny wrote 11/19/2019 at 12:36 point

I am very interested in agricultural automation production. After you release all the information, I will make one. What chip did you use? I have no experience in burning STM and other chips

  Are you sure? yes | no

bram wrote 11/19/2019 at 17:42 point

Great to hear! I am currently using a esp8266 because I would like to add a web app and/or app that could send notifications and add guidance to the growing process in the future.

These chips are easy to program using just an UART port. 

  Are you sure? yes | no

sunny wrote 11/20/2019 at 11:00 point

OK, it should be OK for me

  Are you sure? yes | no

sunny wrote 11/19/2019 at 12:33 point

Lighting I recommend Philips agricultural sodium lamp, the minimum power seems to be 400W, with special spectral settings, suitable for agricultural production.

  Are you sure? yes | no

bram wrote 11/19/2019 at 17:32 point

Hi, thanks for the suggestion. Those lamps are quite nice, however they seem a bit overkill for just microgreens and create a lot of heat, they might be interesting in the future for other crops! On the subreddit r/microgreens I found some commercial growers that have great succes with just some regular t5 led lights from Amazon.

Phillips does however also have some led options, they are quite expensive but it would be interesting if I could get my hands on some of them to compare to the chinese lights I have.

  Are you sure? yes | no

sunny wrote 11/20/2019 at 10:59 point

Yes, Philips also has LEDs for agriculture, which are very expensive and don't seem to be sold separately.

  Are you sure? yes | no

davedarko wrote 11/10/2019 at 10:46 point

Already enjoying the great case design!

  Are you sure? yes | no

Dan Maloney wrote 11/08/2019 at 16:29 point

Interesting. I've always wanted to do something similar for my chickens, to sprout grains for them so they have fresh greens in the winter. I'll be watching to see how this turns out.

  Are you sure? yes | no

bram wrote 11/10/2019 at 10:29 point

That's an interesting application I hadn't thought about, have you grown sprouts for chickens yourself? How much of these sprouts do you need to feed your chickens or are they additional?

  Are you sure? yes | no

Dan Maloney wrote 11/11/2019 at 15:58 point

I haven't actually ever fed sprouted grains because I never built the sprouting system. Those vary considerably, from stacks of 5-gallon buckets to trays similar to your design. Basically the idea is to take some kind of seed - usually wheat berries - and spread it out in a layer in some kind of shallow container. You add just enough water to hydrate, then let it go a few days to a week, adding water as needed. The grains sprout and grow a bit into a tangled mat, which you throw into the chicken pen for the, to devour - it's like crack to chickens. If you're clever about it, you can sort of "nest" sproutings so that a fresh batch is coming ripe every day, so the chickens always have fresh grains through the winter. Eggs from chickens eating fresh greens are much better than chickens fed soy and corn based feed. Even if you just supplement their regular scratch grains and feed with sprouts, it really helps.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates