OpenThread Border Router (OTBR) รองรับแพลตฟอร์ม BeagleBone Black (BBB)
ข้อกำหนดเกี่ยวกับฮาร์ดแวร์
- อะแดปเตอร์ AC ภายนอก 5V สำหรับแหล่งจ่ายไฟ
- การ์ด microSD ขนาด 8 GB หรือใหญ่กว่า ("การ์ด uSD" ในคู่มือนี้)
- แพลตฟอร์ม OpenThread ที่รองรับ (เช่น TI CC2652) สำหรับการเชื่อมต่อเครือข่ายเทรดในการออกแบบ 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 IDE ในช่วงท้ายของคู่มือนี้
- คู่มือนี้จะเปลี่ยนสถานะของอินเทอร์เฟซเครือข่าย BeagleBone โปรดทราบว่าเซสชัน Secure Shell ของคุณอาจยกเลิกการเชื่อมต่อ
- Bootloader ของ BeagleBone ที่ทันสมัยจะทำงานจากการ์ด uSD โดยค่าเริ่มต้น แต่อุปกรณ์ BeagleBone Black บางรุ่นอาจพยายามเปิดเครื่องจาก eMMC ภายใน ในกรณีนี้ อย่าลืมกดปุ่ม "เปิดเครื่อง"
สำหรับข้อมูลโดยละเอียดเพิ่มเติมเกี่ยวกับ BeagleBone โปรดดูหน้าการสนับสนุนของ BeagleBoard
เตรียมสภาพแวดล้อม Debian สำหรับ OTBR
ระบบไฟล์สำหรับรูปภาพ uSD BeagleBone จะมีขีดจำกัดอยู่ที่ 4 GB เพื่อให้พอดีกับการ์ด 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
Network Manager อาจไม่ได้ตั้งค่าเนมเซิร์ฟเวอร์ DNS แก้ไข resolv.conf
ด้วยคำสั่ง sudo vim /etc/resolv.conf
และตรวจสอบว่าเนื้อหามี Google DNS และ Cloudflare DNS ดังนี้
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
BeagleBone ไม่รู้จัก BBONE-GATEWAY-CAPE
โดยค่าเริ่มต้นเนื่องจาก PIN ขัดแย้งกัน เพิ่มการกำหนดค่าด้วยตนเองโดยแก้ไข 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 จะพยายามใช้ Connman เพื่อเปิดใช้กิจกรรม Wi-Fi AP โดยค่าเริ่มต้น แก้ไขโฟลเดอร์การกำหนดค่าเริ่มต้นด้วยคำสั่ง 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
ไปยังสคริปต์การตั้งค่าในขั้นตอนถัดไปเพื่อใช้ Network Manager
สร้างและติดตั้ง OTBR
ดูการสร้างและการกำหนดค่าสำหรับคำแนะนำเกี่ยวกับการสร้างและติดตั้ง OTBR