problema con switch case

Hola necesito ayuda urgente! alguien sabe porque el caso 5 y 6 no me funciona? todo empieza bien pero cuando llega a esos casos no hace lo que le pido!

int lsw1 = 3;
int lsw2 = 4;
int lsw3 = 5;
int lsw4 = 6;
int proximity = 7;
int start = 2;

int ev1 = 8;
int ev2 = 0;
int ev3 = 10;
int ev4 = 11;
int ev5 = 12;
int ev6 = 13;
int clutch = 1;

int condicion1 = 0;
int condicion2 = 0;
int t1 = 0;
int tiempo = t1 * 10;


void setup() {
  // put your setup code here, to run once:
  pinMode(lsw1, INPUT);
  pinMode(lsw2, INPUT);
  pinMode(lsw3, INPUT);
  pinMode(lsw4, INPUT);
  
  pinMode(ev1, OUTPUT);
  pinMode(ev2, OUTPUT);
  pinMode(ev3, OUTPUT);
  pinMode(ev4, OUTPUT);
  pinMode(ev5, OUTPUT);
  pinMode(ev6, OUTPUT);
  pinMode(clutch, OUTPUT);
  
}

void loop() {

  t1 = analogRead(A0);
  Serial.println(t1);
   if (tiempo >= 10000)
        {
          tiempo = 10000;
        }


  if (digitalRead(proximity) == HIGH)
  {
    condicion1 = 1;

    if (digitalRead(lsw2) == HIGH)
    {
      condicion1 = 2;

      if (digitalRead(lsw3) == HIGH)
      {
        condicion1 = 3;

        if (t1 > 0)
        {
          condicion1 = 4;

          if (digitalRead(lsw2) == LOW)
          {
            condicion1 = 5; //verificar

            if (digitalRead(lsw4) == HIGH)
            {
              condicion1 = 6;
            }
          }
        }
      }
    }
  }

  switch (condicion1)
  {

    case 1:

      digitalWrite(ev5, HIGH);
      digitalWrite(ev6, LOW);

      break;

    case 2:

      digitalWrite(ev3, HIGH);
      digitalWrite(ev4, LOW);

      break;

    case 3:

      digitalWrite(ev3, LOW);
      digitalWrite(ev4, HIGH);

      break;       
    case 4:

      digitalWrite(clutch, HIGH);
      delay(tiempo);
      digitalWrite(ev5, LOW);
      digitalWrite(ev6, HIGH);

      break;

    case 5:

      digitalWrite(ev1, HIGH);
      digitalWrite(ev2, LOW);

      break;

    case 6:

      digitalWrite(ev1, LOW);
      digitalWrite(ev2, HIGH);
      
      break;
    default:
      digitalWrite(ev1, LOW);
      digitalWrite(ev2, LOW);
      digitalWrite(ev3, LOW);
      digitalWrite(ev4, LOW);
      digitalWrite(ev5, LOW);
      digitalWrite(ev6, LOW);
      digitalWrite(clutch, LOW);

  }
  delay(5);

}

Gracias..!

Hola

In English, in the English language part of the forum!

Tus condiciones 5 y 6 se cumplen si solo si

condición 5 => proximity == HIGH & lsw2 == HIGH & lsw3 == HIGH & t1 > 0 & lsw2 == LOW

condición 6 =>

condición5 ==1 & lsw4 == HIGH

Has verificado todo esto?

No me hables del programa. Eso ya lo vemos y esta bien. Pero todos esos estados los pusiste a mano, o forzados, o verificaste que ocurran? Puedes agregar lineas de monitor Serie para visualizar que esta pasando.