// #include <Arduino.h>
#include <Adafruit_GFX.h>
#include <Adafruit_ILI9341.h>
// assign pin
int Relaypin = 27;
int Sensorpin1 = 26;
int Sensorpin2 = 25;
//define tft screen pin
#define TFT_DC 23
#define TFT_CS 22
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
// raw value, high = dry (change value if it reversed)
int dryval1 = 4095;
int wetval1 = 2700;
int dryval2 = 4095;
int wetval2 = 2700;
// percentage value
int FriendlyDryValue = 0;
int FriendlyWetValue = 100;
void setup()
{
// assign pin mode
pinMode(Relaypin, OUTPUT);
pinMode(Sensorpin1, INPUT);
pinMode(Sensorpin2, INPUT);
pinMode(LED_BUILTIN, OUTPUT);
Serial.begin(115200);
// declare pin read
int Sensorval1 = analogRead(Sensorpin1);
int Sensorval2 = analogRead(Sensorpin2);
}
void loop()
{
// Read sensor
int Sensorval1 = analogRead(Sensorpin1);
int Sensorval2 = analogRead(Sensorpin2);
// lower value = wet
int moisture1 = map(Sensorval1, dryval1, wetval1, FriendlyDryValue, FriendlyWetValue);
int moisture2 = map(Sensorval2, dryval2, wetval2, FriendlyDryValue, FriendlyWetValue);
// serial monitor
Serial.print(Sensorval1);
Serial.print("|");
Serial.print(moisture1);
Serial.print("|");
Serial.print(Sensorval2);
Serial.print("|");
Serial.print(moisture2);
Serial.println("|");
if (Sensorval1 >= 50)
{
digitalWrite(Relaypin, HIGH); // Turn on the relay
digitalWrite(LED_BUILTIN, HIGH); // Turn on the LED as an indicator
}
else
{
digitalWrite(Relaypin, LOW); // Turn off the relay
digitalWrite(LED_BUILTIN, LOW); // Turn off the LED
}
delay(250);
}