Yun si blocca dopo un po


#1

volevo chiedervi aiuto per un progetto con la yun che sto usando per il mio impianto di irrgazione, dopo un po si blocca e non si connette al dashboard, apparentemente sulla seriale continua a stamparmi i dati ma non che e connesso a cayenne
//#define CAYENNE_DEBUG // Uncomment to show debug messages
#include <avr/io.h>
#include <avr/wdt.h>

#define Reset_AVR() wdt_enable(WDTO_30MS); while(1) {}
#include “DHT.h”
#define DHTPIN 2
#define DHTTYPE DHT11
#define CAYENNE_PRINT Serial // Comment this out to disable prints and save space
#include <CayenneYun.h>
DHT dht(2,DHT11);
// Cayenne authentication token. This should be obtained from the Cayenne Dashboard.
char token[] = “XXXXXXXX”;
unsigned long lastMillis = 0;
unsigned long lastMillis1 = 0;
float h =0;
float t=0;
void setup()
{
Serial.begin(9600);

dht.begin();
Cayenne.begin(token);
}

void loop()
{
//delay(1000);
Cayenne.run();
//delay(1000);

h = dht.readHumidity(); // Leggo il valore di umidità
t = dht.readTemperature(); // Leggo il valore di temperatura delay (1000);
//Publish data every 10 seconds (10000 milliseconds). Change this value to publish at a different interval.
if (millis() - lastMillis > 10000) {
lastMillis = millis();
//Cayenne.syncAll();
//Write data to Cayenne here. This example just sends the current uptime in milliseconds.
//Cayenne.virtualWrite(0, h);
//Cayenne.virtualWrite(1, t);
if (isnan(t) || isnan(h)) // Se almeno uno dei due valori è NaN (Not a Number)
{
Serial.println(“Impossibile leggere il sensore!”);
}
else //altrimenti
{
Serial.print(“Umidità: “);
Serial.print(h);
Serial.print(” %\t”);
Serial.print(“Temperatura: “);
Serial.print(t);
Serial.println(” *C”);

// non è necessario mettere un dalay() perchè ci vogliono due secondi per leggere i valori, quindi il serial monitor riceverà dati ogni 2 secondi.

}
}

}
CAYENNE_OUT(V0)
{
Cayenne.virtualWrite(0, h);

Serial.println("inviato dati!");
}

CAYENNE_OUT(V1)
{

Cayenne.virtualWrite(1, t);
Serial.println("inviato dati!!");
}

CAYENNE_DISCONNECTED() {
Reset_AVR();
}