Benötige Hilfe. Wenn Relais 1 geschalten wird soll 2,3,4 die schleife nur einmal durchlaufen danach sollen die Relais ausbleiben. Wo liegt der Fehler?

das kannst anpassen

/*

   https://forum.arduino.cc/t/benotige-hilfe-wenn-relais-1-geschalten-wird-soll-2-3-4-die-schleife-nur-einmal-durchlaufen-danach-sollen-die-relais-ausbleiben-wo-liegt-der-fehler/1335642/17

   2024-12-25 by noiasca
   code in thread
*/


const byte Schalter = 2;
const byte RelaisA1 =  5;
const byte RelaisA2 =  6;
const byte RelaisA3 =  7;
const byte RelaisA4 =  8;
int Wert;
int alterStatus = false;

void einschalten() {
  Serial.println("change to ein");
  digitalWrite(RelaisA1, HIGH);
  delay(500);
  digitalWrite(RelaisA1, LOW);
}

void ausschalten() {
  Serial.println("change to aus");
  digitalWrite(RelaisA1, HIGH);
  delay(500);
  digitalWrite(RelaisA2, LOW);
  delay(500);
  digitalWrite(RelaisA2, HIGH);
  delay(500);
  digitalWrite(RelaisA3, LOW);
  delay(500);
  digitalWrite(RelaisA3, HIGH);
  delay(500);
  digitalWrite(RelaisA4, LOW);
  delay(500);
  digitalWrite(RelaisA4, HIGH);
  delay(500);
  digitalWrite(RelaisA1, LOW);
}

void setup() {
  Serial.begin(115200);
  pinMode(RelaisA1, OUTPUT);
  pinMode(RelaisA2, OUTPUT);
  pinMode(RelaisA3, OUTPUT);
  pinMode(RelaisA4, OUTPUT);
  pinMode(Schalter, INPUT_PULLUP);
}

void loop() {
  Wert = digitalRead(Schalter);
  if (Wert != alterStatus) {
    if (Wert == LOW)
      einschalten();
    else
      ausschalten();
  }
  alterStatus = Wert;
  delay(100); // dirty delay
}
//