Borrado de memoria flash en ESP32 con ESPTool para reinicio de fábrica

¡Hola equipo! Bienvenidos al "taller de reparaciones" de Ingtelecto Pro. Hoy no vamos a construir, vamos a destruir (para volver a crear).

¿Tu ESP32 se reinicia constantemente? ¿Se quedó guardada una red WiFi antigua y no logras conectarte a la nueva? ¿O simplemente quieres vender/regalar tu placa y quieres asegurarte de que no quede ni rastro de tu código?

A veces, subir un código "vacío" desde Arduino IDE no es suficiente. Necesitamos una limpieza profunda. Hoy aprenderemos a usar ESPTool para realizar un Hard Reset y dejar la memoria de tu ESP32 tan limpia como el día que salió de la fábrica. ¡Vamos a revivir ese chip! 🧹✨

Analogía del Mundo Real: Formatear vs. Borrar Archivos

Cuando subes un sketch nuevo a tu ESP32, es como borrar un archivo de Word y escribir otro encima. Pero... ¿qué pasa con las configuraciones ocultas, las redes WiFi guardadas o los archivos SPIFFS? A veces se quedan "fantasmas" ahí.

Lo que haremos hoy es el equivalente a Formatear el Disco Duro de tu computadora. Borraremos cada bit, cada configuración y cada error corrupto. Es la solución definitiva cuando nada más funciona.

Índice de contenido
  1. Materiales y Software Necesarios
  2. Fundamentos: ¿Qué es ESPTool?
  3. Paso 1: Instalación de Python y Drivers 🐍
    1. 1. Instalar Python
    2. 2. Instalar los Drivers USB (Crucial)
    3. 3. Instalar ESPTool
  4. Paso 2: Identificar el Puerto COM 🔌
  5. Paso 3: El Borrado Total (Wipe) ☢️
    1. El "Baile de los Dedos" (Modo Boot)
  6. Solución de Problemas Comunes
  7. Verificación: El "Hola Mundo"
  8. Conclusión

Materiales y Software Necesarios

Para esta operación quirúrgica, necesitamos preparar nuestro quirófano digital.

Requisitos ✅

  • 1 x Placa ESP32 (La "paciente").
  • 1 x Cable Micro-USB o USB-C de buena calidad (Asegúrate que transmite datos).
  • Una PC con Windows, Mac o Linux.
  • Python instalado (versión 3.7 o superior).

Fundamentos: ¿Qué es ESPTool?

Antes de abrir la terminal, entendamos nuestra herramienta.

¿Qué es ESPTool?

Es la "navaja suiza" oficial de Espressif. Es un script basado en Python que se comunica directamente con el Bootloader (el gestor de arranque) del chip. Nos permite leer, escribir y, lo más importante hoy, borrar la memoria flash sin pasar por el IDE de Arduino.

Paso 1: Instalación de Python y Drivers 🐍

Este es el paso donde el 80% de la gente falla. ¡Hazlo con calma!

1. Instalar Python

Si ya tienes Python, salta esto. Si no, descárgalo de su web oficial.
¡OJO! Durante la instalación, marca la casilla que dice: "Add Python to PATH". Si no haces esto, los comandos no funcionarán.

2. Instalar los Drivers USB (Crucial)

Si tu computadora no reconoce el ESP32, no podremos borrar nada. Dependiendo de tu placa, necesitas uno de estos dos drivers:

  • CP210x: Para placas DevKit V1 originales y NodeMCU de calidad.
  • CH340: Para placas genéricas y clones económicos.

Tip: Mira el chip cuadrado o rectangular cerca del puerto USB de tu ESP32. Ahí dice el modelo.

3. Instalar ESPTool

Abre la terminal de tu computadora (CMD o PowerShell en Windows) y escribe este comando mágico:

pip install esptool

Si todo sale bien, verás barras de carga y un mensaje de éxito. Para confirmar, escribe:
esptool.py version

Paso 2: Identificar el Puerto COM 🔌

Necesitamos saber en qué "puerta" está conectado el ESP32.

  1. Conecta el ESP32 a la PC.
  2. En Windows: Abre el "Administrador de Dispositivos" > "Puertos (COM y LPT)". Busca el que diga "Silicon Labs" o "USB-SERIAL CH340". Anota el número (ej: COM3).
  3. En Mac/Linux: Abre la terminal y escribe ls /dev/tty.*. Busca algo como /dev/tty.usbserial-xxxx.

Paso 3: El Borrado Total (Wipe) ☢️

¡Llegó el momento de la verdad! Vamos a dejar el cerebro del ESP32 en blanco.

Copia el siguiente comando en tu terminal, pero NO presiones Enter todavía.

python -m esptool --chip esp32 --port COMx erase_flash

*Sustituye COMx por tu puerto real (ej: COM3, COM5).

El "Baile de los Dedos" (Modo Boot)

Muchos ESP32 no entran en modo de programación automáticamente. Tienes que forzarlos. Sigue esta secuencia exacta:

  1. Mantén presionado el botón BOOT en tu placa ESP32.
  2. Sin soltar el botón BOOT, presiona Enter en tu computadora para ejecutar el comando.
  3. Verás que en la pantalla aparece el texto Connecting.........
  4. En cuanto veas que empieza a cargar o dice "Erasing", ¡SUELTA el botón BOOT!

Si todo ha ido bien, verás un mensaje final que dice "Chip erase completed successfully".

Solución de Problemas Comunes

¿Te quedaste atascado en "Connecting....."?

Este es el error clásico. Significa que ESPTool está tocando la puerta, pero el ESP32 no abre.

  • Solución 1 (El Capacitor): Algunas placas de mala calidad necesitan que presiones el botón EN (Enable) un instante mientras mantienes BOOT presionado, justo cuando sale el mensaje "Connecting".
  • Solución 2 (Cable USB): El 50% de las veces es un cable malo. Prueba con otro cable USB más corto y grueso.
  • Solución 3 (Puerto Incorrecto): Verifica que no tengas abierto el monitor serie de Arduino IDE. ¡El puerto COM no se puede compartir! Ciérralo todo.

Verificación: El "Hola Mundo"

Ahora tu ESP32 es un ladrillo... pero un ladrillo limpio. No hará nada si lo conectas a la corriente. Para verificar que está vivo, abre Arduino IDE y sube el clásico ejemplo Blink.

Si el LED parpadea, ¡felicidades! Has salvado tu placa de la basura.

Conclusión

¡Operación Exitosa! 👨‍⚕️

Has aprendido a usar herramientas de línea de comandos para mantenimiento de hardware. Esta habilidad te separa de los principiantes. Ahora sabes que si tu proyecto falla inexplicablemente, siempre tienes el "Botón Rojo" de erase_flash para empezar de cero.

¿Qué sigue?
Ahora que tu ESP32 está limpio, ¿por qué no intentas instalarle un firmware diferente? En el próximo tutorial podríamos ver cómo instalar MicroPython en este chip recién borrado.

¡Sigue experimentando y no dejes que ningún bug te detenga!

Carlos Julián

Carlos Julián es el fundador de Ingtelecto, es Ingeniero Mecatrónico, Profesor y Programador, cuenta con una Maestria en Ciencias de la Educación, creador de contenido educativo en redes sociales. Lee más sobre mi trayectoria aquí.

Estos temas te pueden interesar

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Tu puntuación: Útil

Subir