BeagleBone Black

הצגת המקור ב-GitHub

OpenThread Border Router (OTBR) מספקת תמיכה בפלטפורמת BeagleBone Black.

דרישות חומרה:

  • מתאם AC חיצוני לחשמל
  • כרטיס מיקרו SD בנפח 8GB או יותר ('כרטיס uSD' במדריך הזה)
  • פלטפורמת OpenThread נתמכת (כמו TI CC2652) לקישוריות רשת בשרשור בעיצוב RCP

שלבים להפעלה:

  1. מורידים ומתקינים את מערכת ההפעלה.
  2. הכנת סביבת Debian ל-OTBR
  3. (אופציונלי) הפעלת Wi-Fi
  4. יצירה והתקנה של OTBR

הורדה והתקנה של מערכת ההפעלה

  1. מורידים את התמונה האחרונה מ-Debian IoT ל-BeagleBone.
    • הגרסה שנעשה בה שימוש במדריך הזה הייתה bone-debian-10.3-iot-armhf-2020-04-06-4gb.img.xz
  2. מתקינים את התמונה של מערכת ההפעלה בכרטיס uSD בעזרת המדריך לתחילת העבודה של BeagleBone.
  3. מפעילים את BeagleBone ואת ה-SSH במכשיר.
    • מומלץ לקשר באמצעות רשת אתרנט מקומית.
    • המדריך המשולב IDE יושבת מאוחר יותר במדריך הזה.
    • המדריך הזה ישנה את המצב של ממשקים ברשת BeagleBone, וחשוב לזכור שסשנים מאובטחים של המעטפת עלולים להתנתק.
    • תוכנת האתחול המודרנית של BeagleBone תפעל מכרטיס ה-uSD כברירת מחדל, אבל מכשירים מסוימים של BeagleBone Black עשויים לנסות לבצע הפעלה מ-eMMC הפנימי. במקרה כזה, חשוב ללחוץ על לחצן ההפעלה.

בדף התמיכה של BeagleBoard אפשר לקרוא מידע מפורט יותר על BeagleBone.

הכנת סביבת Debian ל-OTBR

מערכת הקבצים של תמונת uSD BeagleBone מוגבלת ל-4GB כדי להתאים לרוב כרטיסי ה-uSD. צריך להרחיב את המחיצה כדי לאפשר את השימוש בקיבולת האחסון המלאה.

sudo /opt/scripts/tools/grow_partition.sh

מומלץ לקרוא את סקריפט העזרה כדי לגלות כיצד מערכת הקבצים מורחבת. יהיה עליך להפעיל מחדש את ה-BeagleBone ולהתחבר מחדש כדי להשתמש בהגדרה החדשה הזו של מערכת הקבצים.

sudo shutdown -r now

הפעולה הזו תסגור את הפעלת ה-SSH. לאחר שתתחברו שוב, תוכלו לדלג על השלב של בניית קוד ה-OTBR.

(אופציונלי) הפעלת Wi-Fi

אחרי התחברות מחדש ל-BeagleBone, מתקינים את מנהל הרשת:

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

לאחר מכן יש להשבית את connman ולהפעיל את network-manager:

sudo systemctl disable connman
sudo systemctl enable network-manager

אם אנחנו נשתמש בקונטיינר של stop ישירות מכאן, זה עלול לגרום לסשן ה-SSH בגלל שממשק הרשת מנוהל על ידי Connman. במקום זאת, אנחנו מגדירים שהמערכת תיכנס לתוקף בהפעלה הבאה. עכשיו עליך להפעיל מחדש את Beaglebone ולהתחבר מחדש.

sudo shutdown -r now

ייתכן שמנהל הרשת לא הגדיר את שרתי השמות של ה-DNS. צריך לערוך את הפקודה resolv.conf בפקודה sudo vim /etc/resolv.conf ולוודא שהתוכן מכיל את ה-DNS של Google ואת ה-DNS של Cloudflare:

nameserver 8.8.8.8
nameserver 1.1.1.1

צריך להפעיל מחדש כדי לוודא שמנהל הרשת מוגדר כראוי.

sudo shutdown -r now

במודול של WiLink 8 אי אפשר לשנות את כתובת ה-MAC בזמן הריצה. מנהל הרשת ינסה לעשות זאת במהלך הסריקה. צריך לערוך את הפקודה NetworkManager.conf באמצעות הפקודה sudo vim /etc/NetworkManager/NetworkManager.conf ולהוסיף את השורות הבאות:

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

BBONE-GATEWAY-CAPE לא מזוהה על ידי BeagleBone כברירת מחדל עקב התנגשות עם קוד אימות. הוסיפו את ההגדרות באופן ידני על ידי עריכת ה-uEnv.txt באמצעות הפקודה sudo vim /boot/uEnv.txt, כדי לוודא שהשורות הבאות תואמות:

#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

בסקריפטים של הגדרת ה-wilink של BeagleBone נעשה ניסיון להשתמש בקונטון כברירת מחדל כדי להפעיל את הפעילות ב-Wi-Fi. צריך לערוך את תיקיית ברירת המחדל באמצעות הפקודה sudo vim /etc/default/bb-wl18xx, ולוודא שהמשתנים תואמים לפרמטרים הבאים:

TETHER_ENABLED=no
USE_CONNMAN_TETHER=no

מפעילים מחדש כדי לוודא שמנהל הרשת יוכל לראות את הממשק החדש.

sudo shutdown -r now

אחרי ההתחברות מחדש אפשר להריץ את ifconfig או את nmcli כדי לראות את הממשק החדש של wlan.

אל תשכחו להעביר את האפשרויות NETWORK_MANAGER=1 ו-NETWORK_MANAGER_WIFI=1 לסקריפט ההגדרה בשלב הבא כדי להשתמש ב-Network Manager.

יצירה והתקנה של OTBR

למידע על בנייה והתקנה של OTBR, כדאי לעיין בקטע Build and Configuration (בניית תצורה).