Creo que con el alto voltaje de salida de 3.3V del ESP8266, lo que significa que el voltaje de $ M_ {gs} \ $ del MOSFET será igual a 3.3V, usted está más cerca de \ $ V_ {gs_ {th}} \ $ en comparación con el caso con el voltaje de salida alto 5.0V. Si ve la hoja de datos de su MOSFET, \ $ V_ {gs_ {th}} \ $ está entre 1.0V y 2.5V.
EDIT:
Para aclarar mejor este punto, he adjuntado las curvas características I-V del 2N7002. Solo un breve comentario, cada curva en el diagrama corresponde a un Vgs diferente aplicado al MOSFET. Con verde, verá la corriente que puede fluir a través del MOSFET cuando \ $ V_ {gs} = 5V \ $ y con rojo la corriente en el caso cuando \ $ V_ {gs} = 3.5V \ $. Ahí tienes la diferencia actual de la que estaba hablando. Por lo tanto, no se trata de cuánto está por encima de \ $ V_ {gs_ {th}} \ $, sino más de cuánta corriente desea fluir y de sesgar el MOSFET en consecuencia.
Compruebetambién este applet ¡fuera! Es genérico (no MOSFET específico), ¡pero ciertamente da la idea muy representativamente!
Eso significa que la corriente \ $ I_ {ds} \ $, que también es la corriente que fluye a través del LED no es tan alta como en el caso anterior.
Creo que si puedes encontrar otro MOSFET con un \ $ V_ {gs_ {th}} \ $ más bajo, eso ayudaría.
EDIT:
Desafortunadamente no tengo ninguna recomendación para tal MOSFET. Iría a Digikey , por ejemplo, use el filtre Vgs (th) (Max) @ Id y seleccione uno con \ $ V_ {gs_ {th}} \ $ que sea inferior a 2.5V que tiene el 2N7002. Si desea ser más preciso, debe decidir cuánta corriente desea fluir a través del LED y encontrar un MOSFET basado en esto.
Además, aumentar la fuente de alimentación de 5 V manteniendo el mismo MOSFET, podría ayudar, suponiendo que el MOSFET aún no está saturado. Pero no puedo decir si esto es cierto, todo depende de cuánto es el voltaje en el drenaje del MOSFET.
ADDED:
Otra idea que se me ocurrió es que puedes usar una combinación de NMOS y PMOS, un IC como FDG6332, y manejar la compuerta del 2N7002 con la salida de este circuito. La ventaja sería que aplicaría un voltaje de compuerta de 5 V y no de 3.3 V y obtendría el mismo comportamiento que con el Arduino.
En este caso, cuando la salida del ESP8266 es baja, M1 está desactivada y M2, ya que su compuerta se levanta con R2 a 5V. Por lo tanto, la compuerta de 2N7002 se tira BAJA con R3 y no fluye corriente a través de su LED. Cuando la salida de ESP8266 es ALTA, M1 está activada y también M2, lo que significa que la compuerta de 2N7002 está conectada a 5 V y tiene la misma situación que con el Arduino. Solo tenga en cuenta que el circuito básicamente invierte el nivel lógico de la salida ESP8266.
simular este circuito : esquema creado usando CircuitLab