🛠 Mettre la X8 en réseau : Wi-Fi du Murata 1DX et Gigabit Ethernet sur porteuse
Objectifs
Donner Internet à la X8 pour pouvoir tirer des conteneurs. Deux chemins : le module Murata 1DX (Cypress LBEE5KL1DX) — Wi-Fi 802.11 b/g/n jusqu'à 65 Mbps + Bluetooth 5.1 BR/EDR/LE — et un Ethernet Gigabit : le MAC GbE de l'i.MX 8M Mini (AVB, IEEE 1588, EEE) relié à une interface 10/100/1000 avec PHY embarqué sur la carte. Piège physique : le module nu n'a pas de connecteur RJ45 — la prise vient des porteuses (Max/Hat/Mid Carrier). Sous cette Yocto, la configuration réseau se pilote typiquement avec NetworkManager (nmcli), pas avec les bibliothèques Arduino WiFi.
Matériel
- 1 × Arduino Portenta X8 + câble USB-C data
- Pour l'Ethernet filaire : une porteuse avec RJ45 (Max Carrier, Mid Carrier, Hat Carrier) ou le câblage du PHY sur les connecteurs 80 broches
- Un point d'accès Wi-Fi 2,4 GHz (le module est 802.11 b/g/n)
- adb +
adb shell(utilisateur fio, sudo disponible)
Code complet
adb shell
fio@portenta-x8:~$ sudo -i
# État des interfaces
ip -a
# Wi-Fi via NetworkManager (distribution LMP)
nmcli device status
nmcli device wifi list
nmcli device wifi connect "MON_SSID" password "MON_MOT_DE_PASSE"
# Ethernet (cable branche sur la porteuse) : en general DHCP immediat
ip -4 addr show
# Test de connectivite
ping -c 3 1.1.1.1
# Persistance : nmcli enregistre les connexions par defaut
nmcli connection show
# Cote MCU (Arduino) : la pile WiFi du core Mbed existe aussi pour
# le M4, mais le chemin recommande sur X8 est le réseau Linux ;
# le BT 5.1 du 1DX est exploitable depuis Linux (BlueZ).
Vérification attendue
nmcli device wifi connect ... confirme la connexion et ip -4 addr show affiche une IP sur wlan0 (ou eth0 sur porteuse) ; ping 1.1.1.1 passe et docker pull fonctionne enfin. En atelier, privilégie le câble : le MAC GbE de l'i.MX supporte AVB et IEEE 1588 (PTP) — utile pour de la synchronisation temps réel industrielle.
Erreurs fréquentes
- Chercher la prise RJ45 sur le module nu : elle n'existe pas ! Le PHY 10/100/1000 est soudé sur la carte mais le connecteur vient des porteuses — sans Max/Mid/Hat Carrier, pas de câble.
- Utiliser les exemples
WiFi.hdu core Mbed comme sur Portenta H7 : sur la X8, le réseau est une affaire de Linux (NetworkManager, conteneurs) ; les exemples d'ancienne doc pourrissent (issue #884 « WiFiAccessPoint does not name a type », fermée mais révélatrice). docker pullen échec alors que le ping passe : DNS ! Vérifie/etc/resolv.confou les serveurs DNS poussés par DHCP avant d'accuser Docker.- Mot de passe Wi-Fi avec caractères spéciaux dans nmcli : échappe correctement ou passe par
nmcli connection edit, sinon la connexion échoue silencieusement. - Réseaux 5 GHz uniquement : le Murata 1DX est 802.11 b/g/n (65 Mbps max) — vérifie que ton SSID est diffusé en 2,4 GHz.
- >
- >
Autres tutoriels pour cette carte
- Premiers pas : comprendre le monstre à 9 cœurs et entrer dans Linux via ADB
- 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)
- 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
Exemples de code pour cette carte
etat-systeme.shBashgpio-libgpiod.shBashpython-gpio.pyPythondocker-hello.shBashflasher-core-arduino.shBashwifi-nmcli.shBash