#include <OneWire.h>
#include <DallasTemperature.h>

#define pin_pmp_smpt_01 23
#define pin_pmp_smpt_02 22
#define pin_pmp_smpt_03 21

const byte label_01 = '1';
const byte label_02 = '2';
const byte label_03 = '3';
const byte padam_semua = 'o';
const byte nyala_semua = 'f';

// #define oneWireBus 4
// GPIO where the DS18B20 is connected to
const int oneWireBus = 5;    
const int LED_In = 2;    
char LED_stat;

OneWire oneWire(oneWireBus);
DallasTemperature sensors(&oneWire);

void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  Serial.println("Hello, ESP32!");

  pinMode(LED_In, OUTPUT);

  pinMode(pin_pmp_smpt_01, OUTPUT);
  pinMode(pin_pmp_smpt_02, OUTPUT);
  pinMode(pin_pmp_smpt_03, OUTPUT);

  sensors.begin();
}

void loop() {
  // put your main code here, to run repeatedly:

  sensors.requestTemperatures(); 
  float temperatureC = sensors.getTempCByIndex(0);
  // float temperatureF = sensors.getTempFByIndex(0);
  Serial.print(temperatureC);
  Serial.println("ºC");

  if (temperatureC < 30){
    digitalWrite(LED_In, HIGH);
  } 
  // else {
  //   digitalWrite(LED_In, LOW);
  // }
   else if (Serial.available() == 0){
    LED_stat = Serial.read();

    Serial.println(LED_stat);

    switch(LED_stat) {
      case padam_semua:
        digitalWrite(pin_pmp_smpt_01, HIGH);
        digitalWrite(pin_pmp_smpt_02, HIGH);
        digitalWrite(pin_pmp_smpt_03, HIGH);
        break;
    case nyala_semua:
      digitalWrite(pin_pmp_smpt_01, LOW);
      digitalWrite(pin_pmp_smpt_02, LOW);
      digitalWrite(pin_pmp_smpt_03, LOW);
      break;
    case label_01:
      digitalWrite(pin_pmp_smpt_01, LOW);
      digitalWrite(pin_pmp_smpt_02, HIGH);
      digitalWrite(pin_pmp_smpt_03, HIGH);
      break;
    case label_02:
      digitalWrite(pin_pmp_smpt_01, HIGH);
      digitalWrite(pin_pmp_smpt_02, LOW);
      digitalWrite(pin_pmp_smpt_03, HIGH);
      break;
    case label_03:
      digitalWrite(pin_pmp_smpt_01, HIGH);
      digitalWrite(pin_pmp_smpt_02, HIGH);
      digitalWrite(pin_pmp_smpt_03, LOW);
      break;
  }
  }
  else {
    digitalWrite(LED_In, LOW);
  }


  delay(1000); // this speeds up the simulation

}
esp:EN
esp:VN
esp:VP
esp:D34
esp:D35
esp:D32
esp:D33
esp:D25
esp:D26
esp:D27
esp:D14
esp:D12
esp:D13
esp:GND.2
esp:VIN
esp:3V3
esp:GND.1
esp:D15
esp:D2
esp:D4
esp:RX2
esp:TX2
esp:D5
esp:D18
esp:D19
esp:D21
esp:RX0
esp:TX0
esp:D22
esp:D23
Loading
ds18b20