🛠 Configurer le réseau Ethernet (via USB 2.0) d'un CM3+

Raspberry Pi Compute Module 3+ (CM3+ / CM3+ Lite) · intermediaire · Schéma : un module CM3+ sur carte CMIO3, câble Ethernet branché sur le port RJ45 — la puce Ethernet est reliée au bus USB 2.0 unique du module, illustré par un petit goulot d'étranglement sur le bus.

Objetivos

El CM3+ no dispone de un controlador Ethernet en el módulo: en la CMIO3, el puerto RJ45 es gestionado por un chip USB (LAN9514 en la CMIO3) conectado al único puerto USB 2.0 host/OTG del módulo. Una consecuencia de la arquitectura que se debe comprender bien: Ethernet, memorias USB, cámaras web y adaptadores comparten el ancho de banda de un único bus USB 2.0 (~30 MiB/s útiles). Este tutorial configura una IP estática robusta con systemd-networkd y mide el caudal real.

Material

Código completo

# 1. Identifier la puce réseau (USB, pas un contrôleur natif)
lsusb
ethtool -s eth0 speed 100 duplex full   # si besoin, épingler 100M

# 2. IP statique avec systemd-networkd
sudo tee /etc/systemd/network/08-eth0.network <<'EOF'
[Match]
Name=eth0

[Network]
Address=192.168.1.50/24
Gateway=192.168.1.1
DNS=1.1.1.1
EOF
sudo systemctl disable --now NetworkManager 2>/dev/null
sudo systemctl enable --now systemd-networkd systemd-resolved
sudo systemctl restart systemd-networkd

# 3. Vérification et débit réel sur le bus USB unique
ip -4 addr show eth0 && ping -c3 192.168.1.1
sudo apt install -y iperf3
iperf3 -c 192.168.1.10            # côté PC : iperf3 -s
dmesg | grep -iE 'lan95|smsc'     # trace de la puce USB-Ethernet

Verificación esperada

ip addr muestra la IP estática en eth0, el ping funciona y iperf3 muestra un caudal TCP del orden de 20-30 MiB/s — el techo del bus USB 2.0 compartido, por debajo de los 100 Mbit/s teóricos del puerto. lsusb lista el chip Ethernet, prueba de que se trata de un dispositivo USB y no de un controlador nativo.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales