BeagleBone

Consulte o código-fonte no GitHub

O roteador de borda do OpenThread (OTBR, na sigla em inglês) é compatível com a plataforma BeagleBone Black (BBB).

Requisitos de hardware:

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

Etapas para ativar:

  1. Faça o download e instale o SO.
  2. Preparar o ambiente Debian para 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 BeagleBone.
    • A versão usada neste 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 por uma rede local baseada em Ethernet.
    • O ambiente de desenvolvimento integrado cloud9 será desativado posteriormente neste guia.
    • Este guia mudará o estado das interfaces de rede BeagleBone, ciente que sua sessão de shell seguro poderá ser desconectada.
    • Por padrão, os carregadores de inicialização BeagleBone modernos são executados a partir do cartão uSD, mas alguns dispositivos BeagleBone Black podem tentar inicializar pelo eMMC interno. Nesse caso, pressione o botão BOOT.

Para informações mais detalhadas sobre o BeagleBone, consulte a página de suporte do BeagleBoard (em inglês).

Preparar o ambiente Debian para 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 ativar o uso de toda a capacidade de armazenamento.

sudo /opt/scripts/tools/grow_partition.sh

Recomendamos a leitura desse 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 do 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

Após 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 fosse feito o comando stop connman diretamente aqui, isso interromperia a sessão SSH porque a interface de rede é gerenciada pelo connman. Em vez disso, configuramos o sistema para que entre em vigor na próxima inicialização. Agora, reinicie o Beaglebone e faça login novamente.

sudo shutdown -r now

O Gerenciador de rede 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 do Cloudflare:

nameserver 8.8.8.8
nameserver 1.1.1.1

Reinicie para garantir que o Gerenciador de rede esteja configurado corretamente.

sudo shutdown -r now

O módulo WiLink 8 não gosta que o endereço MAC seja alterado durante a execução. O Gerenciador de rede vai tentar fazer isso durante a verificação. Edite o 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 pin. Adicione a configuração manualmente editando o uEnv.txt com o comando sudo vim /boot/uEnv.txt e verifique se as seguintes linhas 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 de wilink do BeagleBone tentam usar connman por padrão para ativar a atividade do AP de 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 abaixo:

TETHER_ENABLED=no
USE_CONNMAN_TETHER=no

Reinicie para garantir que o Gerenciador de rede possa ver 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 Network Manager.

Criar e instalar o OTBR

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