ESP32 - Rain Sensor - Servo Motor
We are going to learn how to program ESP32 to control the servo motor if the rain is detected. In detail:
- If the rain is detected, ESP32 rotates servo motor to 90 degree
- If the rain is not detected, ESP32 rotates servo motor back to 0 degree.
Hardware Used In This Tutorial
|ESP-WROOM-32 Dev Module
|USB Cable Type-C
|(Recommended) ESP32 Screw Terminal Adapter
Or you can buy the following sensor kit:
|DIYables Sensor Kit 30 types, 69 units
Introduction to Servo Motor and Rain Sensor
Unfamiliar with servo motor and rain sensor, including their pinouts, functionality, and programming? Explore comprehensive tutorials on these topics below:
This image is created using Fritzing. Click to enlarge image
If you're unfamiliar with how to supply power to the ESP32 and other components, you can find guidance in the following tutorial: How to Power ESP32.
ESP32 Code - Rain Sensor Controls Servo Motor
- If this is the first time you use ESP32, see how to setup environment for ESP32 on Arduino IDE.
- Do the wiring as above image.
- Connect the ESP32 board to your PC via a micro USB cable
- Open Arduino IDE on your PC.
- Select the right ESP32 board (e.g. ESP32 Dev Module) and COM port.
- Click to the Libraries icon on the left bar of the Arduino IDE.
- Type ServoESP32 on the search box, then look for the servo library by Jaroslav Paral. Please be aware that both version 1.1.1 and 1.1.0 are affected by bugs. Kindly choose a different version.
- Click Install button to install servo motor library for ESP32.
- Copy the above code and open with Arduino IDE
- Click Upload button on Arduino IDE to upload code to ESP32
- Move your hand in front of sensor
- See the change of servo motor
Making video is a time-consuming work. If the video tutorial is necessary for your learning, please let us know by subscribing to our YouTube channel , If the demand for video is high, we will make the video tutorial.