Ver el código fuente en GitHub
El router de borde de OpenThread (OTBR) es compatible con la plataforma BeagleBone Black (BBB).
Requisitos de hardware:
- Adaptador de CA de 5 V externo para alimentación
- Una tarjeta microSD de 8 GB o más (en esta guía, una tarjeta SD)
- Una plataforma de OpenThread compatible (como TI CC2652) para la conectividad de red de Thread en un diseño de RCP
Pasos para habilitar esta función:
- Descarga e instala el SO.
- Prepara el entorno de Debian para OTBR
- Habilita la conexión Wi-Fi (opcional)
- Compila e instala OTBR
Descarga e instala el SO
- Descarga la imagen más reciente de IoT de Debian para BeagleBone.
- La versión que se usó en esta guía fue
bone-debian-10.3-iot-armhf-2020-04-06-4gb.img.xz
- La versión que se usó en esta guía fue
- Instala la imagen de SO en una tarjeta uSD siguiendo la guía de introducción de BeagleBone.
- Inicia el BeagleBone y SSH al dispositivo.
- Se recomienda conectividad mediante una red local basada en Ethernet.
- El IDE de cloud9 se inhabilitará más adelante en esta guía.
- En esta guía, se cambiará el estado de las interfaces de red de BeagleBone. Ten en cuenta que es posible que se desconecte tu sesión de shell segura.
- Los bootloaders modernos de BeagleBone se ejecutarán desde la tarjeta uSD de forma predeterminada, pero es posible que algunos dispositivos negros de BeagleBone intenten iniciarse desde el eMMC interno. En este caso, asegúrate de presionar el botón BOOT.
Si deseas obtener información más detallada sobre BeagleBone, consulta la página de asistencia de BeagleBoard.
Prepara el entorno de Debian para OTBR
El sistema de archivos de la imagen uSD BeagleBone tiene un límite de 4 GB para caber en la mayoría de las tarjetas uSD. Expande la partición para habilitar el uso de toda la capacidad de almacenamiento.
sudo /opt/scripts/tools/grow_partition.sh
Te recomendamos que leas esa secuencia de comandos auxiliar para descubrir cómo se expande el sistema de archivos. Debes reiniciar BeagleBone y volver a acceder a fin de usar esta nueva definición del sistema de archivos.
sudo shutdown -r now
Esta acción cerrará la sesión SSH. Una vez que vuelvas a acceder, puedes omitir la compilación del código OTBR.
Habilita la conexión Wi-Fi (opcional)
Una vez que hayas accedido a BeagleBone, instala Network Manager:
sudo apt-get update
sudo apt-get install network-manager
Luego, inhabilita connman
y habilita network-manager
:
sudo systemctl disable connman
sudo systemctl enable network-manager
Si hubiéramos creado stop
connman directamente aquí, se interrumpiría la sesión SSH porque la interfaz de red la administra connman. En su lugar, configuramos el sistema para que se aplique en el siguiente inicio. Ahora reinicia el Beaglebone y vuelve a acceder.
sudo shutdown -r now
Es posible que el administrador de red no haya configurado los servidores de nombres de DNS. Edita resolv.conf
con el comando sudo vim /etc/resolv.conf
y asegúrate de que el contenido contenga el DNS de Google y el DNS de Cloudflare:
nameserver 8.8.8.8 nameserver 1.1.1.1
Reinicia el dispositivo para asegurarte de que el administrador de red esté configurado correctamente.
sudo shutdown -r now
Al módulo de WiLink 8 no le gusta que su dirección MAC cambie en el tiempo de ejecución.
El administrador de red intentará hacerlo durante el análisis. Edita el objeto NetworkManager.conf
con el comando sudo vim
/etc/NetworkManager/NetworkManager.conf
y agrega las siguientes líneas:
[device] wifi.scan-rand-mac-address=no
El BeagleBone no reconoce el BBONE-GATEWAY-CAPE
de forma predeterminada debido a un conflicto del PIN. Para agregar la configuración de forma manual, edita uEnv.txt
con el comando sudo vim /boot/uEnv.txt
y asegúrate de que las siguientes líneas coincidan:
#Custom Cape dtb_overlay=/lib/firmware/BB-GATEWAY-WL1837-00A0.dtbo # #Disable auto loading of virtual capes (emmc/video/wireless/adc) disable_uboot_overlay_emmc=1 disable_uboot_overlay_video=1 disable_uboot_overlay_audio=1 disable_uboot_overlay_wireless=1 disable_uboot_overlay_adc=1
Las secuencias de comandos de configuración del wilink de BeagleBone intentan usar Connman de forma predeterminada para habilitar la actividad de PA de Wi-Fi. Edita la carpeta de configuración predeterminada con el comando sudo
vim /etc/default/bb-wl18xx
y asegúrate de que las variables coincidan a continuación:
TETHER_ENABLED=no USE_CONNMAN_TETHER=no
Reinicia para asegurarte de que Network Manager pueda ver la interfaz nueva.
sudo shutdown -r now
Una vez que vuelvas a acceder, puedes ejecutar ifconfig
o nmcli
para ver la nueva interfaz wlan
.
No olvides pasar las opciones NETWORK_MANAGER=1
y NETWORK_MANAGER_WIFI=1
a la secuencia de comandos de configuración en el siguiente paso para usar el administrador de redes.
Compila e instala OTBR
Consulta Compilación y configuración para obtener instrucciones sobre la compilación y la instalación de OTBR.