Quero iniciar o programa com o led desligado, e após receber energia numa porta do arduino quero que o mesmo se ligue e permaneça ligado durante alguns segundos, e depois se desligue. Mas tal não acontece.
Veja que em momento algum vc coloca um valor em startTime
startTime tem que ser carregado com millis
startTime=millis()
no momento inicial do período.
Coloca essa linha para ser executada junto quando vc liga o led.
Um efeito colateral é que vai ficar sempre forçando esse estado enquanto a condição que liga o led permanecer. Ou seja: O tempo começa a contar quando a condição que liga o led deixar de existir. Te serve ?