the sensor values don’t appear on my blynk app (on the gauge) i can’t find any solution please help
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
#define BLYNK_TEMPLATE_ID "TMPL2PLZZiL_b"
#define BLYNK_TEMPLATE_NAME "smart irrigation"
#define BLYNK_AUTH_TOKEN "3C6zm-5qzPxEDoAtD5Y7djowVP8MkGEN"
char auth[] = "3C6zm-5qzPxEDoAtD5Y7djowVP8MkGEN";
char ssid[] = "";
char pass[] = "";
// Pin assignments
const int rainPin = 32; // rain sensor pin
const int soilMoistPin = 26; // soil moisture sensor pin
const int pumpPin = 13; // pump control pin
// Thresholds
const int soilMoistThreshold = 100; // soil moisture threshold
const int rainThreshold = 100; // rain sensor threshold
// Blynk virtual pins
const int soilMoistVpin = 1;
const int rainVpin = 2;
const int pumpVpin = 3;
// Pump state
bool pumpState = false;
BlynkTimer timer;
void setup() {
Serial.begin(9600);
pinMode(rainPin, INPUT);
pinMode(soilMoistPin, INPUT);
pinMode(pumpPin, OUTPUT);
Blynk.begin(auth, ssid, pass);
// Set up timer to run every 5 seconds
timer.setInterval(5000L, sendData);
}
void loop() {
Blynk.run();
timer.run();
}
// Function to read the sensors and send data to Blynk
void sendData() {
int soilMoistValue = analogRead(soilMoistPin);
int rainValue = analogRead(rainPin);
bool isRaining = (rainValue < rainThreshold);
bool isDry = (soilMoistValue > soilMoistThreshold);
// Update Blynk app with sensor readings
Blynk.virtualWrite(soilMoistVpin, soilMoistValue);
Blynk.virtualWrite(rainVpin, isRaining ? 1 : 0);
Blynk.virtualWrite(pumpVpin, pumpState ? 1 : 0);
// Turn on/off the pump based on sensor readings
if (!isRaining && isDry && !pumpState) {
digitalWrite(pumpPin, HIGH);
pumpState = true;
} else if ((isRaining || !isDry) && pumpState) {
digitalWrite(pumpPin, LOW);
pumpState = false;
}
}
i can’t solve this problem