Hey, thanks for the restating of the issue.
not tested but presenting a possibility
void setup() {
// put your setup code here, to run once:
}
unsigned long qaz = millis();
int onDuration = 1000;
void loop()
{
if ( digitalRead(swt1) == HIGH && digitalRead(swt2) == HIGH )
{
//start timer to make LED's stay on when both switched are pressed.
qaz = millis();
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
}
if ( millis() - qaz) > = onDuration )
{
if (digitalRead(swt1) == 0) {
digitalWrite(led1, HIGH);
} else {
digitalWrite(led1, LOW);
}
if (digitalRead(swt2) == 0) {
digitalWrite(led2, HIGH);
} else {
digitalWrite(led2, LOW);
}
if (digitalRead(swt1) == 0 && digitalRead(swt2) == 0)
{ digitalWrite(led3, HIGH);
}
else {
digitalWrite(led3, LOW);
}
}
}
Oi! as written the code may mess with the 1st second of operation.