Bueno otro poco, y, a no ser que me digais que la sonda va bien, creo que la voy a cambiar.
Os cuento
he hecho muchas pruebas con este código
Código:
#include "DFRobot_ESP_PH.h"
#include <EEPROM.h>
DFRobot_ESP_PH ph;
#define ESPADC 4096.0 //the esp Analog Digital Convertion value
#define ESPVOLTAGE 3300 //the esp voltage supply value
#define PH_PIN 35 //the esp gpio data pin number
float voltage, phValue, temperature = 25;
void setup()
{
Serial.begin(115200);
pinMode(PH_PIN, INPUT);
EEPROM.begin(32);//needed to permit storage of calibration value in eeprom
ph.begin();
}
void loop()
{
static unsigned long timepoint = millis();
if (millis() - timepoint > 1000U) //time interval: 1s
{
timepoint = millis();
//voltage = rawPinValue / esp32ADC * esp32Vin
voltage = analogRead(PH_PIN) / ESPADC * ESPVOLTAGE; // read the voltage
Serial.print("voltage:");
Serial.println(voltage, 4);
//temperature = readTemperature(); // read your temperature sensor to execute temperature compensation
Serial.print("temperature:");
Serial.print(temperature, 1);
Serial.println("^C");
phValue = ph.readPH(voltage, temperature); // convert voltage to pH with temperature compensation
Serial.print("pH:");
Serial.println(phValue, 4);
}
ph.calibration(voltage, temperature); // calibration process by Serail CMD
delay(2000);
}
float readTemperature()
{
//add your code here to get the temperature from your temperature sensor
}
Esto lo que hace es usar una
libreria modificada para usar sondas con esp32. Con esto he conseguido alguna cosa, pero me sigue sin medir en condiciones. He llegado incluso a meter un triple voltage divider con 3 resistencias de 10k para poder bajar y moverme en el rango que debo ( 4095/3 ) pero nada, las mediciones permanecen iguales.
Estas probando en soluciones diferentes: si, tengo 3 soluciones. No dan un ph fiable, no me interesa eso de momento. Tengo una de agua de grifo, otra de agua destilada y otra de agua con limón. La de limón debería dar MUY bajo, mucho más que las otras. Pero las 3 dan la misma medición....
Foto con el triple divisor de voltaje
2 van del ground al input y otro del input al 3.3... pero me temo que no vale de nada...
Cada vez pienso más que lo que pasa es que mi sonda SOLO vale para 5v...