Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 47

Flasheo del firmware de

MicroPython con esptool.py en


ESP32 y ESP8266
https://randomnerdtutorials.com/flashing-micropython-firmware-
esptool-py-esp32-esp8266/
Esta publicación muestra cómo flashear el firmware de MicroPython en placas ESP32 / ESP8266 usando el
esptool.py. Funciona en Windows, Mac OS X y Linux. Para obtener la documentación oficial, puede visitar la página
esptool.py GitHub.
Consejo: para un método más fácil de flashear el ESP32 / ESP8266 con MicroPython, recomendamos leer esta guía
para flashear MicroPython con uPyCraft IDE. Sin embargo, recientemente hemos recibido comentarios de nuestros
lectores sobre tener problemas para instalar / usar uPyCraft IDE. Por esa razón, estamos publicando un método
alternativo utilizando el software esptool.py.
Instalación de esptool.py en el equipo

Para trabajar con esptool.py, necesitará Python 2.7, Python 3.4 o una instalación de Python más reciente en su sistema. Recomendamos usar Python 3.7.X,
así que vaya al sitio web de Python e instálelo en su computadora.
Con Python 3 instalado, abra una ventana de Terminal e instale la última versión estable de esptool.py con pip:
pip install esptool
Nota: con algunas instalaciones de Python ese comando puede no funcionar y recibirá un error. Si ese es el caso, intente instalar esptool.py con:
•pip3 instalar esptool
•python -m pip install esptool
•pip2 instalar esptool
Herramientas de configuración también es un requisito que no está disponible en todos los sistemas de forma predeterminada. Puede instalarlo con el
siguiente comando:
pip install setuptools

Después de la instalación, tendrá esptool.py instalado en el directorio ejecutable predeterminado de Python y debería poder ejecutarlo con el comando esptool.py. En
la ventana Terminal, ejecute el siguiente comando:
python -m esptool
Si se instaló correctamente, debería mostrar un mensaje similar (independientemente de su sistema operativo):
Con esptool.py instalado en su computadora, puede actualizar fácilmente sus placas ESP32 o ESP8266 con el
firmware MicroPython. Esta publicación se divide en dos partes, lea Parte 1 o Parte 2 dependiendo de su tablero:
•Parte 1 – ESP32
•Parte 2 – ESP8266
Nota: después de instalar el firmware de MicroPython en su ESP32 o ESP8266, puede volver atrás y usar Arduino
IDE nuevamente. Solo necesita cargar código usando Arduino IDE. Luego, si desea usar MicroPython nuevamente,
debe actualizar el firmware de MicroPython.
[Parte 1 – ESP32] Descarga y actualización del firmware de MicroPython en ESP32
Para descargar la última versión del firmware de MicroPython para el ESP32, vaya a la página de descargas de
MicroPython y desplácese hasta la sección ESP32.
Debería ver una página web similar (ver figura a continuación) con enlaces para descargar ..bin Archivos.
Descargue la versión más reciente. En el momento de escribir este artículo, la última versión es v1.17 (2021-02-
02).bin. No descargue las compilaciones de Nighlty; Esas versiones no son estables y solo se recomiendan para
programadores avanzados.
Nota: si está utilizando una placa diferente (como una PyBoard, WiPy u otra), vaya a la página de descargas de
MicroPython y descargue el firmware adecuado para su placa.
Encontrar el nombre del puerto serie
Es un poco diferente encontrar el nombre del puerto serie en cada sistema operativo, por lo que, por razones de
simplicidad, recomendamos encontrar el nombre de su puerto serie ESP a través del IDE de Arduino. Siga estos
pasos:
1.Conecte la placa al ordenador
2.Abra el IDE de Arduino
3.Ir a Herramientas > puerto
4.Guarde el nombre del puerto serie ESP32 (en nuestro caso es COM7)
5.Cierre su software IDE de Arduino
Importante: si conecta su placa ESP32 a su computadora, pero no puede encontrar el puerto ESP32 disponible en su
IDE Arduino, podría ser uno de estos dos problemas: 1. Faltan controladores USB o 2. Cable USB sin cables de datos.
1. Si no ve el puerto COM de su ESP disponible, esto a menudo significa que no tiene instalados los controladores
USB. Eche un vistazo más de cerca al chip junto al regulador de voltaje a bordo y verifique su nombre.
La placa ESP32 DEVKIT V1 DOIT utiliza el chip CP2102.
Vaya a Google y busque su chip específico para encontrar los controladores e instalarlos en su sistema operativo.
Puede descargar los controladores CP2102 en el sitio web de Silicon Labs.
Después de instalarlos, reinicie el IDE de Arduino y debería ver el puerto serie en el menú Herramientas > puerto.
2. Si tiene los controladores instalados, pero no puede ver su dispositivo, verifique que esté utilizando un cable USB
con cables de datos.
Los cables USB de los bancos de energía a menudo no tienen cables de datos (solo se cargan). Por lo tanto, su
computadora nunca establecerá una comunicación serie con su ESP32. Usar un cable USB adecuado debería
resolver su problema.
Encontrar el archivo de .bin MicroPython
Después de descargar el archivo ESP32 .bin, debería estar en la carpeta Descargas. Por lo tanto, con la ventana de Terminal, deberá navegar a la carpeta Descargas
usando el comando cd:
cd Downloads
Enumere todos los archivos de la carpeta Descargas para asegurarse de que es donde se encuentra el archivo .bin.
En Windows, se utiliza:
dir
En Mac OS X o Linux, ejecute el siguiente comando:
ls

