Hola, Jtrinc26, vale entendido. He llegado a la misma conclusión, mediante otro camino:
void loop()
{
thing.handle();
// printValues(); //Descomentar per veure valors a serial
// if(!thing.add_wifi)
// { //si la connexió ha estat creada i el recurs s’ha enviat correctament, t == 1
thing.write_bucket("climaStick2", "environment"); //Trucant al bucket
// delay(1000); //per estar segur que el missatge ha estat enviat completament
ESP.deepSleep (3540000); //Dorm 59 minuts //(100000*60*5); //Dormint el processador durant 5 minuts
// }
}
60 minutos son: 3.600.000ms
60 minutos menos 1 (que está enviando datos): 3.540.000ms
Por lo tanto, duerme durante 59 segundos y despierta 1 minuto para mostrar datos. Total, 1h exacta.
Bueno, desde ayer está imprimiendo correctamente los datos. Te explico.
Ahora tengo el sistema como sigue:
1.-“Normal”: Tengo un sensor BME280 conectado a una ESP8266, nueva, conectada a Thinger. Es el sistema con el que he venido trabajando hasta ahora. Me a dado algun problema de horario al imprimir los datos. Va haciendo saltos, no tan seguidos como antes, pero los hace. Está alimentado por red de 220V.
2.- Hibernación: Tengo otro BME280 conectado a otra ESP8266 y también a Thinger, con el mismo conexionado, excepto que tiene una conexión adicional (un puente de D0 a RST, para, según parece, activar automáticamente el despertar del sistema. Este segundo sistema está alimentado, desde hace 24h, mediante dos pilas de 1.5V, total 3V. Debe funcionar correctamente, ya que 24h después la carga que marca es de 2.80V nada que ver con el sistema sin hibernación.
Bueno, los dos sistemas han estado imprimiendo los datos cada xx:00h religiosamente, peeeeero, hoy, a las 19h, AMBOS han marcado 19:04h, es decir que han hecho la impresión 4 minutos más tarde. Lo que me mosquea es que los dos, conectados a la misma plataforma, han cometido EXACTAMENTE el mismo error. Por ello, y en un principio, debo descartar algun fallo en los componentes y alimentación, y debería responsabilizar a la plataforma Thinger, en la gestión que hace del tiempo. Es esto posible?
De momento voy a dejarlo como está, sin tocar nada y ver cómo evoluciona.
PD: Eliminé la instrucción “t++” y “if(!t)”, por qué me daba error de compilación del tipo que “t” no estaba declarado en el sketch, y también el delay (1000); del loop, por los avisos de hipotéticos fallos por la parada del sistema.
Pero funciona tal cómo te he indicado más arriba.
Y bien, que opinas?
Muchas gracias por la atención y la ayuda.
Salu2 cordiales.