Cayenne uses MQTT and must process messages at a regular interval which is what cayenne.run() does. In that regard it’s similar to Blynk. If you put a long delay in your code you will notice disconnects and strange behavior. Overall Cayenne works in a very similar way to Blynk but different back-end technology.