2.1 KiB
Copia de seguridad del ESP32
scripts/backup_device.py realiza una copia de solo lectura de las regiones críticas del ESP32. No escribe en la flash y no ejecuta erase_flash.
Copia recomendada
Cerrar el Serial Monitor y ejecutar:
cd ~/Desktop/TimbreESPv2
python3 scripts/backup_device.py --scope data
El script autodetecta el puerto USB y usa 115200 baudios, que es más seguro para cables CH340 y hubs USB.
Para incluir también la imagen completa de 4 MiB:
python3 scripts/backup_device.py --scope full
La copia completa puede fallar en algunos cables CH340. Si falla, usar la copia de datos:
python3 scripts/backup_device.py --scope data --baud 115200
Regiones guardadas
| Archivo | Offset | Tamaño |
|---|---|---|
bootloader.bin |
0x01000 |
32 KiB |
partitions.bin |
0x08000 |
4 KiB |
nvs.bin |
0x09000 |
20 KiB |
otadata.bin |
0x0E000 |
8 KiB |
littlefs.bin |
0x350000 |
704 KiB |
En el modo full también se guardan app0.bin, app1.bin y flash-full.bin.
Archivos generados
Cada copia incluye:
manifest.json: fecha, puerto, baudios, tamaños y hashes SHA-256;partitions.csv: tabla de particiones decodificada;device-info.txt: identificación del chip y flash;README.txt: advertencia de restauración;logs/: salida deesptool.
El directorio predeterminado es:
~/Documents/TimbreESPv2-backups/backup-YYYYMMDD-HHMMSS/
Los archivos se crean con permisos privados porque nvs.bin puede contener credenciales WiFi y autenticación.
Restauración
No hay restauración automática. Antes de escribir cualquier imagen:
- Comparar
partitions.csvcon la tabla esperada. - Verificar el tamaño de flash del ESP32.
- Confirmar offsets y tamaños.
- Guardar otra copia antes de modificar la flash.
- No utilizar un directorio marcado con
INCOMPLETE.txt.
La copia raw de LittleFS contiene el sistema de archivos completo; no son archivos individuales extraídos. Para consultar o migrar su contenido hay que montarlo en un entorno compatible o implementar una extracción posterior.