(SOLUCIONADO) Led no enciende completamente.

Alguien sabe por el led no enciende completamente, si llegan los 5 v pero no tiene suficiente corriente para enceder completo.

////Puerta
//////////////////////////////////
const byte sensor1 = 2; // pin conectado a 2
const byte ledPin  = 8; // uso LED pin 8
const byte boton1  = 3; // sensor1

bool statusBtn;
bool statusBtnAnt; // para saber si cambió
bool estadoLed;
unsigned long start;
bool sen1;

void setup() {
}

void loop() {
//////////Puerta
/////////////////////////////////////////////////////////////////////////////////////////////////////////
  statusBtn = digitalRead(sensor1); // leo el estado del pin del boton
  sen1 = digitalRead(boton1);  // leo el estado del pin del sensor
  
  if (statusBtn && !statusBtnAnt) { 
       estadoLed = HIGH;               // activo el led
       start = millis() + 30000UL;      // cargo start con valor de millis() + 30 seg
  }

  if (!statusBtn && statusBtnAnt)      // si sueltas el boton apago el led
       estadoLed = LOW;

  if (millis()>start && estadoLed)     // si el boton esta presionado y pasaron 30 seg apago el led
      estadoLed = LOW;  

  statusBtnAnt = statusBtn;
  
  if (estadoLed)
      digitalWrite(ledPin, HIGH);
  else 
      digitalWrite(ledPin, LOW);

/////////////////////////////////////////////

  
  if (sen1 && statusBtn && statusBtnAnt) { 
       estadoLed = HIGH;               // activo el led
       start = millis() + 30000UL;      // cargo start con valor de millis() + 30 seg
  }

  if (!statusBtn && statusBtnAnt)      // si sueltas el boton apago el led
       estadoLed = LOW;

  if (millis()>start && estadoLed)     // si el boton esta presionado y pasaron 30 seg apago el led
      estadoLed = HIGH;  

  statusBtnAnt = statusBtn;
  
  if (estadoLed)
      digitalWrite(ledPin, HIGH);
  else 
      digitalWrite(ledPin, LOW);

}

porque repites en el loop las ordenes para estadoLed?
Te sugerí ese código (¿como apagar un led en 5seg aunque el botón siga presionado?)hace 1 día como mucho y ya creas otro hilo preguntando lo mismo?

Deberías haber continuado con el mismo, ya que veo que no esta resuelto.

Disculpa por eso.
Bueno lo que pasa en el loop es que que agregue otra condición con un sensor. Por eso repetí la instrucción.
Con el código no tuve problemas las condiciones las cumple correctamente es solo que el Led no enciende completamente. No es problema de hardware por que ya probé con otro arduino y leds.

Hola.

Añade esto a tu código:

void setup()
{
    pinMode(sensor1,INPUT);
    pinMode(boton1,INPUT);
    pinMode(ledPin,OUTPUT);

    digitalWrite(ledPin,LOW);
}

Hay que definir el uso de los pines porque por defecto se configuran como INPUT, y los pines en ese estado no pueden alimentar al led.

Tambien seria una buena cosa que inicializaras las variables booleanas a los valores de comienzo, por ejemplo:

boolean statusBtn = false;
boolean statusBtnAnt = false; // para saber si cambió
boolean estadoLed= false;
boolean sen1 = false;

Saludos

Gracias por la ayuda. Ya lo probé y funcionó.