Email notification with soil moisture sensor

The EzloPi smart devices provide automation through simple, customizable use with our open-source EzloPi platform, making daily life easier and improving human-machine interactions.

Before moving into this example, it is very important to know about the device registration, provisioning and converting the ESP32 device into an EzloPi device along with knowledge of Web Flasher, MiOS Mobile Application for Android/iOS and the MiOS Web Application.

1. About this example

In this project, we seamlessly integrate a soil moisture sensor with the EzloPi Smart Device. We've created a system that provides real-time insights into the moisture levels of your soil. Receive prompt email notifications that keep you informed and in control, also monitor the moisture levels of the soil through the MiOS user-friendly interface, ensuring optimal conditions for your plants, wherever they may be. The EzloPi Smart Device becomes your intelligent assistant allowing integration of automated watering systems, offering timely updates and helping you create the perfect environment for your plants to thrive.

2. Project Video Demonstration

Welcome to the project demonstration video section. The following video showcases the key aspects of Send automatic email notification using soil moisture sensor on EzloPi Platform, providing a visual walkthrough of its implementation.

3. Circuit Setup & Interfacing

The following components are required for interfacing using the EzloPi device:

  • ESP32 as EzloPi smart device.
  • FC-28 Soil Moisture Sensor Module.

The wiring diagram is represented as follows:

The following connections are made in order to complete the circuit setup.

From ESP32 to the Soil Moisture Sensor Module:

  • Connect the 3v3 pin from ESP32 to the VCC terminal on the moisture sensor module.
  • Connect GND to the GND Pin.
  • Connect D33 from the ESP to the signal (A0) pin.

From the Sensor Module to the FC-28:

  • Connect the (+) from Soil Moisture Sensor Module to one side of FC-28
  • Connect the (-) from Soil Moisture Sensor Module to the other side of FC-28

4. Interfacing the Soil Moisture Sensor with EzloPi Web Flasher

1. Set up your device/hardware by visiting

  1. Log in using the credentials which you just set earlier while signing up.
  1. Now, click on the Connect Device button and a pop-up window will appear.
  1. Now, select COM Port to which your ESP32 device is connected. In our case, the COM3 port is used.

Click Connect.

  1. If you are new to this and it's your first time configuring, select Create new Device ID. Enter Wifi SSID and Wifi Password.
  2. In the Device Configuration, tab click on Analog Input.
  1. An Analog Input window will open for inputting the following parameters:
  • Set a device name of your choosing. In our case we set it to Soil Moisture Sensor.
  • Set device Sub Type to Soil Moisture Sensor
  • Set ADC input pin to 33.
  • Set the Resolution to 10-bit
  • Now Click the Apply button.
  • After clicking the apply button you can see a table of your setting in the device configuration tab.
  • Press the Flash Device button.
  1. A window will appear on the bottom right side of the screen displaying “Please press BOOT button while flashing begins.”
  1. Hold the BOOT button down until the next window appears on the bottom right side of the screen which says “Installation prepared. Please release the boot button now.”
  1. Release the BOOT button from your ESP32 when this pop-up on the bottom right window appears.
  1. After some time, a popup will appear saying Device Flashed Successfully! This means that your device has been set up successfully.

5. MiOS Web Application

  1. After configuring the controller with the EzloPi web flasher, head to
  1. Use the same credential to log in that you used for configuring the controller with the web flasher.
  1. In the dashboard, you can also see the tile labeled as soil moisture sensor, which is showing 41% moisture level of the soil sample.
  2. Here as you can see in the example given above, we can see the soil moisture sensor tile. The tile shows the Soil moisture  levels being detected by the sensor.


  1. On the left side of the screen under Automation, click on MeshBots.
  1. On meshbot screen, click on Create new MeshBot button present on the top right corner of the screen.
  2. After clicking on Create new MeshBot you will see this now under Automation MeshBot click on Cloud.
  1. On the next screen you will see that we can create a name of our choosing, in this case we write it as Test001.
  1. In the trigger tab you can set the TRIGGER for your device and in the ACTION tab you can set the action to be performed based on the trigger which you have created.
  1. Set these things in TRIGGER section:
  • Set Node Type to Device.
  • Set the Node to Soil Moisture Sensor.
  • Set the Capability to Moisture.
  • Set the variables to percentage.
  • Set the Comparator to Greater (>).
  • Set the Value Type to value.
  • Set the value to 60(It will trigger when humidity is greater than 40).
  1. Set these values in the ACTION section.
  • Set Controllable Type to Notification.
  • Set the User to Your user account, in our case the user account is Tayyab.
  • Set the Channels to email,push.
  • Set the Subject to Soil Moisture Update.
  • Set the Message body info to Soil Moisture has been increased.
  • After clicking the apply button you can see a table of your setting in the Current configuration tab.
  1. After clicking the save button you can see this screen on the top right corner of the screen.
  1. Here you can see your saved MeshBot. Now click on Dashboard.
  1. Here in the MiOS web dashboard, you can see the humidity is below 40%. In this scenario, email will not be sent to alert the user.
  1. Now, as you can see that Soil moisture has increased to 42% which is more than 40 %.
  2. In this scenario, an email is generated to the user’s gmail account which can be seen below.

5. MiOS App

You can download the MIOS Android app from the Google Play Store and Apple App Store.

Google PlayApple App Store

  1. After downloading the app, proceed to install the application and open it.
  1. Using the MIOS mobile application, create a new Ezlo Cloud account using the sign-up option. If you already have an account, you may proceed to log in.
  1. After successfully logging in, you will be able to see the number of controllers connected such as a lamp, fan, or any other device in the MiOS app. Tap on any controller of your desired ID:
  1. You will be able to see the status of your controller whether it is online or offline. Access the device dashboard, and tap the device. The following view of the dashboard will appear:
  1. After opening the dashboard, you will be able to see the tile of your connected device.
  1. Here, as you can see in the MiOS mobile app dashboard, the soil moisture sensor tile, which shows the moisture level as 40% of the soil sample on which the sensor was used.
  1. Similarly, as you can see in the MiOS mobile app dashboard, the soil moisture sensor tile, which shows the moisture level as 41% of the soil sample on which the sensor was used.
Buy Components

eZlopie Products A single-channel 5V relay module $00.00

eZlopie Products Momentary switch $00.00

eZlopie Products Level Shifter Module (BSS138) $00.00

eZlopie Products ESP32

eZlopie Products AC Lamp and Holder