Rain Detector Using Arduino and Raindrop Sensor
2026-09-02 | By Ron Cutts
License: GNU Lesser General Public License Arduino ESP32
In this tutorial, we will learn how to detect rain using a rain sensor and make a sound using a buzzer module and OLED display and Visuino.
Watch the video.
Learn more about Visuino: What is Visuino
What You Will Need
Arduino UNO (or any other Arduino)
Visuino program: Download Visuino






The Circuit
Connect OLED Display pin[VCC] to Arduino pin[5V]
Connect OLED Display pin[GND] to Arduino pin[GND]
Connect OLED Display pin[SDA] to Arduino pin[SDA]
Connect OLED Display pin[SCL] to Arduino pin[SCL]
Connect Arduino 5V to piezo buzzer module pin VCC
Connect Arduino GND to piezo buzzer module pin GND
Connect Arduino digital pin 2 to piezo buzzer module pin S (signal)
Connect Arduino 5V to rain sensor module pin VCC
Connect Arduino GND to rain sensor module pin GND
Connect Arduino analog pin 0 to rain sensor module pin A0

Start Visuino, and Select the Arduino UNO Board Type
To start programming the Arduino, you will need to have the Arduino IDE installed from here: https://www.arduino.cc/.
Please be aware that there are some critical bugs in Arduino IDE 1.6.6. Make sure that you install 1.6.7 or higher; otherwise, this will not work! If you have not done so, follow the steps to set up the Arduino IDE to program Arduino UNO! The Visuino: https://www.visuino.eu also needs to be installed. Start Visuino as shown in the first picture. Click on the "Tools" button on the Arduino component (Picture 1) in Visuino. When the dialog appears, select "Arduino UNO" as shown in Picture 2


In Visuino ADD Components
Add "OLED Display" component
Add "Digital (Boolean) Inverter (Not)" component
Add "Delay" component



In Visuino Set Components
Double click on the DisplayOLED1 and in the elements window drag "Draw text" to the left side..
In the properties window set size to 2, text to: RAINING! and Y to 20
Close the elements windowSelect Delay1 and in the properties window change interval to 3000000



In Visuino Connect Components
Connect Arduino analog pin 0 to Inverter1 pin In
Connect Inverter1 pin Out to Delay1 pin Start and DisplayOLED1>Draw Text1 pin Clock and Arduino Digital pin 2
Connect Delay1 pin Out to DisplayOLED1>Fill Screen1 pin Clock
Connect DisplayOLED1 pin I2C Out to Arduino board pin I2C In


Generate, Compile, and Upload the Arduino Code
In Visuino, at the bottom click on the "Build" Tab, make sure the correct port is selected, then click on the "Compile/Build and Upload" button.

Play
If you power the Arduino UNO module, and drop some water on the rain sensor the LED display should start showing the text "RAINING!" and the buzzer module should make a sound.
Congratulations! You have completed your project with Visuino. Also attached is the Visuino project that I created for this; you can download it here and open it in Visuino: https://www.visuino.eu

