สีดํา BeagleBone

ดูแหล่งที่มาใน GitHub

OpenThread Border Router (OTBR) รองรับแท็ก BeagleBone แพลตฟอร์ม (BBB)

ข้อกำหนดของฮาร์ดแวร์

  • อะแดปเตอร์ AC 5V ภายนอกสำหรับแหล่งจ่ายไฟ
  • การ์ด microSD ขนาด 8 GB ขึ้นไป ("การ์ด 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 ลงในอุปกรณ์
    • ขอแนะนำให้เชื่อมต่อผ่านเครือข่ายอีเทอร์เน็ตเฉพาะที่
    • เราจะปิดใช้ Cloud9 IDE ภายหลังในคู่มือนี้
    • คู่มือนี้จะเปลี่ยนสถานะของอินเทอร์เฟซเครือข่าย BeagleBone ตระหนักดีว่าเซสชัน Secure Shell อาจยกเลิกการเชื่อมต่อ
    • Bootloader ของ BeagleBone ที่ทันสมัยจะทำงานจากการ์ด uSD โดยค่าเริ่มต้น แต่ อุปกรณ์ BeagleBone Black บางรุ่นอาจพยายามเปิดเครื่องจาก eMMC ภายใน ตรวจสอบว่าได้กดปุ่ม BOOT แล้วสำหรับกรณีนี้

สำหรับข้อมูลโดยละเอียดเพิ่มเติมเกี่ยวกับ 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 ดำเนินการ Connman โดยตรงที่นี่ จะเป็นการหยุดเซสชัน SSH เนื่องจากอินเทอร์เฟซเครือข่ายได้รับการจัดการโดย Connman แต่เรากำหนดค่า เพื่อให้ระบบมีผลในการเปิดเครื่องครั้งถัดไป จากนั้นรีบูต Beaglebone และลงชื่อเข้าใช้อีกครั้ง

sudo shutdown -r now

ผู้จัดการเครือข่ายอาจยังไม่ได้ตั้งค่าเนมเซิร์ฟเวอร์ DNS แก้ไขresolv.conf ด้วยคำสั่ง sudo vim /etc/resolv.conf และตรวจสอบว่าเนื้อหามี Google DNS และ Cloudflare DNS ดังนี้

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

BeagleBone ไม่รู้จัก BBONE-GATEWAY-CAPE โดยค่าเริ่มต้นเนื่องจาก ของความขัดแย้งในการปักหมุด เพิ่มการกำหนดค่าด้วยตนเองโดยแก้ไข 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 โดยค่าเริ่มต้นเพื่อเปิดใช้ กิจกรรม Wi-Fi AP แก้ไขโฟลเดอร์การกำหนดค่าเริ่มต้นด้วยคำสั่ง sudo vim /etc/default/bb-wl18xx และตรวจสอบว่าตัวแปรตรงกันด้านล่าง

TETHER_ENABLED=no
USE_CONNMAN_TETHER=no

โปรดรีสตาร์ทเพื่อให้แน่ใจว่าผู้จัดการเครือข่ายจะเห็นอินเทอร์เฟซใหม่

sudo shutdown -r now

เมื่อเข้าสู่ระบบอีกครั้งแล้ว คุณสามารถเรียกใช้ ifconfig หรือ nmcli เพื่อดู wlan ใหม่ ของ Google

อย่าลืมส่งต่อตัวเลือก NETWORK_MANAGER=1 และ NETWORK_MANAGER_WIFI=1 ลงในสคริปต์การตั้งค่าในขั้นตอนถัดไปเพื่อใช้เครือข่าย ผู้จัดการ

สร้างและติดตั้ง OTBR

ดูการสร้างและการกำหนดค่า เพื่อดูวิธีการสร้างและติดตั้ง OTBR