BeagleBone

Veja o código-fonte no GitHub

O OpenThread Border Router (OTBR) oferece suporte para a plataforma BeagleBone Black (BBB).

Requisitos de hardware:

  • Carregador de 5 V externo
  • Um cartão microSD de 8 GB ou mais (ou seja, um cartão uSD neste guia)
  • Uma plataforma OpenThread compatível, como a TI CC2652, para conectividade de rede de linhas de execução em um design RCP.

Etapas para ativar:

  1. Faça o download e instale o SO.
  2. Preparar o ambiente do Debian para OTBR
  3. (Opcional) Ativar 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 era 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 primeiros passos do BeagleBone.
  3. Inicialize o BeagleBone e o SSH no dispositivo.
    • É recomendável usar uma conectividade local baseada em Ethernet.
    • O ambiente de desenvolvimento integrado do Cloud9 será desativado posteriormente neste guia.
    • Este guia muda o estado das interfaces de rede do BeagleBone. A sessão do shell seguro pode ser desconectada.
    • Por padrão, os carregadores de inicialização modernos do BeagleBone serão executados no cartão uSD, mas alguns dispositivos BeagleBone Black podem tentar inicializar a partir do 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 do 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 permitir o uso de toda a capacidade de armazenamento.

sudo /opt/scripts/tools/grow_partition.sh

É recomendável ler esse script auxiliar para saber como o sistema de arquivos é expandido. É necessário reiniciar o BeagleBone e fazer login novamente para usar essa nova definição do sistema de arquivos.

sudo shutdown -r now

Isso fecha a sessão SSH. Depois de fazer login novamente, pule para a criação do código OTBR.

(Opcional) Ativar Wi-Fi

Após fazer login novamente no BeagleBone, instale o Gerenciador de rede:

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 estivéssemos no 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 ele 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 o 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 quer que o endereço MAC seja alterado durante a execução. O Gerenciador de rede 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

Por padrão, o BBONE-GATEWAY-CAPE não é reconhecido pelo BeagleBone 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 Wi-Fi do BeagleBone tentam usar o connman por padrão para ativar a atividade de Wi-Fi AP. 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.

Transmita 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 rede.

Criar e instalar o OTBR

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