Programación ESP8266 en circuito

Diseñé un controlador LED WS2812B simple que utiliza ATMega328p y un ESP8266 para conectarse a WiFi. Se supone que los dos se comunican a través de UART. Cometí un error al no probar las capacidades de programación del ESP8266 cuando el UART está conectado al AVR. Cuando conecto el ESP a la PC, la basura de datos de reinicio estándar, así como un mensaje preprogramado, readyaparece en el monitor en serie que confirma que el TX está funcionando. Sin embargo, no puedo reprogramar el ESP, incluso cuando el reinicio del AVR se está reduciendo. No tengo un osciloscopio, por lo que no puedo sondear el pin RX del ESP. No he soldado la resistencia R9 ya que mi programador es de 3.3V, no de 5V como el AVR.

esquemático

Debe reducir las resistencias en su divisor de voltaje en un factor de al menos 20, incluso si falta el elemento de derivación, 100K en serie es mucho para un enlace en serie. Mantener el ATmega en reinicio debería funcionar; para demostrar que no es ningún otro problema, desoldar el ATmega de una de las placas o construir uno sin él o duplicar el resto del circuito alrededor del ESP8266 en una placa de prueba. ¿Está seguro de que está haciendo correctamente todo el cableado necesario para ingresar al modo de programación?
También puede enviar temporalmente la señal de su PC al lado del ESP de R8 como prueba.
@ChrisStratton Estoy conectando el puente IO0 a GND. Con IO2 conectado ALTO e IO15 BAJO, debería estar en modo de programación. Construiré solo la parte ESP y publicaré una actualización. Gracias por el consejo sobre las resistencias divisorias también.
@ChrisStratton, ¿por qué mantener el ATmega en reinicio?

Respuestas (1)

Después de reemplazar R8 con un puente de 0Ω (R9 aún eliminado) mientras mantenía el AVR en reinicio, logré reprogramar con éxito el ESP. Gracias a @ChrisStratton

¿Por qué mantener el atmega en reinicio?
Si no lo mantengo en el reinicio, los pines se elevan alto, por el ATMega
¿Inicializar UART de ATmega?
No, no lo hago. El ATMega aún no ha sido programado
entonces, ¿por qué se levantarían los pasadores?
Ni idea. Pero cuando está reiniciado, los pines están flotando (al menos creo que lo están), por lo que funciona sin problemas.