millis(), how to detect overflow (after +/-50 days)?

As long as you're using unsigned long and this pattern, there's nothing to worry about:

if(millis()-startTime > interval)
  {
   ...
  }

It's come up in the forums many times before IIRC JohnWasser(?) did a particularly convincing investigation into it.

Also, you can use micros to prove it to yourself without having to wait 50 days :wink:

Edit: spelling