I use millis() regularly to get a non-blocking delay, and that was my first choice, but couldn't get it to work in the do... while loop.
I tried several times but managed to either stop the iterations completely, or it was just ignored....
Any ideas how it could be structured please.