BLYNK
HOME       📲 GETTING STARTED       📗 DOCS       ❓HELP CENTER       👉 SKETCH BUILDER

Widget Timer no permite reset

Tengo un WeMos D1 mini con un programa de riego en el que hay varios tiempos de riego que son disparados desde un Android mediante widget Timer a través de un Server local Blynk.
Una vez colocado los tiempo de cada Timer. todo funciona correctamente y a partir de ahí no lo puedo resetear y cambiarlo por otros tiempos.

• Smartfone Android version 9
• Blynk local server
• Blynk Library version 0.6.0

Mi programa resumido es:

#include “Arduino.h” // Para LORA E32
#include “LoRa_E32.h”
//---------------------------
#include <NTPClient.h> // Para fecha y hora
#include <time.h>
#include <TimeLib.h>
#include <Timezone.h>

//---------------------------
#include <ESP8266WiFi.h> // Para WiFi
#include <WiFiUdp.h>
//---------------------------
#include<Wire.h> // para BME280
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>
//---------------------------
#include <BlynkSimpleEsp8266.h> // para Blynk
#define BLYNK_PRINT Serial
BlynkTimer timer;
char auth[] = “xxxxxxxxxxxxxxxxxxxxx”;
//---------------------------
const char* ssid = “xxxxxxxxxxxxxxxx”;
const char* pass = “xxxxxxxxxxxxxxx”;
//---------------------------
int peticion; // declaración variables
int ESTACION = 0;
/* Aqui van colocadas opciones del programa que no afectan
* a este caso
*/
//---------------------------
/*Ahora lo que sigue si es parte del caso que se consulta
*/ 

//Mando RIEGO 1 en ESTACION 1
BLYNK_WRITE(V4)
{
int Riego53 = param.asInt();
Serial.print(“Valor de V4------”);
Serial.println(Riego53);
if (Riego53 == 1)
{
peticion = 1;
ESTACION = 1;
}
else{
peticion = 0;
ESTACION = 1;
}
Serial.print("–V53—");
Serial.print(ESTACION);
Serial.println(peticion);
}
// Mando RIEGO 2 en ESTACION 2
BLYNK_WRITE(V5)
{
int Riego55 = param.asInt();
if (Riego55 == 1)
{
peticion = 1;
ESTACION = 2;
}
else {
peticion = 0;
ESTACION = 2;
}
Serial.println("–V5—");
Serial.print(ESTACION);
Serial.println(peticion);
}
// Mando RIEGO 3 en ESTACION 3
BLYNK_WRITE(V6)
{
int Riego57 = param.asInt();
if (Riego57 == 1)
{
peticion = 1;
ESTACION = 3;
}
else {
peticion = 0;
ESTACION = 3;
}
Serial.println("–V6—");
Serial.print(ESTACION);
Serial.println(peticion);
}
/* Aqui siguen para el resto de riegos 
*/ 
//---------------------------------------
void setup()
Serial.begin(115200);
while (!Serial) {
;
}
Serial.println(“iniciada comunicacion serie”);
delay(2000);

Serial.println("");
Serial.print("conectando a ");
Serial.print(ssid);

WiFi.begin(ssid, pass);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println(“WiFi conectada”);

Serial.println("");
Serial.println("Inicializando BLYNK ");

Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,160), 8080);
/* Aqui sigue arranques aenos al problema actual 
*/

timer.setInterval(10000L, METEREOLOGICO);
timer.setInterval(10000L, CALENDARIO);
timer.setInterval(100L, TRANSMISION);
timer.setInterval(100L, SENALIZACION); .
//---------------------------------------
void METEREOLOGICO(){
/* Aqui va el programa Metereologico
*/
}
//---------------------------------------
void CALENDARIO(){
/* Aqui  va el programa Calendario
*/
}
//---------------------------------------
void TRANSMISION (){
/* Aqui va el programa en el que se utilizan las variables
* declaradas "peticion" y "ESTACION" en las BLYNK_WRITE(V4) 
* y siguientes
 */
}
//---------------------------------------
void SENALIZACION(){
/* Aqui sige el programa de Señalizacion
*/
}
//---------------------------------------
void loop()
{
timer.run();
Blynk.run();
}
//---------------------------------------


Cuando intento cambiar el tiempo, previamente reseteado y cepto el nuevo tiempo con OK
el valor se cambia aparentemente pero no funciona a la nueva hora.
Si salimos de Blynk y volvemos a entrar, se observa que vuelve a tener el tiempo antiguo que es el que sigue funcionando.
He comprobado que en otro programa que hace como un año funcionaba correctamente, ahora tiene el mismo defecto.
He actualizado la biblioteca de Blynk y el programa del Server local en la Raspberry que ahora tiene la versión 0.41.15
¿Que puede estar sucediendo?

saludos

@Dlorenzop please edit your post, using the pencil icon at the bottom, and add triple backticks at the beginning and end of your code so that it displays correctly.
Triple backticks look like this:
```

Pete.

@Dlorenzop you’ve edited your code but used the wrong characters, despite me giving you triple backticks to copy/paste.
Please fix the formatting correctly, otherwise your code will be deleted.

Pete.

Creo que ahora esta correcto.
saludos

What version of the app are you using?

Pete.

App Blynk version 2.28.4
Saludos

Well, I’m running the same local server version and the same app version on an old Android tablet and it works perfectly for me.

Looking at the project JSON data, the change to the times are made as soon as the left arrow is clicked.

Are you sure that you don’t have any other widgets attached to pin V4?

Pete.

No están conectados los pines V4 , V5, etc. a ningún otro Widget.
Efectivamente el cambio de los tiempos se produce aparentemente, pero no funciona en la ejecución del programa.
Cuando se cierra la app y de nuevo se abre aparecen los tiempos iniciales que había antes del cambio de los tiempos.
Ya he probado tambien el cambio de los pines V4, V5, etc por los pines V51, V52, etc que nunca antes había utilizado.
Saludos
También he probado el programa en el servidor blynk-cloud.com y allí si funciona correctamente
por ello he reinstalado en mi raspberrypi de nuevo el server-0.41.15-java8.jar pero sigue el mismo problema.
Pienso que algo antiguo no se desinstaló correctamente pero me siento incapaz de conseguirlo por lo que pido ayuda como poder hacerlo.
Un saludo de nuevo