BeagleBone Black

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

נתב Border Border (OTBR) תומך בפלטפורמת BeagleBone Black (BBB).

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

  • מתאם AC חיצוני של 5 וולט לחשמל
  • כרטיס microSD בנפח 8GB או יותר ('כרטיס uSD' במדריך הזה)
  • פלטפורמת OpenThread נתמכת (כמו TI CC2652) לקישוריות רשת Thread בתכנון 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 במכשיר.
    • מומלץ להשתמש בקישוריות ברשת מקומית מבוססת Ethernet.
    • סביבת הפיתוח המשולבת (IDE) של Cloud9 תושבת בהמשך המדריך הזה.
    • המדריך הזה ישנה את מצב ממשקי הרשת של BeagleBone, חשוב לזכור שסשן המעטפת המאובטח עשוי להתנתק.
    • תוכנות האתחול המודרניות של BeagleBone יפעלו מכרטיס ה-uSD כברירת מחדל, אבל יכול להיות שחלק ממכשירי BeagleBone Black ינסו להפעיל מחדש דרך ה-eMMC הפנימי. במקרה כזה, יש ללחוץ על לחצן BOOT.

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

הכנת סביבת 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

הסקריפטים להגדרת Wi-Fi של BeagleBone מנסים להשתמש ב-conman כברירת מחדל כדי להפעיל פעילות נקודת Wi-Fi AP. עורכים את תיקיית ברירת המחדל של ההגדרות באמצעות הפקודה 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 לסקריפט ההגדרה כדי להשתמש במנהל הרשתות.

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

לקבלת הוראות ליצירה ולהתקנה של OTBR, קראו את המאמר פיתוח והגדרה.