Pregunta, código no loopea.

Tengo este código (estoy recién empezando) y realiza la acción una vez y luego no loopea, tengo algún error?

int led = 13;
int arrayDelay[] = {100, 200, 300, 400, 500, 600, 700, 800, 900, 999};

void setup() {

pinMode(led, OUTPUT);
}

void loop() {
for(int delaysito = 1; delaysito <= 10; delaysito ++) {
digitalWrite(led, HIGH);
delay(arrayDelay[delaysito]);
digitalWrite(led, LOW);
delay(arrayDelay[delaysito]);
}
for(int delaysito = 10 ; delaysito == 10; delaysito -=1) {
digitalWrite(led, HIGH);
delay(arrayDelay[delaysito]);
digitalWrite(led, LOW);
delay(arrayDelay[delaysito]);
}
}

Las posiciones de un array se direccionan comenzando por cero. Como tu array tiene 10 posiciones el for tienes que ponerlo

for(int delaysito = 0; delaysito <= 9; delaysito ++) {

Pues tienes varios problemas en el código.
He reconvertido tu código a C (tengo los arduinos conectados a 1000 cosas y por no toquetearlos…);

#include <stdio.h>

int led = 13;
int arrayDelay[] = {100, 200, 300, 400, 500, 600, 700, 800, 900, 999};

int main() {
  int delaysito;
  while(1==1){
    for(delaysito = 1; delaysito <= 10; delaysito ++) {
     printf("%d", arrayDelay[delaysito]);
     printf("\n");
    }  
    printf("Segunda parte\n");
    for(delaysito = 10 ; delaysito == 10; delaysito -=1) {
     printf("%d", arrayDelay[delaysito]);
     printf("\n");
    }
  }
}

Esta es la salida que obtengo:

Nikola:pruebas pepe$ gcc -o kk codigoweb.c 
Nikola:pruebas pepe$ ./kk
Primera parte
200
300
400
500
600
700
800
900
999
0
Segunda parte
0
Primera parte
200
300
400
500
600
700
800
900
999
0
Segunda parte
0

Problemas:
-Los vectores, en programación, no van de 1 a N, sino de 0 a N-1

int arrayDelay[] = {100, 200, 300, 400, 500, 600, 700, 800, 900, 999};

son 10 elementos, pero se cuentan como 0,1,2,3,4,5,6,7,8,9
-los for funcionan desde el valor inicial (antes del primer punto y coma, y eso sólo se ejecuta una vez), condición de parada (que se ejecuta en todas las iteraciones) e incremento (positivo o negativo y se ejecuta en todas las iteraciones, excepto la primera). En el primer for, lo hace casi bien, va desde el elemento 1 (aunque debería ser el 0) hasta el 10 (que debería ser el 9). Si quieres recorrer el vector entero, deberías hacer;

    for(delaysito = 0; delaysito < 10; delaysito ++)

En el segundo for, le asignas valor 10, y le dices que la condicion de parada sea que delaysito sea 10, con lo que sólo entra la primera iteración, luego ya no se cumple y sale del for. Si lo que quieres es que vaya de 10 a 0, deberías poner;

for(delaysito = 10; delaysito >= 0; delaysito--)

CONCLUSIÓN; sí te está haciendo el loop, pero tienes fallos en tu código y no hace lo que quieres que haga, jeje
Creo que quieres que te haga algo similar a esto;

int led = 13;
int arrayDelay[] = {100, 200, 300, 400, 500, 600, 700, 800, 900, 999};

void setup() {                

  pinMode(led, OUTPUT);     
}

void loop() {
  for(int delaysito = 0; delaysito < 10; delaysito ++) {
  digitalWrite(led, HIGH);   
  delay(arrayDelay[delaysito]);               
  digitalWrite(led, LOW);    
  delay(arrayDelay[delaysito]);        
  }  
  for(int delaysito = 10 ; delaysito >=  0; delaysito -=1) {
    digitalWrite(led, HIGH);
    delay(arrayDelay[delaysito]);
    digitalWrite(led, LOW);
    delay(arrayDelay[delaysito]);
  }
}