// RGBLED - cycle RGB
byte led[] = { 2, 3, 4 };
unsigned long timer, timeout = 5;
void setup() {
for (byte i = 0; i < 3; i++)
pinMode(led[i], OUTPUT);
}
void loop() {
if (millis() - timer > timeout) {
timer = millis();
if (i++ > 3)
i = 0;
for (byte j = 0; j < 3; j++) {
digitalWrite(led[j], i == j); // on new color
}
}
}