BeagleBone الأسود

عرض المصدر على GitHub

يوفر OpenThread Border Router (OTBR) دعمًا لمنصّة BeagleBone Black (BBB).

متطلبات الأجهزة:

  • محوِّل طاقة خارجي بقدرة 5 فولت وتيار متردد
  • بطاقة microSD بسعة 8 غيغابايت أو أكبر ("بطاقة uSD" في هذا الدليل)
  • منصة OpenThread متوافقة (مثل TI CC2652) للاتصال بشبكة Thread في تصميم RCP

خطوات التفعيل:

  1. نزِّل نظام التشغيل وثبِّته.
  2. إعداد بيئة Debian لاستخدام ميزة "إعادة التشغيل في وضع الاسترداد"
  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، مع العِلم أنّه قد يتم فصل جلسة shell الآمنة.
    • سيتم تشغيل برامج تحميل BeagleBone الحديثة من بطاقة uSD تلقائيًا، ولكن قد تحاول بعض أجهزة BeagleBone Black التشغيل من وحدة الذاكرة الوميضية المدمجة (eMMC) الداخلية. احرص على الضغط على زر BOOT في هذه الحالة.

للحصول على معلومات أكثر تفصيلاً حول BeagleBone، يُرجى الاطّلاع على صفحة دعم BeagleBoard.

إعداد بيئة Debian لاستخدام ميزة "إعادة التشغيل في وضع الاسترداد"

يقتصر نظام الملفات لصورة BeagleBone على 4 غيغابايت ليناسب معظم بطاقات 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

قد لا يكون "مدير الشبكة" قد أعدّ خوادم أسماء نظام أسماء النطاقات. عدِّل 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. عدِّل مجلد الإعدادات التلقائية باستخدام الأمر 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 وتثبيتها.