Como alterar parametro de tempo via serial

Olá pessoal tudo bem?
Gostaria de saber se é possível alterar o parâmetro de tempo de uma função delay via serial? Pensei em algo do tipo.
Testei dessa forma e não funciona.

time = serial.read();
delay(time);

Desculpem só um bocadinho...

:0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 :0 GRRRRRRRRRRRRRRRRR

Já libertei um pouco da raiva. :stuck_out_tongue:

Não vou perguntar porque queres usar um delay porque a resposta apenas me vai deixar mais doido e existem muitos posts (e um exemplo) sobre porque não devemos usar o delay().

Respondendo à tua questão, tu provavelmente vais enviar ascii, então tens de ter isso em atenção:

#include <stdlib.h>

char time[5]; 
unsigned long time_number;

for (int i = 0; i < 4; i++) { 
    if ((time[i] = Serial.read()) == '\n') {
        time[i] = '\0';
        break; // chegaste ao fim da string. 
    }
}
time[4] = '\0'
time_number = atoi(time);

delay(time_number);

Não compilei, mas esta é a lógica. No Serial monitor, metes o numero que queres e carregas no enter.