Ok, I’m sure this has been discussed before.
In the app/cloud side of things, all the transactions are pushed and received by the ‘app’ with the blynk servers in near-real-time, and transmitted to the ‘receiving device’ when it’s available.
It’s painful to combine blynk with any ‘real-time’ controllers, because any calls to blynk that ‘send’ values to the app - are blocking functions - waiting for the network.
Is there a plan to asynchronously queue these outgoing messages in the blynk library code so that local ‘foreground’ tasks can continue…?
Perhaps an extra parameter that indicates when it’s a non-blocking request, and a returned value provides a queue message number or similar for referencing that message.
Then if it takes too long for any reason, a ‘delete message’ request etc could remove the offending item from the outbound queue, or if non critical, it can just go whenever it can.