Introduction: Interface Moisture Sensor With NodeMCU

About: " Work until you no longer have to introduce yourself " Show some love on Instagram @makers_bee & Motivate me on YouTube @MakersBee

Hey, Makers!

In this Instructables, you will learn how to set up the Moisture sensor on your NodeMCU. And learn about how the sensor works based on the moisture level, and how to check output readings from the Serial monitor.

Step 1: List of Components

Here is the list of components required to get started with the Instructable,

Hardware Components

  • NodeMCU
  • Moisture sensor
  • Breadboard
  • Jumper Wires
  • Micro USB Cable

Software Components

  • Arduino IDE (installed with esp8266)

Step 2: Description

This Moisture Sensor can be used for detecting the moisture of soil or judge if there is water around the sensor, let the plant in your garden able to reach out for human’s help when they are thirsty.

This sensor is very easy to use, you can just simply insert in into the soil and read the data. With this sensor, you can make a small project that can let the plant send a message to you like ” I am thirsty now, please feed me some water.”

Step 3: How to Setup Moisture Sensor to NodeMCU

Wiring the Moisture sensor to the NodeMCU is really easy.

The wiring connections are made as follows:

Connect the two pins of the moisture sensor to the two pins on the Amplifier circuit using jumper wires.

Connect the Vcc from the Amplifier to the 3.3V pin on the NodeMCU.

Connect the GND pin to the ground (GND) pin on the NodeMCU.

Connect the Analog pin to the A0 pin on the NodeMCU.

Connect NodeMCU to PC via a USB cable.

After your completed with wiring connections, then insert the sensor into the soil or place it in anywhere you want.

(In this Instructable I have used water for the Demonstration)

Step 4: Preparing the Arduino IDE

After downloading the Arduino IDE navigate to

  1. File tab and then click on Preferences.
  2. In the additional Boards, Manager URLs add the following link (
  3. Click OK and then navigate to
  4. Tools - Boards - Boards Manager

In the search field type esp8266 > click the esp8266 by ESP8266 Community - Click Install

Now you have setup the Arduino IDE to work along with the NodeMCU.

Step 5: Save * Compile * Upload

  1. Goto Tools
  2. Board > NodeMCU 1.0 (ESP - 12E Module)
  3. Port ( Choose the right Port )

**Make sure you have your NodeMCU model selected and the correct serial port ticked (see pics). Then just click the Upload button**

Ready To GO

Step 6: Coding Time

int WET= 16; // Wet Indicator at Digital pin D0

int DRY= 2;  // Dry Indicator at Digital pin D4
int sense_Pin = 0; // sensor input at Analog pin A0

int value = 0;
void setup() {
   pinMode(WET, OUTPUT);
   pinMode(DRY, OUTPUT);
void loop() {

   Serial.print("MOISTURE LEVEL : ");
   value= analogRead(sense_Pin);
   value= value/10;

            digitalWrite(WET, HIGH);



       digitalWrite(DRY, LOW);

Upload this program to the NodeMCU by downloading the attached code "Moisture_NodeMCU.ino" below and check the output in the serial monitor.

Step 7: OUTPUT

You can see the serial monitor for the output reference. And I have interfaced LEDs to make the Instructable more attractive. You can also interface with any thing to make your project become AWESOME.

That's all makers!

I hope you found this instructable most useful.

You can contact me by leaving a comment. If you like this instructable probably you might like my next ones.

Thank You.

Makerspace Contest 2017

Participated in the
Makerspace Contest 2017