Pi Grow Moisture Sensors without Pi Grow Hat

I plan on using the pi grow moisture sensors connected to a pi4 and not a pi zero. I also want to use more than 3 moisture sensors so I didn’t buy the pigrow hat for both the above reasons. On the product page it states that the sensors can be used without the pigrow hat.

Pinout: https://cdn.shopify.com/s/files/1/0174/1800/files/moisturesensorpinout.png?v=1600423302

Now my problem is the pinout doesn’t make any sense so I don’t know which of the 3 pins in the sht connecter is vdd, gnd and signal (I’m guessing signal is middle based on the pinout but lost with the others) can anyone help me?

I have one other question, can the sensors be plugged direct into the gpio pins and read? Or will I need to use an ADC? I can’t find if they are analog or digital sensors

Many thanks

When looking at the sensors from the same angle as the shop photo the pins, from left to right, are GND, Data, VDD. The red pads on the pinout diagram are the pads where the connector attaches to the boards!

They are digital sensors that give out a sequence of pulses - you can read the moisture level by hooking the data pin up to a GPIO and monitoring the frequency of the pulses (you can see how Grow does it here).

1 Like

Awesome thanks alot hel that’s perfect

I had seen the code in git and was going to try that anyway before buying an ADC but thought I’d ask whilst I had the other query

Hey, i’m also trying to hook up these moisture sensors to a GPIO. Could you just clarify which pins I could use for it (i’m new to this!)?
I’ve looked at the raspberry pi pinout and hoping to connect it like this:

  • GND to pin 9
  • VDD to pin 1
  • Data to pin 3

Additionally, any idea how I would go about connecting multiple sensors to the pi? Do they all have to be individually connected to the GPIO pins, or is there some kind of board I could wire them all into?
Thanks in advance!

Ahoy Ben! You might find this pinout diagram to be helpful - it shows what pins the Grow HAT uses (and thus how the software expects you to have everything wired up).

Yes, each sensor will need the data line connected to a different GPIO. If you hook them up to the pins that Grow uses (moisture sensor 1 is physical pin 16/GPIO 23, for example) you should just be able to read them with this simple example, and you won’t have to make any code changes.

I mean, we made this fancy HAT to deal with all the wiring… ;) Alternatively, if you wanted to transfer your wiring to something that’s more permanent than a breadboard, you could wire up a custom board on a mini protoboard or one of Adafruit’s Proto HATs?

Ah that’s fantastic! Thank you so much for the help!

Hi I am trying to use a single Grow moisture sensor with a Pico W in development and then later with an Enviro Indoor board. To use the code listed above what pin outs do I have to connect to on the Pico W? I don’t think it is the same as the PiHat.

There’s a schematic for Enviro Grow (Pico W Aboard) here: https://cdn.shopify.com/s/files/1/0174/1800/files/enviro_grow_schematic.pdf?v=1664452062 - on the Pico version the data lines of the moisture sensors are connected to GP13, GP14 and GP15.

The Enviro Grow code that reads the moisture sensors is here: enviro/grow.py at main · pimoroni/enviro · GitHub