Particle.publish
returns a “future” bool
and doesn’t actually block until the return value is accessed. Something like the following will result in expected blocking behavior without requiring explicit/arbitrary delays.
bool rval = Particle.publish(...);
if(!rval)
{
Log.info("an error!");
}
Documentation could definitely be updated for clarity…