BeagleBone

Ver código-fonte no GitHub

O roteador de borda do OpenThread (OTBR) oferece suporte à plataforma BeagleBone Black (BBB).

Requisitos de hardware:

  • Adaptador externo de 5 V para alimentação
  • Um cartão microSD de 8 GB ou mais (chamado de "cartão uSD" neste guia)
  • Uma plataforma OpenThread com suporte (como o TI CC2652) para conectividade de rede Thread em um design RCP

Etapas para ativar:

  1. Faça o download e instale o SO.
  2. Preparar o ambiente Debian para o OTBR
  3. (Opcional) Ativar o Wi-Fi
  4. Criar e instalar o OTBR

Fazer o download e instalar o SO

  1. Faça o download da imagem mais recente do Debian IoT para o BeagleBone.
    • A versão usada para este guia foi bone-debian-10.3-iot-armhf-2020-04-06-4gb.img.xz
  2. Instale a imagem do SO em um cartão uSD seguindo o guia de iniciação do BeagleBone.
  3. Inicialize o BeagleBone e o SSH no dispositivo.
    • Recomendamos a conectividade em uma rede local baseada em Ethernet.
    • O ambiente de desenvolvimento integrado cloud9 será desativado posteriormente neste guia.
    • Este guia vai mudar o estado das interfaces de rede do BeagleBone. Sua sessão de shell segura pode ser desconectada.
    • Os carregadores de inicialização modernos do BeagleBone serão executados no cartão uSD por padrão, mas alguns dispositivos BeagleBone Black podem tentar inicializar a partir do eMMC interno. Nesse caso, pressione o botão de inicialização.

Para mais informações detalhadas sobre o BeagleBone, consulte a página de suporte do BeagleBoard.

Preparar o ambiente Debian para o OTBR

O sistema de arquivos da imagem uSD BeagleBone é limitado a 4 GB para caber na maioria dos cartões uSD. Expanda a partição para permitir o uso de toda a capacidade de armazenamento.

sudo /opt/scripts/tools/grow_partition.sh

Recomendamos que você leia esse script auxiliar para descobrir como o sistema de arquivos é expandido. Será necessário reiniciar o BeagleBone e fazer login novamente para usar essa nova definição de sistema de arquivos.

sudo shutdown -r now

Isso vai encerrar a sessão SSH. Depois de fazer login novamente, você pode pular para a criação do código OTBR.

(Opcional) Ativar o Wi-Fi

Depois de fazer login novamente no BeagleBone, instale o Network Manager:

sudo apt-get update
sudo apt-get install network-manager

Em seguida, desative connman e ative network-manager:

sudo systemctl disable connman
sudo systemctl enable network-manager

Se stop connman fosse usado diretamente aqui, a sessão SSH seria interrompida porque a interface de rede é gerenciada pelo connman. Em vez disso, configuramos o sistema para entrar em vigor na próxima inicialização. Agora reinicie o Beaglebone e faça login novamente.

sudo shutdown -r now

O Network Manager pode não ter configurado os servidores de nomes DNS. Edite resolv.conf com o comando sudo vim /etc/resolv.conf e verifique se o conteúdo contém o DNS do Google e o DNS do Cloudflare:

nameserver 8.8.8.8
nameserver 1.1.1.1

Reinicie para garantir que o Network Manager esteja configurado corretamente.

sudo shutdown -r now

O módulo WiLink 8 não gosta de ter o endereço MAC alterado no momento da execução. O Gerenciador de Rede tentará fazer isso durante a verificação. Edite NetworkManager.conf com o comando sudo vim /etc/NetworkManager/NetworkManager.conf e adicione as linhas abaixo:

[device]
wifi.scan-rand-mac-address=no

O BBONE-GATEWAY-CAPE não é reconhecido pelo BeagleBone por padrão devido a um conflito de pinos. Adicione a configuração manualmente editando o uEnv.txt com o comando sudo vim /boot/uEnv.txt e verifique se as linhas a seguir correspondem:

#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

Os scripts de configuração do BeagleBone wilink tentam usar o connman por padrão para ativar a atividade do AP Wi-Fi. Edite a pasta de configuração padrão com o comando sudo vim /etc/default/bb-wl18xx e verifique se as variáveis correspondem às abaixo:

TETHER_ENABLED=no
USE_CONNMAN_TETHER=no

Reinicie para garantir que o Network Manager consiga acessar a nova interface.

sudo shutdown -r now

Depois de fazer login novamente, execute ifconfig ou nmcli para ver a nova interface wlan.

Não se esqueça de transmitir as opções NETWORK_MANAGER=1 e NETWORK_MANAGER_WIFI=1 para o script de configuração na próxima etapa para usar o Gerenciador de redes.

Criar e instalar o OTBR

Consulte Build e configuração para instruções sobre como criar e instalar o OTBR.