0

eingestellt ist Ich habe das Arduino Yun SDK von Github & heruntergeladen installiert wie in den angegebenen Anweisungen. Ich führte das Beispiel BasicPubSub & es läuft erfolgreich & Ich sehe Nachrichten ankommen auf MQTT Client Abonnement Thema jede Sekunde. Das ist erstaunlich!AWS IOT BasisPubSub Arduino Yun Beispiel gibt Generic Error & Yield Error, wenn die Verzögerung auf 10.000

Aber ich sehe meine Geräteverbindung auf Ressourcen Registerkarte nicht. Es heißt immer noch: 'Letztes Update = Kein Zustand'. Warum ist es so?

Ich muss Nachrichten alle 10 Sekunden senden. Ich ändere die Verzögerung in der BasicPubSub-Schleife, um zu verzögern (10000). Aber jetzt wird nur die erste Nachricht in dem Thema empfangen & der serielle Monitor sagt, -1 Veröffentlichen fehlgeschlagen; -35 Yield Failed

Gibt es ein Problem mit der Verbindung? Wenn es so ist, warum wird die erste Nachricht geliefert, aber nicht die anderen. Was kann ich tun, um das Problem zu lösen?

Dank

Antwort

0

Ich hatte das gleiche Problem und ich fand, dass Sie die Ertragsfunktion häufiger für Arduino in Verbindung bleiben anrufen müssen. So sollte Ihr etwas tun, wenn Sie mehr als 10 Sekunden verzögert werden soll:

int uploadInterval = 60; // Delay time (SECOND) for each loop iterarion 
for (int i = 0; i < uploadInterval; i++) { 
    if ((rc = myClient.yield()) != 0) { 
    Serial.println("Yield failed!"); 
    Serial.println(rc); 
    } 
    delay(1000); 
} 

Von der AWS Arduino SDK Webseite über Ertragsfunktion: „Die Anwender diese Funktion aufrufen sollten häufig neue Nachrichten und kostenlos abonnieren Slots erhalten neue Abonnenten, vor allem für Anfragen nach Schattenseiten. "