// #define RAIN_ANALOG 34
// #define RAIN_DIGITAL 16

// void setup() {
//   // put your setup code here, to run once:
//   pinMode(RAIN_ANALOG, INPUT);
//   pinMode(RAIN_DIGITAL, INPUT);
//   analogReadResolution(10);
//   Serial.begin(9600);
// }

// void loop() {
//   // put your main code here, to run repeatedly:
//   Serial.print("Rain amount: ");
//   Serial.println(analogRead(RAIN_ANALOG));
//   if (digitalRead(RAIN_DIGITAL))
//     Serial.println("It's raining!");
//   delay(1000);

// }

/*
 * This ESP32 code is created by esp32io.com
 *
 * This ESP32 code is released in the public domain
 *
 * For more detail (instruction and wiring diagram), visit https://esp32io.com/tutorials/esp32-rain-sensor
 */

#define POWER_PIN 32  // ESP32's pin GPIO32 that provides the power to the rain sensor
#define DO_PIN 13     // ESP32's pin GPIO13 connected to DO pin of the rain sensor

void setup() {
  // initialize serial communication
  Serial.begin(9600);
  // initialize the Arduino's pin as an input
  pinMode(POWER_PIN, OUTPUT);  // configure the power pin pin as an OUTPUT
  pinMode(DO_PIN, INPUT);
}

void loop() {
  digitalWrite(POWER_PIN, HIGH);  // turn the rain sensor's power  ON
  delay(10);                      // wait 10 milliseconds

  int rain_state = digitalRead(DO_PIN);

  digitalWrite(POWER_PIN, LOW);  // turn the rain sensor's power OFF

  if (rain_state == HIGH)
    Serial.println("The rain is NOT detected");
  else
    Serial.println("The rain is detected");

  delay(1000);  // pause for 1 sec to avoid reading sensors frequently to prolong the sensor lifetime
}
$abcdeabcde151015202530fghijfghij
esp:0
esp:2
esp:4
esp:5
esp:12
esp:13
esp:14
esp:15
esp:16
esp:17
esp:18
esp:19
esp:21
esp:22
esp:23
esp:25
esp:26
esp:27
esp:32
esp:33
esp:34
esp:35
esp:3V3
esp:EN
esp:VP
esp:VN
esp:GND.1
esp:D2
esp:D3
esp:CMD
esp:5V
esp:GND.2
esp:TX
esp:RX
esp:GND.3
esp:D1
esp:D0
esp:CLK
rain-sensorBreakout
chip1:VCC
chip1:GND
chip1:DO
chip1:AO
servo1:GND
servo1:V+
servo1:PWM
bz1:1
bz1:2