LuckFox Pico Pro
Una placa de desarrollo con sistema operativo (micro-Linux) basado en el chip Rockchip RV1106 y diseñado para aplicaciones relacionadas con IA
SISTEMAS EMBEBIDOS
Biblioman
1/16/20245 min leer
Introducción
La placa LuckFox Pico Pro es una placa de desarrollo que admite un sistema operativo Linux reducido de consola está basada en el chip Rockchip RV1106 un SoC de procesamiento visual IPC diseñado para aplicaciones relacionadas con IA. Está construido sobre un núcleo ARM Cortex-A7 de 32 bits de un solo núcleo con tecnología NEON (Advanced SIMD) y FPU (Unidad de Punto Flotante) integrados, y cuenta con una NPU (Unidad de Procesamiento Neuronal) incorporada que admite operaciones mixtas INT4/INT8/INT16, con una potencia informática de hasta 0,5 TOP
La placa de desarrollo tiene 26 pines GPIO y admite múltiples interfaces, incluidas GPIO, UART, SPI, I2C, USB 2.0, etc. Dispone de una memora RAM DDR3L de 128M, controladora Ethernet 10/100M y PHY integrado, procesador de imágenes (ISP) que admite cámaras de hasta 5M a 30 fps que se conectan a la placa a través de una interfaz MIPI CSI de 2 carriles.
Admite como sistemas operativos Ubuntu 22.04, Alpine Linux y Builroot (una herramienta fácil de usar para generar sistemas Linux integrados a través de compilación cruzada), para el almacenamiento del sistema y de datos dispone de una ranura para tarjetas micro-SD y de una NAND SPI FLASH (256 MB)
Con estas características se puede utilizar en los proyectos siguientes:
Dispositivos domésticos inteligentes
Equipos de automatización industrial.
Robots y drones
Dispositivos de monitoreo inteligentes
Equipos de transporte inteligentes
Dispositivos médicos inteligentes
Como cargar el sistema operativo (Ubuntu 22.04)
Nos descargamos RK Driver Assistant (para Windows) desde aquí y lo instalamos (después de instalado reiniciamos el ordenador.
Descargamos el firmware con el SO a instalar en esta ocasión ubuntu seleccionando entre las opciones disponibles la que corresponde a nuestro modelo de placa Luckfox Pico Pro-Max SDCard.
Nos descargamos la herramienta para Windows Rockchip Soc Toolkit desde aquí
La instalación de Ubuntu solo es posible en la micro-SD (mas adelante veremos como instalar BuilRoot en la NAND FLASH
Presionamos el pulsador boot en la placa y enchufamos el cable USB a nuestro ordenador. Suelte el botón BOOT y la herramienta de flasheo Rockchip mostrará el dispositivo MaskRom.
De fabrica la Luckfox Pico Pro-Max viene con un firmware cargado en la SPI FLASH debemos borrarlo previamente para que el sistema operativo pueda arrancar desde la micro-SD para ello realizamos los siguientes pasos:
Hacemos clic en "Search Path" para seleccionar la carpeta donde está el sistema operativo nos saldrá una ventana donde nos preguntará si deseamos volver a cargar el archivo env le decimos que si.
Seleccionamos la pestaña opciones avanzadas marcamos con el ratón el archivo con nombre DownloadBin y mas abajo pulsamos el botón DownloadBin para descargarlo a la placa.
Hacemos clic en el botón Borrar todo, el proceso se irá mostrando en la ventana de la derecha
Flasheo de la tarjeta micro-SD
Seleccionamos la pestaña SDTool, si los drivers se instalaron correctamente nos debe de aparecer el disco USB (convertidor de SD a USB)
Seleccionamos la opción SD Boot
Importamos los siguientes archivos de arranque uno a uno haciendo clic sobre Boot Files
boot.img
env.img
idblock.img
oem.img
rootfs.img
uboot.img
userdata.img
Hacemos clic sobre el botón "Crear SD"
Pinout
Una vez cargado el sistema operativo en la micro-SD la colocamos en la placa, conectamos el cable Ethernet a nuestra red local y volvemos a enchufarla, veremos que el led denominado user empieza a parpadear. Comprobamos a través de nuestro router la IP dinámica que le ha dado el servicio DHCP de nuestro router y la dejamos fija para que siempre le asigne la misma IP, a partir de ahora podremos acceder a la placa a través de un cliente SSH desde nuestro ordenador. En el siguiente vídeo se muestra todo el proceso paso a paso además de mis comentarios acerca de esta placa de desarrollo basada el SoC RV1106:
Después de probar la placa con el sistema operativo Ubuntu me di cuenta de que por el momento no es el sistema ideal para "cacharrear" con esta placa debido a la falta de drivers y al consumo de recursos hardware que necesita sobre todo memoria RAM y espacio en disco, eso hace que este sistema operativo no se pueda instalar en la NAND FLASH, la mejor opción es Builroot con este sistema operativo minimalista podremos obtener las mayores funcionalidades de la placa y lo podremos instalar tanto en la micro-SD como en la NAND FLASH. En el siguiente vídeo vamos hacer un test mas a fondo de la placa donde veremos los siguiente puntos:
Instalación del SO BuildRoot versión compilada en la NAND FLASH (paso a paso)
Ejemplo de programación en Python (blink.py) y como programar en C
Aquí tenéis el vídeo completo:
Llegado a este punto de pruebas con la LuckFox Pico Pro-Max y aunque la cámara CSI me decepciono por la falta de drivers y ejemplos para implementar en C o Python el poder correr un modelo de Inteligencia Artificial ya entrenado para el reconocimiento de objetos en una memoria NAND FLASH de 256 MB me ha fascinado, y no se trata solo de correr una demo ya preparada, con el framework de RKNN Toolkit2 de Rockchip podremos utilizar framework de terceros como Pytorch, Tensorflow, Darknet, etc entrenar o coger un modelo de IA ya entrenado y convertirlo a un modelo que se pueda ejecutar en los procesadores Rockchip y no solo eso podremos utilizar la misma herramienta para otras placas que montan este tipo de procesadores pero con una NPU (Unidad de Procesamiento Neuronal) mas potente como la Orange Pi 5 y 5 Plus que tienen una NPU de 6 Tops
Si te ha gustado el tutorial o te interesa algún tema en particular relacionado con el artículo puedes dejar tus comentarios en los vídeos de YouTube que acompañan al tutorial.
Un saludo