first tests....

// Define globals const float VCC = 3.3; // ESP32 supply voltage const int ADC_MAX = 4095; // 12-bit ADC resolution // Thermal sensor variables const float THERM_R0 = 50000.0; // Thermistor resistance at T0 (e.g., 10kΩ) const float THERM_T = 298.15; // T0 in Kelvin (25°C + 273.15) const float THERM_B_VALUE = 4100.0; // Thermistor's Beta value (from datasheet) const float THERM_SERIES_RESISTOR = 50000.0; // Fixed resistor value // const int PIN_THERM = 34; // ADC pin for thermal sensor/diode / analog input const int PIN_MOISTURE = 35; // ADC pin for moisture sensor / analog input const int PIN_PUMP = 25; // water pump / digital output const int PIN_ESTUFA = 23; const int PIN_LED = 27; const int PIN_FAN = 26; // int cnt=0; int cnt_delay=0; int delayValue = 1000; int cnt_last = 0; // int pos=0; int led=0; // 0=off, 1=on //-- // void get_moisture() {   int val = analogRead(PIN_MOISTURE);   Serial.print("Moisture val: ");   Serial.println(val); } // void get_thermal() {   int val = analogRead(PIN_THERM);      // 1. Calculate Voltage at ADC Pin (Vout)   float vout = (float)val * (VCC / ADC_MAX);   // 2. Calculate Thermistor Resistance (Rth) using Voltage Divider   // Rth = R_series * (Vout / (VCC - Vout))   float r_th = THERM_SERIES_RESISTOR * (vout / (VCC - vout));      // 3. Calculate Temperature (Kelvin) using Beta Equation   // 1/T = 1/T0 + (1/B) * ln(Rth/R0)   float tmp1 = 1.0/log(r_th / THERM_R0);   float temp_kelvin = 1.0 / ((1.0 / THERM_T) + (1.0 / THERM_B_VALUE) * log(r_th / THERM_R0));   // 4. Convert Kelvin to Celsius   float temp_celsius = temp_kelvin - 273.15;   float d1 = THERM_T - temp_kelvin;   float d2 = d1-tmp1;   Serial.print("ADC: "); Serial.print(val);   Serial.print(", Resistance: "); Serial.print(r_th);   Serial.print(", vout: "); Serial.print(vout);   Serial.print(", temp_kelvin: "); Serial.print(temp_kelvin);   Serial.print(", d1: "); Serial.print(d1);   Serial.print(" Ohms, Temp: "); Serial.print(temp_celsius);   Serial.print(", d2: "); Serial.print(temp_celsius + (d2*2));   Serial.print(" ,d1: "); Serial.print(d1+temp_celsius);   Serial.print(", tmp1: "); Serial.print(tmp1);   Serial.println(" °C"); } // Configure setup void setup() {   delay(500);   //   Serial.begin(115200);   //--   //   pinMode(PIN_FAN,OUTPUT); // led   digitalWrite(PIN_FAN,HIGH); // off   // Light LED   pinMode(PIN_LED,OUTPUT);   digitalWrite(PIN_LED,HIGH);   // WATER PUMP - off   pinMode(PIN_PUMP,OUTPUT);   digitalWrite(PIN_PUMP,HIGH);   // ESTUFA - HEATER   pinMode(PIN_ESTUFA,OUTPUT);   digitalWrite(PIN_ESTUFA,HIGH); // HIGH = Off for Relay   // MOISTURE SensOr - problem!   /*analogWrite(32,500);   pinMode(32,OUTPUT); // led   digitalWrite(32,LOW); // off*/ } // Program loop void loop() {   char tmp[100];   sprintf(tmp,"Loop pos: %i, cnt: %i", pos, cnt);   Serial.println(tmp);   //   get_thermal();   //   get_moisture();   //   if( cnt==10 && pos==0 ) {     Serial.println("turning pump on...");     //digitalWrite(PIN_PUMP,LOW); // turn on pump   }   else if( cnt==13 ) {     //Serial.println("turning pump off...");     //digitalWrite(PIN_PUMP,HIGH);     Serial.println("Estufa ON");     digitalWrite(PIN_ESTUFA,LOW);     //digitalWrite(PIN_FAN,LOW);   }   else if( cnt==1 ) {     Serial.println("Estufa ON");     digitalWrite(PIN_ESTUFA,LOW);     //digitalWrite(PIN_FAN,LOW);   }   else if( cnt==3 ) {     Serial.println("Estufa ON");     //digitalWrite(PIN_ESTUFA,LOW);     digitalWrite(PIN_FAN,LOW);   }   else if( cnt==8 ) {     Serial.println("Estufa Off");     digitalWrite(PIN_ESTUFA,HIGH);     digitalWrite(PIN_FAN,HIGH);   }   else if( cnt==15 ) {     digitalWrite(PIN_FAN,LOW);   }   else if( cnt==23 ) {     Serial.println("Estufa Off");     digitalWrite(PIN_ESTUFA,HIGH);     digitalWrite(PIN_FAN,HIGH);   }   //   if( cnt==25 ) {     pos+=1;     cnt=0;   }   // Count cnt every second. Important variables: cnt_delay and delayValue   if( cnt_delay>= 1000 ) {     cnt_delay = 0;     cnt += 1;   } else {     cnt_delay += delayValue;   }   //   delay(delayValue); }