Como puede ver en la captura de pantalla anterior, el archivo ESP32 .bin se encuentra en la carpeta
Descargas: esp32-20190113-v1.9.4-779-g5064df207.bin.
Borrado de la memoria flash ESP32
Antes de flashear el firmware de MicroPython, debe borrar la memoria flash ESP32. Por lo tanto, con su ESP32
conectado a su computadora, mantenga presionado el botón "BOOT/FLASH" en su placa ESP32:
Mientras mantiene pulsado el botón "BOOT/FLASH", ejecute el siguiente comando para borrar la memoria flash
ESP32:
python -m esptool –-chip esp32 erase_flash
Cuando comience el proceso de "Borrado", puede soltar el botón "BOOT / FLASH". Después de unos segundos, la
memoria flash ESP32 se borrará.
Nota: si después del mensaje "Conectando ..." sigue viendo nuevos puntos, significa que su ESP32 no está en modo
intermitente. Debe repetir todos los pasos descritos anteriormente y mantener presionado el botón "BOOT /
FLASH" nuevamente para asegurarse de que su ESP32 entre en modo intermitente y complete el proceso de borrado
con éxito.
Flasheo del firmware de MicroPython en ESP32 con esptool.py
Con su memoria flash ESP32 borrada, finalmente puede actualizar el firmware de MicroPython. Necesita el nombre de
su puerto serie (COM7 en nuestro caso) y la ubicación del archivo .bin ESP32. Reemplace el siguiente comando con
sus datos:
python -m esptool --chip esp32 --port <serial_port> write_flash -z 0x1000 <esp32-X.bin>
En nuestro caso, el comando se ve así:
python -m esptool --chip esp32 --port COM7 write_flash -z 0x1000 esp32-20190113-v1.9.4-779-
g5064df207.bin
Mantenga pulsado el botón "BOOT/FLASH", antes de ejecutar el comando flash. Después de unos segundos esto es lo
que deberías ver:
¡Su ESP32 se actualizó correctamente con el firmware de MicroPython!
Nota: si recibe un error al intentar flashear el firmware, ejecute el comando nuevamente y asegúrese de que está
manteniendo presionado el botón ESP32 "BOOT/FLASH".
[Parte 2 – ESP8266] Descarga y actualización del firmware de MicroPython en ESP8266
Para descargar la última versión del firmware de MicroPython para el ESP32, vaya a la página de descargas de
MicroPython y desplácese hasta la sección ESP8266.
Debería ver una página web similar (ver figura a continuación) con enlaces para descargar ..bin Archivos.
Descargue la versión más reciente. En el momento de escribir este artículo, la última versión es v1.17 (2021-02-
02).bin. No descargue las compilaciones de Nighlty; Esas versiones no son estables y solo se recomiendan para
programadores avanzados.
Nota: si está utilizando una placa diferente (como una PyBoard, WiPy u otra), vaya a la página de descargas de
MicroPython y descargue el firmware adecuado para su placa.
Encontrar el nombre del puerto serie
Es un poco diferente encontrar el nombre del puerto serie en cada sistema operativo, por lo que, por razones de
simplicidad, recomendamos encontrar el nombre de su puerto serie ESP a través del IDE de Arduino. Siga estos
pasos:
1.Conecte la placa al ordenador
2.Abra el IDE de Arduino
3.Ir a Herramientas > puerto
4.Guarde el nombre del puerto serie ESP8266 (en nuestro caso es COM4)
5.Cierre su software IDE de Arduino
Importante: si conecta su placa ESP8266 a su computadora, pero no puede encontrar el puerto ESP8266 disponible
en su Arduino, podría ser uno de estos dos problemas: 1. Faltan controladores USB o 2. Cable USB sin cables de
datos.
1. Si no ve el puerto COM de su ESP disponible, esto a menudo significa que no tiene instalados los controladores
USB. Eche un vistazo más de cerca al chip junto al regulador de voltaje a bordo y verifique su nombre.
La placa ESP8266 ESP-12E NodeMCU utiliza el chip CP2102.
Vaya a Google y busque su chip específico para encontrar los controladores e instalarlos en su sistema operativo.
Después de instalarlos, reinicie el IDE de Arduino y
debería ver el puerto serie en el
menú Herramientas > puerto.
2. Si tiene los controladores instalados, pero no puede ver
su dispositivo, verifique que esté utilizando un cable USB
con cables de datos.
Los cables USB de los bancos de energía a menudo no
tienen cables de datos (solo se cargan). Por lo tanto, su
computadora nunca establecerá una comunicación serie
con su ESP8266. Usar un cable USB adecuado debería
resolver su problema.
Encontrar el archivo de .bin MicroPython
Después de descargar el archivo ESP8266 .bin, debería estar en la carpeta de Descargas. Por
lo tanto, con la ventana de Terminal, deberá navegar a la carpeta Descargas usando el
comando cd:
cd Downloads
Enumere todos los archivos de la carpeta
Descargas para asegurarse de que es
donde se encuentra el archivo .bin. En
Windows, se utiliza:
dir
En Mac OS X o Linux, ejecute el siguiente
comando:
ls

