🛠 Mettre la X8 en réseau : Wi-Fi du Murata 1DX et Gigabit Ethernet sur porteuse
Objectives
Provide Internet access to the X8 to enable pulling containers. There are two paths: the Murata 1DX module (Cypress LBEE5KL1DX) — 802.11 b/g/n Wi-Fi up to 65 Mbps + Bluetooth 5.1 BR/EDR/LE — and Gigabit Ethernet: the i.MX 8M Mini's GbE MAC (AVB, IEEE 1588, EEE) connected to a 10/100/1000 interface with an on-board PHY. Physical pitfall: the bare module has no RJ45 connector — the jack comes from the carrier boards (Max/Hat/Mid Carrier). Under this Yocto, network configuration is typically managed with NetworkManager (nmcli), not with Arduino WiFi libraries.
Hardware
- 1 × Arduino Portenta X8 + USB-C data cable
- For wired Ethernet: a carrier board with RJ45 (Max Carrier, Mid Carrier, Hat Carrier) or wiring the PHY to the 80-pin connectors
- A 2.4 GHz Wi-Fi access point (the module is 802.11 b/g/n)
- adb +
adb shell(user fio, sudo available)
Complete code
adb shell
fio@portenta-x8:~$ sudo -i
# Etat 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 reseau Linux ;
# le BT 5.1 du 1DX est exploitable depuis Linux (BlueZ).
Expected verification
nmcli device wifi connect ... confirms the connection and ip -4 addr show displays an IP on wlan0 (or eth0 on a carrier board); ping 1.1.1.1 succeeds and docker pull finally works. In the workshop, prefer the cable: the i.MX GbE MAC supports AVB and IEEE 1588 (PTP) — useful for industrial real-time synchronization.
Common errors
- Looking for the RJ45 jack on the bare module: it doesn't exist! The 10/100/1000 PHY is soldered onto the board but the connector comes from the carrier boards — without a Max/Mid/Hat Carrier, there is no cable.
- Using
WiFi.hexamples from the Mbed core as on the Portenta H7: on the X8, networking is a Linux matter (NetworkManager, containers); examples from older documentation are outdated (issue #884 “WiFiAccessPoint does not name a type”, closed but revealing). docker pullfails even though ping works: DNS! Check/etc/resolv.confor the DNS servers pushed by DHCP before blaming Docker.- Wi-Fi password with special characters in nmcli: escape correctly or use
nmcli connection edit, otherwise the connection fails silently. - 5 GHz-only networks: the Murata 1DX is 802.11 b/g/n (65 Mbps max) — verify that your SSID is broadcast on 2.4 GHz.
- >
- >
Other tutorials for this board
- 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
Code examples for this board
etat-systeme.shBashgpio-libgpiod.shBashpython-gpio.pyPythondocker-hello.shBashflasher-core-arduino.shBashwifi-nmcli.shBash