El router de borde OpenThread (OTBR) proporciona compatibilidad con la plataforma BeagleBone Black (BBB).
Requisitos de hardware:
- Adaptador de CA externo de 5 V para alimentación
- Una tarjeta microSD de 8 GB o de mayor capacidad ("tarjeta uSD" en esta guía)
- Una plataforma OpenThread compatible (como TI CC2652) para la conectividad de red de Thread en un diseño RCP
Pasos para habilitar la función:
- Descarga e instala el SO.
- Prepara el entorno Debian para OTBR
- (Opcional) Habilita la conexión Wi-Fi
- Compilación e instalación de OTBR
Descarga e instala el SO
- Descarga la imagen más reciente de Debian IoT para BeagleBone.
- La versión que se usó para esta guía fue
bone-debian-10.3-iot-armhf-2020-04-06-4gb.img.xz
- La versión que se usó para esta guía fue
- Instala la imagen de SO en una tarjeta uSD. Para ello, sigue las instrucciones de la guía de introducción de BeagleBone.
- Inicia el BeagleBone y conéctate a través de SSH en el dispositivo.
- Se recomienda contar con conectividad a través de 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 tu sesión de shell seguro puede desconectarse.
- Los bootloaders modernos de BeagleBone se ejecutarán desde la tarjeta uSD de forma predeterminada, pero es posible que algunos dispositivos de BeagleBone Black intenten iniciarse desde la eMMC interna. En este caso, asegúrate de presionar el botón BOOT.
Para obtener información más detallada sobre BeagleBone, consulta la página de asistencia de BeagleBoard.
Prepara el entorno Debian para OTBR
El sistema de archivos de la imagen uSD BeagleBone se limita a 4 GB para adaptarse a 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 averiguar cómo se expande el sistema de archivos. Deberás reiniciar BeagleBone y volver a acceder para usar esta definición nueva del sistema de archivos.
sudo shutdown -r now
Esta acción cerrará tu sesión de SSH. Una vez que hayas vuelto a acceder, puedes pasar a la compilación del código OTBR.
(Opcional) Habilita la conexión Wi-Fi
Cuando vuelvas a acceder 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 tuviéramos stop
connman directamente aquí, interrumpiría la sesión SSH porque connman administra la interfaz de red. En cambio, configuramos el sistema para que se aplique en el próximo inicio. Reinicia el Beaglebone y vuelve a acceder.
sudo shutdown -r now
Es posible que el administrador de redes 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 para asegurarte de que el Administrador de redes esté configurado correctamente.
sudo shutdown -r now
Al módulo WiLink 8 no le gusta que cambie su dirección MAC durante el tiempo de ejecución.
El Administrador de redes intentará hacerlo durante el análisis. Edita NetworkManager.conf
con el comando sudo vim
/etc/NetworkManager/NetworkManager.conf
y agrega las siguientes líneas:
[device] wifi.scan-rand-mac-address=no
BeagleBone no reconoce BBONE-GATEWAY-CAPE
de forma predeterminada debido a un conflicto de 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 el administrador de redes pueda ver la interfaz nueva.
sudo shutdown -r now
Cuando vuelvas a acceder, puedes ejecutar ifconfig
o nmcli
para ver la nueva interfaz de 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 Network Manager.
Compilación e instalación de OTBR
Consulta Compilación y configuración para obtener instrucciones sobre la compilación y la instalación de OTBR.