Thing.handle() is not updating all ‘Thing’s value/state


#1

I am trying to integrate Arduino Mega with multiple sensors and output devices (as Slave) and NodeMCU cloud transceiver (as Master) to the cloud. I have succeeded to stream sensors log but for some reason, some things are not being invoked on respective conditions. On the serial monitor, I can confirm that they are not being invoked by thing.handle() . Is there a way to invoke a thing manually or to define/configure execution sequence of thing.handle() or perhaps some simple fix. Kindly give me some insight on this issue.

Thankyou


#2

I’m having the same problem. A sketch that was working fine, is no longer updating their variables


#3

I was going through documentation when I realized that the variable’s states should be streamed/updated before calling thing.handle() , not after. So just by changing the execution sequence, it is working fine.

//This sequence fails to update Thing’s state:
void loop()
{
thing.handle(); // Calling things handler
thing.stream(thing[“Atmosphere”]); // Streams/Updates data on cloud
}

//This is the working sequence:
void loop()
{
thing.stream(thing[“Atmosphere”]); // Streams/Updates data on cloud
thing.handle(); // Calling things handler
}

Also I have configured things update mode on dashboard to updated by device, which also helps to resolve missings and lags in updating states.