Como puede ver en la captura de pantalla anterior, el


archivo .bin ESP8266 se encuentra en la carpeta
Descargas: esp8266-20180511-v1.9.4.bin.
Borrado de la memoria flash ESP8266
Antes de flashear el firmware de MicroPython, debe borrar
la memoria flash ESP8266. Por lo tanto, con su ESP8266
conectado a su computadora, mantenga presionado el
botón "BOOT/FLASH" en su placa ESP8266:
Mientras mantiene presionado el botón
"BOOT/FLASH", ejecute el siguiente comando para borrar la
memoria flash ESP8266:
python -m esptool --chip esp8266 erase_flash
Cuando comience el proceso de "Borrado", puede soltar el
botón "BOOT / FLASH". Después de unos segundos, se
borrará la memoria flash ESP8266.
Nota: si después del mensaje "Conectando ..." sigue
viendo nuevos puntos, significa que su ESP8266 no está
en modo intermitente. Debe repetir todos los pasos
descritos anteriormente y mantener presionado el botón
"BOOT / FLASH" nuevamente para asegurarse de que su
ESP8266 entre en modo intermitente y complete el
proceso de borrado con éxito.
Flasheo del firmware de MicroPython en ESP8266 con esptool.py
Con su memoria flash ESP8266 borrada, finalmente puede actualizar el firmware de MicroPython. Necesita el
nombre del puerto serie (COM7 en nuestro caso) y la ubicación del archivo .bin ESP8266. Reemplace el siguiente
comando con sus datos:
python -m esptool --chip esp8266 --port <serial_port> write_flash --flash_mode dio --
flash_size detect 0x0 <esp8266-X.bin>
En nuestro caso, el comando final se ve así:
python -m esptool --chip esp8266 --port COM4 write_flash --
flash_mode dio --flash_size detect 0x0 esp8266-20180511-
v1.9.4.bin
Mantenga pulsado el botón "BOOT/FLASH", antes de ejecutar el
comando flash. Después de unos segundos esto es lo que deberías ver:
¡Su ESP8266 se actualizó correctamente con el firmware
de MicroPython!
Nota: si recibe un error al intentar flashear el firmware,
ejecute el comando nuevamente y asegúrese de que está
manteniendo presionado el botón ESP8266
"BOOT/FLASH".
Terminando
Esperamos que este tutorial te haya resultado útil. Su ESP32/ESP8266 ahora debería actualizarse con el firmware de
MicroPython. Para obtener más información sobre MicroPython, lea: Introducción a MicroPython
en ESP32 y ESP8266.
Si te gustó esta publicación, es posible que te gusten nuestras próximas, así que asegúrate de 
suscribirte al blog de RNT y descargar nuestros libros electrónicos gratuitos de electrónica.

También podría gustarte