Intermitentes confort

Hola buenas, soy nuevo en esto de arduino y queria hacer un proyecto para final de curso de intermitantes comfort, que en la primera posición de la palanca de intermitencia, pulses y sueltes (como si fuera un pulsador, y se enciendan y apaguen 3 veces, 5… en mi caso e puesto 5.
El problema lo tengo en que el codigo con 1 interruptor y 1 led me funciona, pero al ponerle 2 interruptores (uno para cada intermitente) con 2 leds me da fallos de compilación.
no se si estara bien el codigo, pero partiendo de la base de 1 interruptor y 1 led, lo e copiado y lo e pegado, cambiando los numero de pines.

el codigo queda asi:


const int buttonPin2 = 2;
const int ledPin13 =  13;
int buttonStateD = 0;

const int buttonPin4 = 4;
const int ledPin12 =  12;
int buttonStateI = 0;

void setup() {
 pinMode(ledPin13, OUTPUT);
 pinMode(buttonPin2, INPUT_PULLUP);

 pinMode(ledPin12, OUTPUT);
 pinMode(buttonPin4, INPUT_PULLUP);
}

void loop() {
 buttonStateI = digitalRead(buttonPin2);

 if (buttonStateI == LOW) {
   for (int x = 0; x < 5; x++) {
     digitalWrite(ledPin13, HIGH);
     delay(600);
     digitalWrite(ledPin13, LOW);
     delay(600);
     }
     }
     }

  buttonStateD = digitalRead(buttonPin4);

 if (buttonStateD == LOW) {
   for (int x = 0; x < 5; x++) {
     digitalWrite(ledPin12, HIGH);
     delay(600);
     digitalWrite(ledPin12, LOW);
     delay(600);
            }
        }
     }

Me da los siguientes fallos:

Arduino:1.8.5 (Mac OS X), Tarjeta:"Arduino/Genuino Uno"

INTERMITENTES_PRUEBA_1:30: error: 'buttonStateD' does not name a type
   buttonStateD = digitalRead(buttonPin4);
   ^
INTERMITENTES_PRUEBA_1:32: error: expected unqualified-id before 'if'
  if (buttonStateD == LOW) {
  ^
exit status 1
'buttonStateD' does not name a type

Este reporte podría tener más información con
"Mostrar salida detallada durante la compilación"
opción habilitada en Archivo -> Preferencias.

--------------------------------------------------------------

Las D e I las e puesto para diferenciar el lado Derecho del Izquierdo.
Agradeceria mucho la ayuda, un saludo.

Moderador: Código y errores editados con etiquetas </>. Lee las normas.

El error esta en el desorden que tienes al final con las llaves.
Los códigos deben identarse o sea separar los diferentes niveles de acuerdo al programa

A mitad del loop cerrabas el mismo y luego tenias mas código que te daba los errores indicados

void loop() {
  buttonStateI = digitalRead(buttonPin2);

  if (buttonStateI == LOW) {
    for (int x = 0; x < 5; x++) {
      digitalWrite(ledPin13, HIGH);
      delay(600);
      digitalWrite(ledPin13, LOW);
      delay(600);
    }
  }
  

   buttonStateD = digitalRead(buttonPin4);

  if (buttonStateD == LOW) {
      for (int x = 0; x < 5; x++) {
        digitalWrite(ledPin12, HIGH);
        delay(600);
        digitalWrite(ledPin12, LOW);
        delay(600);
      }
  }
}

Te sobra una llave, (te lo puse como comentario aqui abajo)

void loop() {
 buttonStateI = digitalRead(buttonPin2);

 if (buttonStateI == LOW) {
   for (int x = 0; x < 5; x++) {
     digitalWrite(ledPin13, HIGH);
     delay(600);
     digitalWrite(ledPin13, LOW);
     delay(600);
     }
     }
     }                                        // Quita esta llave y prueba compilar

  buttonStateD = digitalRead(buttonPin4);

 if (buttonStateD == LOW) {
   for (int x = 0; x < 5; x++) {
     digitalWrite(ledPin12, HIGH);
     delay(600);
     digitalWrite(ledPin12, LOW);
     delay(600);
            }
        }
     }

He encontrado 3 post tuyos @alberto_96.
En proyectos, dos en General. Realmente no es cross post o sea posteo cruzado.
Te pido que leas las normas del foro a la brevedad.

EDITO: Realmente no es cross post o sea posteo cruzado es triple posteo.