Grabador STM32 por DFU que verifica antes de escribir
Pon la placa en modo DFU, elige un .dfu, .hex o .bin, y la página lee el mapa de flash y la identidad del chip y comprueba cada byte del archivo contra ellos. Si algo no cuadra, el botón Grabar sigue apagado y te dice por qué. Nunca toca los option bytes ni la protección de lectura. Funciona en Chrome, Edge u Opera en una computadora.
✓
¿Problemas de conexión?
El navegador está bien pero la placa no aparece o el puerto no se abre:
- Usa un cable USB de datos (muchos cables de carga de móvil no llevan datos) y prueba otro puerto USB; si usas un hub, prueba directo al ordenador.
- Cierra cualquier otra cosa que tenga el puerto abierto (monitor serie del Arduino IDE, PlatformIO, un terminal, otra pestaña de esta página) y vuelve a conectar.
- Windows: el dispositivo DFU necesita el driver WinUSB. Instálalo con Zadig (elige el dispositivo STM32 BOOTLOADER, driver WinUSB). zadig.akeo.ie
- Linux: permite el dispositivo DFU sin root con una regla udev y luego reconéctalo:
echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="0483", ATTR{idProduct}=="df11", MODE="0666"' | sudo tee /etc/udev/rules.d/60-stm32-dfu.rules; sudo udevadm control --reload
1 · Conecta la placa en modo DFU
Mantén BOOT0 (o BOOT) mientras reseteas o conectas la placa, y elige “STM32 BOOTLOADER” en la lista. Al conectar no se escribe nada: la página solo lee el mapa de flash y la identidad.
- Familia
- DEV_ID
- Flash interna
- Nunca se escribe
- Protección de lectura
- USB
2 · Elige el firmware
- Archivo
- Tipo
- Escribe
- Tabla de vectores
- Target DFU
- SHA-256
3 · Compatibilidad
Cada línea debe pasar antes de habilitar Grabar.
Conecta una placa y elige un archivo para ver las comprobaciones.
4 · Grabar
Avanzado
Pega un SHA-256 por línea. Mientras la lista no esté vacía, cualquier otro archivo se rechaza. Se guarda solo en este navegador (localStorage) por comodidad, no como control de seguridad.
Herramienta gratuita, ofrecida tal cual, sin garantía. Eres responsable de elegir el firmware correcto para tu placa; flashear puede borrar o sobrescribir lo que hay en el dispositivo. ¿Necesitas que lo hagamos por ti? Podemos ayudarte.
Registro
La fórmula
cada byte dentro de la flash interna escribible de este dispositivo · cabe · SP inicial dentro de la SRAM de esta familia · reset handler impar y dentro de la imagen · VID:PID y target del .dfu coinciden · relectura tras escribir
Cuándo usarla
Cargar una versión en una placa de desarrollo STM32, regrabar un lote en el banco, o dar a un cliente una página que graba su dispositivo sin STM32CubeProgrammer. Habla con el bootloader DFU de ROM de ST (USB 0483:DF11) por WebUSB, el mismo protocolo que usan dfu-util y CubeProgrammer, así que tampoco hay que instalar nada en la placa.
Trampas comunes
- Entra primero en modo DFU: mantén BOOT0 en alto (o el botón BOOT) mientras reseteas o conectas la placa. Aparece como “STM32 BOOTLOADER”. Las placas con ST-LINK integrado necesitan un cable USB directo al conector USB del propio micro, no al puerto del ST-LINK.
- El STM32F103 “Blue Pill” no tiene bootloader USB en ROM — solo el serial por USART1. Esta herramienta no lo ve; una herramienta de bootloader serial es otra página.
- El mapa de flash, la zona de option bytes y la OTP vienen del propio bootloader (sus cadenas de alternate setting DfuSe), así que “flash interna escribible” es la de este chip, no una tabla genérica. Todo lo que caiga en option bytes, OTP, memoria de sistema o RAM se rechaza, y esas zonas nunca se abren para escritura.
- Un .bin no lleva dirección, así que la página lo escribe donde le digas (0x08000000 por defecto). Después comprueba la tabla de vectores en esa dirección: el stack pointer inicial debe estar dentro de la SRAM de esta familia y el reset handler debe ser una dirección Thumb dentro del archivo. Eso es lo que detecta una compilación para G0 en una placa F4, o una imagen puesta en el offset equivocado.
- Solo se borran los sectores que cubre el archivo. El borrado total está apagado por defecto y pide su propia confirmación. La protección de lectura (RDP) se detecta y la página se detiene: no intentará bajarla, porque eso borra el chip.
- Nada sale de tu computadora: el archivo se analiza en la página y se escribe directo por USB. La lista de hashes aprobados vive solo en este navegador.
Nota relacionada
Grabación de firmware desde el navegador sin instalar nada¿Quieres un grabador así para tu propio producto, con números de serie y registro de producción?