Este repositorio contiene tres scripts para configurar, respaldar y clonar Jetson Nanos para el proyecto de Control de Calidad.
1-setup-tensorrt.sh: Configura TensorRT y Edge Impulse2-backup-jetson.sh: Crea un backup comprimido del sistema3-flash-jetson.sh: Flashea el backup a nuevas tarjetas SD
- Jetson Nano con JetPack instalado
- Conexión a internet
- Fuente de alimentación adecuada (recomendada para máximo rendimiento)
- Espacio en disco suficiente para backups
- Tarjeta SD de al menos 16GB para nuevas instalaciones
- Instala las herramientas de Edge Impulse
- Instala el compilador Clang
- Clona el repositorio de inferencia de Edge Impulse
- Instala OpenCV
- Configura las rutas de las bibliotecas CUDA
- Modifica el tipo de modelo FOMO en el código fuente
chmod +x 1-setup-tensorrt.sh
./1-setup-tensorrt.sh- Extrae tu modelo TensorRT desde Edge Impulse Studio
- Compila el modelo:
APP_EIM=1 TARGET_JETSON_NANO=1 CC=clang CXX=clang++ CXXFLAGS="-std=c++17" make -jSi hay errores, usa estos flags:
APP_EIM=1 TARGET_JETSON_NANO=1 CC=clang CXX=clang++ CXXFLAGS="-std=c++17 -Wno-deprecated-declarations" LDFLAGS="-L/usr/local/cuda-10.2/lib64 -lstdc++fs" make -j- Maximiza el rendimiento:
sudo /usr/bin/jetson_clocks- Prueba el modelo:
edge-impulse-linux-runner --model-file ./build/model.eimEl script ofrece instalar el SDK de Python:
python3 topping.py ~/build/model.eim- Backup comprimido (reduce significativamente el tamaño)
- Solo respalda el espacio usado (no espacio vacío)
- Incluye barra de progreso
- Añade 10% de margen de seguridad
- Nombra el archivo con la fecha actual
sudo ./2-backup-jetson.shEl backup se guardará como jetson_backup_YYYYMMDD.img.gz
- Comprobaciones de seguridad para evitar borrar discos del sistema
- Validación del archivo de backup
- Desmontaje automático de particiones
- Expansión automática de la partición
- Muestra progreso en tiempo real
sudo ./3-flash-jetson.sh jetson_backup_YYYYMMDD.img.gz- El script mostrará los dispositivos disponibles
- Selecciona el dispositivo destino (ejemplo: sdb, mmcblk0)
- Confirma las advertencias de seguridad
- Espera a que termine el proceso
- Verifica que JetPack esté correctamente instalado
- Comprueba las rutas de CUDA en
/usr/local/cuda-10.2
- Verifica todas las dependencias instaladas
- Usa los flags alternativos proporcionados
- Si falla la expansión de partición:
sudo resize2fs /dev/mmcblk0p1 # Ajusta el dispositivo según sea necesario- Si no se reconoce la tarjeta:
sudo lsblk # Para ver dispositivos disponibles- Los scripts deben ejecutarse en el orden indicado
- Algunos scripts requieren permisos de administrador
- La instalación de OpenCV puede tardar varios minutos
- No desconectes la alimentación durante los procesos
- Usa una fuente de alimentación dedicada para mejor rendimiento
- Haz backups regulares de tus configuraciones importantes
Herramientas para gestionar Jetson Nano.
- NVIDIA SDK Manager instalado (https://developer.nvidia.com/sdk-manager)
- Jetson Nano
- Tarjeta SD
- Cable USB para modo Recovery
sudo ./1-setup-tensorrt.shConfigura TensorRT en el Jetson Nano.
sudo ./2-backup-jetson.shCrea un backup del sistema usando NVIDIA SDK Manager.
sudo ./3-flash-jetson.sh <archivo_backup.img.gz>Flashea un backup en una nueva SD usando NVIDIA SDK Manager.
- Ejecuta
sudo ./2-backup-jetson.sh - Abre NVIDIA SDK Manager
- Selecciona tu Jetson Nano
- En la sección 'Flash OS Image':
- Selecciona 'Backup'
- Guarda el backup con el nombre sugerido
- Sigue las instrucciones en pantalla
- Ejecuta
sudo ./3-flash-jetson.sh <archivo_backup.img.gz> - Abre NVIDIA SDK Manager
- Selecciona tu Jetson Nano
- En la sección 'Flash OS Image':
- Selecciona 'Restore'
- Selecciona el archivo de backup
- Sigue las instrucciones en pantalla
Para entrar en modo Recovery:
- Desconecta la alimentación
- Mantén presionado el botón RECOVERY
- Conecta la alimentación mientras mantienes RECOVERY
- Suelta RECOVERY después de 2 segundos
- Los archivos de backup (.img.gz) están en .gitignore
- Usa siempre NVIDIA SDK Manager para operaciones de backup y flash
- Asegúrate de tener suficiente espacio en disco para los backups
- Los backups se guardan por defecto en ~/nvidia/nvidia_sdk/backup/