@@ -137,7 +137,10 @@ void ArduinoIoTCloudClass::poll()
137
137
void ArduinoIoTCloudClass::update ()
138
138
{
139
139
// If user call update() without parameters use the default ones
140
- update (MAX_RETRIES, RECONNECTION_TIMEOUT);
140
+ if (iotStatus == IOT_STATUS_CLOUD_CONNECTED){
141
+ update (MAX_RETRIES, RECONNECTION_TIMEOUT);
142
+ }
143
+
141
144
}
142
145
143
146
bool ArduinoIoTCloudClass::mqttReconnect (int const maxRetries, int const timeout)
@@ -258,7 +261,8 @@ void ArduinoIoTCloudClass::handleMessage(int length)
258
261
void ArduinoIoTCloudClass::connectionCheck () {
259
262
connection->check ();
260
263
if (connection->getStatus () != CONNECTION_STATE_CONNECTED) {
261
- iotStatus = IOT_STATUS_CLOUD_DISCONNECTED;
264
+ if (iotStatus == IOT_STATUS_CLOUD_CONNECTED)
265
+ iotStatus = IOT_STATUS_CLOUD_DISCONNECTED;
262
266
return ;
263
267
}
264
268
char msgBuffer[120 ];
@@ -279,7 +283,7 @@ void ArduinoIoTCloudClass::connectionCheck() {
279
283
debugMessage (" Cloud Error. Retrying..." , 0 );
280
284
break ;
281
285
case IOT_STATUS_CLOUD_CONNECTED:
282
- debugMessage (" connected to Arduino IoT Cloud" , 2 );
286
+ debugMessage (" connected to Arduino IoT Cloud" , 3 );
283
287
break ;
284
288
case IOT_STATUS_CLOUD_DISCONNECTED:
285
289
iotStatus = IOT_STATUS_CLOUD_RECONNECTING;
@@ -298,7 +302,7 @@ void ArduinoIoTCloudClass::connectionCheck() {
298
302
}
299
303
break ;
300
304
case IOT_STATUS_CLOUD_CONNECTING:
301
- debugMessage (" IoT Cloud connecting..." , 3 );
305
+ debugMessage (" IoT Cloud connecting..." , 1 );
302
306
arduinoIoTConnectionAttempt = connect ();
303
307
*msgBuffer = 0 ;
304
308
sprintf (msgBuffer, " ArduinoCloud.connect(): %d" , arduinoIoTConnectionAttempt);
0 commit comments