ESP8266-12E MicroPython No se puede acceder a REPL (indicador de Python)

Estoy tratando de instalar el firmware MIcroPython en mi chip ESP8266-12E. Estoy usando esptool.pypara flashear el firmware. He subido con éxito el firmware esp8266-20170612-v1.9.1.binseguido de un flash_erase. He usado los siguientes comandos para flashear el chip.

$ sudo esptool.py --port /dev/ttyUSB0 erase_flash
  esptool.py v2.0.1
  Connecting........_
  Detecting chip type... ESP8266
  Chip is ESP8266
  Uploading stub...
  Running stub...
  Stub running...
  Erasing flash (this may take a while)...
  Chip erase completed successfully in 13.0s
  Hard resetting...

$ sudo esptool.py --port /dev/ttyUSB0 write_flash --flash_mode qio --flash_size detect 0x0 esp8266-20170612-v1.9.1.bin --verify
  esptool.py v2.0.1
  Connecting....
  Detecting chip type... ESP8266
  Chip is ESP8266
  Uploading stub...
  Running stub...
  Stub running...
  Configuring flash size...
  Auto-detected Flash size: 4MB
  Flash params set to 0x0040
  Compressed 598432 bytes to 390604...
  Wrote 598432 bytes (390604 compressed) at 0x00000000 in 34.5 seconds (effective 138.8 kbit/s)...
  Hash of data verified.

  Leaving...
  Verifying just-written flash...
  (This option is deprecated, flash contents are now always read back after flashing.)
  Flash params set to 0x0040
  Verifying 0x921a0 (598432) bytes @ 0x00000000 in flash against esp8266-20170612-v1.9.1.bin...
  -- verify OK (digest matched)
  Hard resetting...

Como puede ver, la verificación del proceso flash es OK. Y puedo ver un nuevo ssid de wifi en mi lista de wifi.

Ahora, cuando intento acceder a REPL a través de picocomél, está pendiente de lo siguiente:

picocom v1.7

port is        : /dev/ttyUSB0
flowcontrol    : none
baudrate is    : 115200
parity is      : none
databits are   : 8
escape is      : C-a
local echo is  : no
noinit is      : no
noreset is     : no
nolock is      : no
send_cmd is    : sz -vv
receive_cmd is : rz -vv
imap is        : 
omap is        : 
emap is        : crcrlf,delbs,

Terminal ready

También probé screen, puttyy minicomel mismo comportamiento en ellos también. También encontré un comportamiento extraño que funciona perfectamente a través de ESPlorer.

¿Hay algo que me estoy perdiendo? O alguna sugerencia para cazar esta situación?

Gracias

Probaría una velocidad en baudios diferente: verificaría la velocidad en baudios del "registro de arranque" de 74880 bps u otra que podría establecer micropython (debería buscar en los documentos de micro python)
¿Intentaste presionar ctrl-D en picocom? Solo para hacer un reinicio del microcontrolador.
Esto funcionó para mí también. Esta solución también está documentada en la guía de introducción de MicroPython para ESP8266 en docs.micropython.org/en/latest/esp8266/esp8266/tutorial/… .

Respuestas (3)

Estaba teniendo un problema similar con una mini placa Wemos D1. Borrar y flashear el firmware funcionó. Sin embargo, no recibía el mensaje REPL, el reinicio me estaba dando basura. Lo resolví agregando "-fm dio" al escribir flash.

esptool.py --port /dev/ttyUSB0 --baud 460800 write_flash -fm dio --flash_size=detect 0 esp8266-20170823-v1.9.2.bin

¡agregar -fm dio también funcionó para mí! Gracias

Tuve el mismo problema, verifiqué mi configuración (módulo ESP8266 desnudo) más de 100 veces y definitivamente era correcto. Pude flashear el ESP, pero no pude conectarme después. El problema tenía algo que ver con mi tablero/cableado; malas uniones (tal vez debido a la suciedad/pegamento). Hice exactamente el mismo cableado en otra placa con resistencias limpias, ahora funciona.

Tuve el mismo problema con ESP8266 ESP-12E, pero -fm diono ayudó. Sorprendentemente, parpadear en otro modo dout(salida dual) ayudó:

esptool.py --port COM11 --baud 460800 write_flash -e --flash_size=detect -fm dout 0 esp8266-20190529-v1.11.bin