BeagleBone Schwarz

Quelle auf GitHub ansehen

Der OpenThread-Border-Router (OTBR) unterstützt die Plattform BeagleBone Black (BBB).

Hardwareanforderungen:

  • Externes 5-V-Netzteil für die Stromversorgung
  • Eine microSD-Karte mit mindestens 8 GB („uSD-Karte“ in dieser Anleitung)
  • Eine unterstützte OpenThread-Plattform (z. B. TI CC2652) für Thread-Netzwerkkonnektivität in einem RCP-Design

Schritte zur Aktivierung:

  1. Laden Sie das Betriebssystem herunter und installieren Sie es.
  2. Debian-Umgebung für OTBR vorbereiten
  3. Optional: WLAN aktivieren
  4. OTBR erstellen und installieren

Betriebssystem herunterladen und installieren

  1. Laden Sie das neueste Debian IoT-Image für BeagleBone herunter.
    • Die für diese Anleitung verwendete Version war bone-debian-10.3-iot-armhf-2020-04-06-4gb.img.xz
  2. Installieren Sie das Betriebssystem-Image auf einer uSD-Karte. Folgen Sie dazu dem Startleitfaden für BeagleBone.
  3. Starten Sie BeagleBone und stellen Sie eine SSH-Verbindung auf dem Gerät her.
    • Es wird eine Verbindung über ein lokales Ethernet-Netzwerk empfohlen.
    • Die Cloud9-IDE wird später in diesem Leitfaden deaktiviert.
    • In dieser Anleitung wird der Status der BeagleBone-Netzwerkschnittstellen geändert. Beachten Sie dabei, dass die Verbindung zu Ihrer sicheren Shell-Sitzung getrennt werden kann.
    • Moderne BeagleBone-Bootloader werden standardmäßig über die uSD-Karte ausgeführt. Einige BeagleBone Black-Geräte versuchen jedoch möglicherweise, von der internen eMMC zu starten. In diesem Fall müssen Sie die BOOT-Taste drücken.

Weitere Informationen zu BeagleBone findest du auf der BeagleBoard-Supportseite.

Debian-Umgebung für OTBR vorbereiten

Das Dateisystem für das uSD-BeagleBone-Image ist auf 4 GB beschränkt, damit es auf die meisten uSD-Karten passt. Erweitern Sie die Partition, damit die gesamte Speicherkapazität genutzt werden kann.

sudo /opt/scripts/tools/grow_partition.sh

Es empfiehlt sich, dieses Hilfsskript zu lesen, um herauszufinden, wie das Dateisystem erweitert wird. Sie müssen BeagleBone neu starten und sich noch einmal anmelden, um diese neue Dateisystemdefinition zu verwenden.

sudo shutdown -r now

Dadurch wird die SSH-Sitzung geschlossen. Sobald Sie wieder angemeldet sind, können Sie mit dem Erstellen des OTBR-Codes fortfahren.

Optional: WLAN aktivieren

Wenn du dich wieder bei BeagleBone angemeldet hast, installiere den Netzwerkmanager:

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

Deaktivieren Sie dann connman und aktivieren Sie network-manager:

sudo systemctl disable connman
sudo systemctl enable network-manager

Wenn wir hier Connman direkt stop ausführen, würde die SSH-Sitzung unterbrochen werden, da die Netzwerkschnittstelle von connman verwaltet wird. Stattdessen konfigurieren wir das System so, dass es beim nächsten Start wirksam wird. Starte nun den Beaglebone neu und melde dich neu an.

sudo shutdown -r now

Der Netzwerkmanager hat die DNS-Nameserver möglicherweise nicht eingerichtet. Bearbeiten Sie resolv.conf mit dem Befehl sudo vim /etc/resolv.conf und achten Sie darauf, dass der Inhalt das Google DNS und Cloudflare DNS enthält:

nameserver 8.8.8.8
nameserver 1.1.1.1

Starten Sie neu, um sicherzustellen, dass der Network Manager korrekt eingerichtet ist.

sudo shutdown -r now

Die MAC-Adresse des WiLink 8-Moduls lässt sich nicht zur Laufzeit ändern. Der Netzwerkmanager versucht dies beim Scannen. Bearbeiten Sie NetworkManager.conf mit dem Befehl sudo vim /etc/NetworkManager/NetworkManager.conf und fügen Sie die folgenden Zeilen hinzu:

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

BBONE-GATEWAY-CAPE wird von BeagleBone aufgrund eines PIN-Konflikts nicht standardmäßig erkannt. Fügen Sie die Konfiguration manuell hinzu. Bearbeiten Sie dazu uEnv.txt mit dem Befehl sudo vim /boot/uEnv.txt und achten Sie darauf, dass die folgenden Zeilen übereinstimmen:

#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

Die BeagleBone-Wilink-Einrichtungsskripte versuchen standardmäßig, Connman zu verwenden, um die WLAN-AP-Aktivität zu aktivieren. Bearbeiten Sie den Standardkonfigurationsordner mit dem Befehl sudo vim /etc/default/bb-wl18xx und achten Sie darauf, dass die Variablen unten übereinstimmen:

TETHER_ENABLED=no
USE_CONNMAN_TETHER=no

Starten Sie neu, damit der Network Manager die neue Schnittstelle sehen kann.

sudo shutdown -r now

Sobald Sie wieder angemeldet sind, können Sie ifconfig oder nmcli ausführen, um die neue wlan-Oberfläche zu sehen.

Denken Sie daran, im nächsten Schritt die Optionen NETWORK_MANAGER=1 und NETWORK_MANAGER_WIFI=1 an das Einrichtungsskript zu übergeben, um Network Manager zu verwenden.

OTBR erstellen und installieren

Anweisungen zum Erstellen und Installieren von OTBR findest du unter Build und Konfiguration.