Necesito ayuda con temporizaciones mas servo(funcion millis).

Hola ¿como andan?, bueno les queria comentar que soy nuevo, osea que, es la primera vez en mi vida que toco algo de programacion y quise empezar con algo simple como una alarma. Lo que hice fue, agarrar el codigo de blink sin delay y modificarlo, logrando llegar a esto.

int AI = 9;   
int LEDI = 7;
int senal = 2;
int pulsador = 0;
int cuenta = 0;
int AIState = LOW;
int LEDIState = LOW;  
long interval1 = 700;
long interval2 = 500;
long previousMillis = 0;   
void setup() 
{
cuenta = 0;
pinMode(LEDI, OUTPUT);
pinMode(AI, OUTPUT);
pinMode(senal, INPUT);
Serial.begin(9600); 
}

void loop() {
  pulsador = digitalRead(senal);
  if (pulsador == HIGH){
  unsigned long tiempo1 = millis();   
if (tiempo1 - previousMillis > interval1){

previousMillis = tiempo1;

if (AIState == LOW)
AIState = HIGH;
else
AIState = LOW;

digitalWrite(AI, AIState);
cuenta++;              
Serial.println(cuenta);
}

if (cuenta > 8){
  unsigned long tiempo2 = millis();
if(tiempo2 - previousMillis > interval2){
  previousMillis = tiempo2;
  if (LEDIState == LOW)
  LEDIState = HIGH;
  
  
  else
  
  LEDIState = LOW;


  digitalWrite(LEDI, LEDIState);
  
}
}
}
else {
  digitalWrite(AI, LOW);
  digitalWrite(LEDI, LOW);
    cuenta = 0;
  Serial.println(cuenta);
 }
}

Lo que hace el código es lo siguiente. 1ro_ Una vez recibe la señal suena la primer alarma(parpadea cada 700ms) y empieza el contador de pulsos 2do_ El contador llega a un numero mayor que 8 y comienza la 2da parte(enciende led que parpadea cada 500ms). Dejando la primer alarma en (HIGH). 3ro_ Soltando el pulsador apaga las 2 anteriores y resetea el contador. Ahora mi problema es como hacer para que, después de que el led este parpadeando, por ejemplo, 5 segundos se active un servo que pueda ser accionado para, por ejemplo, cerrar una puerta. Y por otra si hay alguna forma de hacer esta misma secuencia pero completamente con millis, osea sin el contador de pulsos y que mientras el led esta parpadeando, la primer alarma tambien lo haga. Por ultimo tengo un defecto en este codigo: si el interval1 es menor interval2. Solamente hace la primer parte.

de nuevo, tendremos una señal de entrada (el cual activa la "alarma") si esta es un "1" logico un led comienza a parpadear (mientras sucede esto cuentas los pulsos) y al momento en que los los pulsos contados es mayor que 8 pulsos se activa otro led que parpadea cada 500ms?