#include ยด #include #include SoftwareSerial BTSerial(4,5); RtcDS3231 Rtc(Wire); int sensorPin = A0; int sensorValue = 0; int percent = 0; int Pump = 4; int Recieved = 0; int Pump_state = 0; void setup() { Serial.begin(9600); pinMode(Pump, OUTPUT); Rtc.Begin(); Rtc.Enable32kHzPin(false); Rtc.SetSquareWavePin(DS3231SquareWavePin_ModeNone); BTSerial.begin(38400); } void loop() { digitalWrite(Pump, LOW); sensorValue = analogRead(sensorPin); percent = convertToPercent(sensorValue); printValuesToSerial(); delay(1000); RtcTemperature temp = Rtc.GetTemperature(); if(BTSerial.read() > 0) { Serial.print(BTSerial); } if(Serial.available() > 0){ Recieved = Serial.read(); } if(Pump_state == 0 && Recieved == "1") { digitalWrite(Pump, HIGH); Pump_state=1; Recieved=0; delay(10000); } if(percent > 50){ digitalWrite(Pump, HIGH); delay(1); if(percent > 50){ digitalWrite(Pump, LOW); delay(2700000); } } } int convertToPercent(int value) { int percentValue = 0; percentValue = map(value, 1023, 0, 0, 100); return percentValue; } void printValuesToSerial() { RtcTemperature temp = Rtc.GetTemperature(); temp.Print(Serial); Serial.print("C"); Serial.print("`"); Serial.print(percent); Serial.print("%"); delay(5000); }