Beagle (negro)

Ver código fuente en GitHub

El router de borde de OpenThread (OTBR) admite 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 superior ("tarjeta microSD" en esta guía)
  • Una plataforma OpenThread compatible (como el TI CC2652) para la conectividad de red Thread en un diseño de RCP

Pasos para habilitar la función:

  1. Descarga e instala el SO.
  2. Prepara el entorno de Debian para OTBR
  3. Habilita Wi-Fi (opcional)
  4. Compila e instala OTBR

Descarga e instala el SO

  1. Descarga la imagen de IoT de Debian más reciente 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
  2. Instala la imagen del SO en una tarjeta microSD siguiendo la guía de introducción de BeagleBone.
  3. Inicia el BeagleBone y establece una conexión SSH al dispositivo.
    • Se recomienda la conectividad a través de una red local basada en Ethernet.
    • El IDE de cloud9 se inhabilitará más adelante en esta guía.
    • Esta guía 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 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 de Debian para OTBR

El sistema de archivos para la imagen uSD BeagleBone está limitado 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 el BeagleBone y volver a acceder para usar esta nueva definición de sistema de archivos.

sudo shutdown -r now

Esto cerrará tu sesión de SSH. Una vez que vuelvas a acceder, puedes omitir la compilación del código de OTBR.

Habilita Wi-Fi (opcional)

Una vez que 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 usáramos stop connman directamente aquí, se interrumpiría la sesión de SSH porque connman administra la interfaz de red. En su lugar, configuramos el sistema para que se aplique en el próximo 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 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 WiLink 8 no le gusta que se cambie su dirección MAC durante el tiempo de ejecución. El Administrador de red 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 pines. Agrega la configuración de forma manual editando 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 de Wilink de BeagleBone intentan usar connman de forma predeterminada para habilitar la actividad del AP 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 con las siguientes:

TETHER_ENABLED=no
USE_CONNMAN_TETHER=no

Reinicia el dispositivo para asegurarte de que el Administrador de red pueda ver la nueva interfaz.

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 Network Manager.

Compila e instala OTBR

Consulta Compilación y configuración para obtener instrucciones sobre cómo compilar e instalar OTBR.