const int ledPin = 13;
unsigned long previousMillis;
unsigned long interval = 200UL; // not a constant, it will be changed
void setup()
{
pinMode( ledPin, OUTPUT);
}
void loop()
{
unsigned long currentMillis = millis();
if( currentMillis - previousMillis >= interval)
{
previousMillis = currentMillis;
interval = random( 100, 800); // set the new interval
// toggle
digitalWrite( ledPin, digitalRead( ledPin) == HIGH ? LOW : HIGH);
}
}