OpenThread Border Router (OTBR) מספק תמיכה בפלטפורמה BeagleBone Black (BBB).
דרישות החומרה:
- מתאם מתח חיצוני של 5V לחשמל
- כרטיס microSD בנפח 8GB ומעלה ('כרטיס uSD' במדריך הזה)
- פלטפורמת OpenThread נתמכת (כמו TI CC2652) לחיבור לרשת Thread בתכנון RCP
השלבים להפעלה:
- מורידים ומתקינים את מערכת ההפעלה.
- הכנת סביבת Debian ל-OTBR
- (אופציונלי) מפעילים את ה-Wi-Fi.
- פיתוח והתקנה של OTBR
הורדה והתקנה של מערכת ההפעלה
- מורידים את התמונה העדכנית של Debian IoT ל-BeagleBone.
- הגרסה שבה נעשה שימוש במדריך הזה הייתה
bone-debian-10.3-iot-armhf-2020-04-06-4gb.img.xz
- הגרסה שבה נעשה שימוש במדריך הזה הייתה
- מתקינים את קובץ האימג' של מערכת ההפעלה בכרטיס uSD לפי ההוראות במאמר מדריך למתחילים ב-BeagleBone.
- מפעילים את BeagleBone ומתחברים למכשיר באמצעות SSH.
- מומלץ להתחבר דרך רשת מקומית מבוססת-אתרנט.
- נשבית את סביבת הפיתוח המשולבת של 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, מתקינים את Network Manager:
sudo apt-get update
sudo apt-get install network-manager
לאחר מכן משביתים את connman
ומפעילים את network-manager
:
sudo systemctl disable connman
sudo systemctl enable network-manager
אם נשתמש ב-stop
ישירות כאן, זה יהיה הפסקה של סשן ה-SSH כי ממשק הרשת מנוהל על ידי קונמן. במקום זאת, אנחנו מגדירים את ההגדרות כך שייכנסו לתוקף בהפעלה הבאה. עכשיו צריך להפעיל מחדש את 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
מפעילים מחדש כדי לוודא ש-Network Manager מוגדר בצורה תקינה.
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 מנסים להשתמש ב-connman כברירת מחדל כדי להפעיל את הפעילות של נקודת הגישה (AP) של Wi-Fi. עורכים את תיקיית ברירת המחדל של ההגדרות האישיות עם הפקודה sudo
vim /etc/default/bb-wl18xx
ומוודאים שהמשתנים הבאים תואמים:
TETHER_ENABLED=no USE_CONNMAN_TETHER=no
מפעילים מחדש כדי לוודא ש-Network Manager יכול לראות את הממשק החדש.
sudo shutdown -r now
אחרי הכניסה מחדש, תוכלו להריץ את הפקודה ifconfig
או nmcli
כדי לראות את הממשק החדש של wlan
.
אל תשכחו להעביר את האפשרויות NETWORK_MANAGER=1
ו-NETWORK_MANAGER_WIFI=1
לסקריפט ההגדרה בשלב הבא כדי להשתמש במנהל הרשת.
פיתוח והתקנה של OTBR
להוראות ליצירה ולהתקנה של OTBR, ראו יצירה והגדרה.