🛠 Premiers pas : comprendre le monstre à 9 cœurs et entrer dans Linux via ADB
Objetivos
Descubrir la Arduino Portenta X8 (SKU ABX00049, 223,00 € en la tienda oficial en octubre de 2026): no es una simple placa Arduino, sino dos productos industriales en un solo módulo de 66 × 25 mm — «nada menos que 9 núcleos» según Arduino. Por un lado, un NXP i.MX 8M Mini (4× Cortex-A53 hasta 1,8 GHz + Cortex-M4 hasta 400 MHz) que ejecuta Linux con 2 GB de LPDDR4 y 16 GB de eMMC; por otro, un ST STM32H747XI (Cortex-M7 + Cortex-M4) que ejecuta Arduino. Vas a instalar adb, conectarte al Linux embebido y familiarizarte con el entorno. Atención a la trampa de nomenclatura: la X8 no es una placa STM32MP1 y no es la Portenta H7.
Material
- 1 × Arduino Portenta X8
- 1 × cable USB-C de datos (la placa soporta Power Delivery)
- ⚠️ Se recomienda un puerto USB 3.0 en el PC para garantizar la corriente: la placa puede consumir hasta 4 W (máx. 4000 mW, típicos 2350 mW en bucle ocupado)
- PC con adb instalado (Android platform-tools) o el Arduino IDE que lo incluye
- El módulo desnudo no tiene conector RJ45 ni USB-A: para Ethernet y USB extendido, necesitarás una placa base (Max/Hat/Mid Carrier)
Código completo
# 1. Brancher la X8 en USB-C sur un port USB 3.0 du PC.
# 2. Vérifier que la carte est visible (VID 2341, PID 0061) :
adb devices
# (sous Linux : sudo adb devices ou règle udev pour le VID 0x2341)
# 3. Entrer dans le Linux embarqué (utilisateur par defaut : fio)
adb shell
# fio@portenta-x8:~$
# 4. Premiers repères dans le shell Yocto (Linux microPlatform)
cat /etc/os-release # distribution LMP (Foundries.io, base Yocto)
uname -a # noyau 6.1.24-lmp-standard en usine
nproc # 4 : les quatre Cortex-A53 visibles de Linux
free -h # ~2 Go de LPDDR4
df -h / # 16 Go d'eMMC
exit
# 5. Dashboard de maintenance « Arduino Linux Wizard » depuis le PC :
adb forward tcp:8080 tcp:80
# puis ouvrir http://localhost:8080 dans un navigateur
Verificación esperada
adb devices lista la placa; adb shell te lleva a un prompt fio@portenta-x8, nproc devuelve 4 y uname -a muestra el kernel 6.1.24-lmp-standard. El Linux embebido es la Linux microPlatform (LMP) de Foundries.io, una distribución Yocto con soporte Docker integrado — es la puerta de entrada de todos los tutoriales siguientes. El dashboard Linux Wizard (paso 5) es la herramienta oficial de mantenimiento para supervisar el estado de la placa.
Errores frecuentes
- Confundirla con la Portenta H7 o una placa STM32MP1: la X8 es un módulo doble (i.MX 8M Mini para Linux + STM32H747 para Arduino); el lado Linux no se programa con el IDE de Arduino sino mediante contenedores, y el lado Arduino utiliza el core «Arduino Mbed OS Portenta Boards».
adb devicesvacío: cable USB-C «de carga» sin líneas de datos (causa n.º 1), o puerto USB 2.0 con corriente insuficiente para una carga pesada — cambia a USB 3.0.- Buscar la documentación en docs.portenta.io: el antiguo sitio está caído (fallo de DNS) y el repositorio arduino/PortentaDocs devuelve 404; toda la documentación ha migrado a docs.arduino.cc (tutorial oficial: X8 Fundamentals).
- Esperar un entorno de escritorio gráfico: es una distribución Yocto embebida, se trabaja en shell y con contenedores Docker, no en escritorio.
- >
- >
Otros tutoriales para esta placa
- Premier sketch sur le cœur M4 : le blink qui se flash par ADB
- Docker dès la sortie de l'emballage : premier conteneur sur le Linux embarqué
- Pont Linux ↔ Arduino : appeler des fonctions du sketch M4 depuis Python (RPC)
- Mettre la X8 en réseau : Wi-Fi du Murata 1DX et Gigabit Ethernet sur porteuse
- Nœud IoT de datalogging : capteurs sur le M4, stockage et transport en conteneur
- Le firmware caché : mettre à jour le bridge STM32H7 M7 qui expose les périphériques à Linux
Ejemplos de código para esta placa
etat-systeme.shBashgpio-libgpiod.shBashpython-gpio.pyPythondocker-hello.shBashflasher-core-arduino.shBashwifi-nmcli.shBash