🛠 Passerelle cellulaire 4G/5G : module M.2 B-Key, SIM et failover
Objetivos
Convertir la ROCK 3B en una pasarela celular autónoma — el socket M.2 B-Key 3042 (interfaces USB/PCIe/SATA) y el puerto SIM integrado evitan cualquier placa portadora (carrier board): un módulo 4G LTE (o 5G) + una SIM son suficientes. Radxa documenta el uso de las interfaces en la documentación oficial «interface usage» y el soporte ha confirmado módulos Quectel (p. ej. EM05) en el foro. Uso típico: conmutación por error (failover) de una conexión cableada en un sitio aislado, con los dos puertos GbE como respaldo.
Hardware
- Radxa ROCK 3B con Radxa OS, fuente de alimentación PD 12 V / 2 A (picos de radio bajo carga)
- Módulo M.2 B-Key 3042 LTE cat4+ tipo Quectel (EC25/EM05 o equivalente), antenas, nano-SIM de datos
- > NO VERIFICADO: la lista oficial de compatibilidad de módulos no es exhaustiva (CNX criticaba la descubribilidad de los accesorios Radxa) — verificar la referencia exacta antes de la compra
Código completo
# 1. Le module est vu en USB (mode QMI/MBIM/ECM selon le module) :
sudo lsusb ; sudo dmesg | grep -i -e qmi -e gsm -e cdc
ls /dev/ttyUSB* # ports AT (ttyUSB2 souvent)
# 2. Dialogue AT : statut réseau et enregistrement
sudo apt install minicom
sudo minicom -D /dev/ttyUSB2 # AT+CPIN? -> READY ; AT+CSQ -> qualité signal
# AT+CGDCAP=1,"apn" puis AT+CGACT=1,1 selon module
# 3. Connexion données :
sudo apt install network-manager-modemmanager
mcli -t -f DEVICE,STATE device # wwan0 / cdc-wdm0 attendu
mcli connection add type gsm ifname cdc-wdm0 con-name 4g apn "apn.orange"
mcli connection up 4g ; ping -c3 -I wwan0 1.1.1.1
# 4. Failover simple (métriques) : Ethernet prioritaire, cellulaire de secours
sudo nmcli connection modify "Ethernet-eth0" connection.autoconnect-priority 100
sudo nmcli connection modify "4g" connection.autoconnect-priority 50
Verificación esperada
AT+CPIN? devuelve READY (SIM detectada), AT+CSQ una calidad > 10; mcli connection up 4g levanta wwan0/cdc-wdm0 con una IP; ping -I wwan0 sale a Internet. Al desconectar Ethernet, el tráfico conmuta a la conexión celular (métrica más baja).
Errores frecuentes
- Olvidar las antenas antes de encender: el módulo busca indefinidamente, AT+CSQ = 99.
- Puerto AT incorrecto: el orden de los ttyUSB* cambia según el módulo — probar con
ATen cada uno. - APN ausente o incorrecto: el registro en la red tiene éxito pero no hay datos; verificar el APN del operador.
- SIM de datos restringida (solo voz) o PIN de SIM no desactivado: AT+CPIN? indica SIM PIN.
- Instalar el módulo en 5G mientras se utiliza la alimentación GPIO de 5 V: los picos de radio exigen PD 12 V/2 A (o PoE 25 W).
- Las interfaces del B-Key son USB/PCIe/SATA: un módulo puramente PCIe puede requerir un firmware/módulo del kernel específico — preferir un módulo USB-QMI documentado para Linux ARM.
Otros tutoriales para esta placa
- Faire clignoter une LED via le GPIO avec libgpiod
- Lire un bouton poussoir en Python avec python3-libgpiod
- Premier réseau : Ethernet double gigabit, Wi-Fi optionnel et SSH
- Installer et booter le système sur un SSD NVMe (M.2 M-Key)
- Interroger un capteur I2C sur le connecteur 40 broches
- Surveiller température et fréquence CPU, piloter le ventilateur PWM
Ejemplos de código para esta placa
clignotante.pyPythonbouton-gpio.pyPythoncapteur-i2c.shBashsurveillance-temperature.shBashcapteur-dht11.pyPythonservo-pwm-sysfs.shBash