أنشِئ شبكة Thread باستخدام لوحات Silicon Labs EFR32 وOpenThread باستخدام الإصدار الخامس من Simplicity Studio

‫1. مقدمة

26b7f4f6b3ea0700.png

OpenThread (OT) من Google هو تطبيق مفتوح المصدر لبروتوكول Thread. أصدرت Google بروتوكول OpenThread لتتيح للمطوّرين استخدام تكنولوجيا الشبكات المستخدَمة في منتجات Google Nest على نطاق أوسع، وذلك بهدف تسريع تطوير المنتجات لشبكة منزلية متصلة والمباني التجارية. بفضل طبقة تجريد المنصة الضيقة ومساحة الذاكرة الصغيرة، يمكن نقل OpenThread بسهولة. يتوافق مع تصميمات النظام على الشريحة (SoC) ومعالج الشبكة المساعد (NCP).

يحدّد مواصفات Thread بروتوكول اتصال لاسلكي موثوق وآمن ومنخفض الطاقة بين الأجهزة يستند إلى IPv6 لتطبيقات المنازل والمباني التجارية.

أضافت شركة Silicon Labs تحسينات إلى OpenThread لتعمل مع أجهزة Silicon Labs. يتوفّر رمز المصدر هذا على GitHub وأيضًا كحزمة تطوير برامج (SDK) يتم تثبيتها باستخدام Simplicity Studio 5 (SSv5). تتضمّن حزمة تطوير البرامج لقطة تم اختبارها بالكامل لرمز المصدر على GitHub. يتوافق مع مجموعة أكبر من الأجهزة مقارنةً بإصدار GitHub، ويتضمّن مستندات وتطبيقات نموذجية غير متوفّرة على GitHub.

يوضّح هذا الدليل كيفية بدء تطوير تطبيقات OpenThread باستخدام حزمة تطوير البرامج (SDK) الخاصة بـ Silicon Labs OpenThread وSimplicity Studio 5. تعرض الصورة أدناه اللوحات (BRD) وإعداد الأجهزة مع جهاز توجيه حدودي OT وجهازَي Thread مستخدَمَين في درس تطبيقي حول الترميز.

إعداد أجهزة EFR32MG

أهداف الدورة التعليمية

  • كيفية إنشاء مشروع OpenThread باستخدام بيئة التطوير المتكاملة (IDE) في Silicon Labs Simplicity Studio
  • كيفية إنشاء وتثبيت ثنائيات OpenThread CLI على لوحات راديو Silicon Labs
  • كيفية إعداد جهاز Raspberry Pi 3B+ أو إصدار أحدث كجهاز توجيه حدودي OpenThread (OTBR) باستخدام Docker
  • كيفية إنشاء شبكة Thread على OTBR
  • توفير الأجهزة على شبكة Thread خارج النطاق
  • كيفية التحقّق من اتصال Thread بين العُقد باستخدام الأمر ping

‫2. المتطلبات الأساسية

الأجهزة:

  1. 3 لوحات راديو EFR32MGxx - يمكن استخدام أي مجموعة من هذه الأجهزة. يستخدم هذا الدرس التطبيقي BRD4166A كجهاز RCP وجهازَي BRD4168A كجهازَي Full Thread.
    • EFR32MG12 (BRD4161A وBRD4166A وBRD4170A وBRD4304A)
    • EFR32MG13 (BRD4168A)
    • EFR32MG21 (BRD4180A وBRD4180B)
    إذا كنت تبدأ من جديد، يمكنك الحصول على إحدى مجموعات أدوات بدء استخدام EFR32 Thread التي تتضمّن اللوحات المذكورة أعلاه.
  2. BRD4001A: لوحات رئيسية لاسلكية للمبتدئين (WSTK) لاستضافة لوحات الراديو باستثناء BRD4166A، تحتاج جميع لوحات الراديو إلى لوحة رئيسية لتشغيل كل منها. كابلات USB صغيرة لتوصيل اللوحات الرئيسية أو كابل USB صغير لطاقة BRD4166A

WSTK AEM

  1. جهاز Raspberry Pi 3B+ أو إصدار أحدث مزوّد بصورة نظام التشغيل Raspbian Stretch Lite أو Raspbian Stretch with Desktop والمتصل بالإنترنت عبر الإيثرنت نضبط هذا الجهاز كجهاز توجيه حدودي خاص بتكنولوجيا التشغيل.
  2. نظام مضيف Windows أو Linux أو Mac مزوّد بمنفذَي USB على الأقل واتصال بالإنترنت راجِع متطلبات الأجهزة ونظام التشغيل على SSv5.
  3. كابل إيثرنت واحد على الأقل لتوصيل Raspberry Pi بالإنترنت تتيح أدوات WSTK أيضًا تصحيح الأخطاء وتحديث البرامج الثابتة عبر بروتوكول الإنترنت، لذا يمكن استخدام كابلات إيثرنت إضافية بشكل اختياري لتوصيل أدوات WSTK بنظامك المضيف من خلال محوّل إيثرنت.

البرامج:

  • تم تثبيت الإصدار 5 من Simplicity Studio وتحديثه على نظام التشغيل Windows أو Linux أو Mac المضيف باستخدام
    • سلسلة أدوات GNU ARM
    • الإصدار 3.2.0 أو الإصدارات الأحدث من Gecko SDK Suite وSilicon Labs OpenThread SDK

3- ضبط الأجهزة

تم إنشاء هذا الدرس التطبيقي حول الترميز باستخدام

  1. ‫EFR32MG12 BRD4166A Thunderboard Sense 2 كما هو موضّح على اليمين
  2. جهازان EFR32MG13 BRD4168A كما هو موضح على اليسار
  3. تم تثبيت الإصدار 5 من Simplicity Studio على نظام التشغيل macOS Catalina 10.15.7 مع
    1. ‫Gecko SDK 3.2.0
    2. GNU ARM v7.2.1

BRD4168A

وصِّل كل لوحة رئيسية من "حزمة أدوات بدء التشغيل اللاسلكية" بجهاز الكمبيوتر المضيف من خلال منفذ USB كما هو موضّح في الصورة أدناه. ستسمح عمليات الربط هذه ببرمجة RCP وتحليل الشبكة للأجهزة الطرفية. سنستخدم أولاً جهاز الكمبيوتر المضيف لبرمجة BRD4166A باستخدام برنامج ot-rcp الثابت، ثم سنربطه بجهاز Raspberry Pi. يمكن ربط الأجهزة الطرفية بالكمبيوتر المضيف عبر مفتاح تبديل إيثرنت مشترك. تتيح حِزم الأدوات المبتدئة أيضًا إمكانية البرمجة وتحليل الشبكة عبر IPv4.

الاتصالات

4. إعداد البرامج الثابتة

هناك طريقتان للبدء. يتيح لك كلا الخيارين تثبيت البرامج الثابتة المطلوبة في هذا الدرس العملي.

  1. المشاريع: (مقترَح) أنشئ تطبيقًا نموذجيًا وصمّمه وثبّت ذاكرة ROM. يتيح لك هذا الخيار تخصيص التطبيق في المشروع.OR
  2. العروض التوضيحية: (اختياري) يمكنك عرض العروض التوضيحية المُنشأة مسبقًا مباشرةً على لوحة الراديو لأي من التطبيقات النموذجية. ننصح المستخدمين بتجربة إعداد البرامج الثابتة للعروض التوضيحية كتمرين اختياري. يُرجى الرجوع إلى قسم "إعداد البرامج الثابتة الاختياري - العروض التوضيحية" في نهاية هذا الدرس العملي للحصول على التفاصيل.

سنستخدم طريقة المشروع في هذا الدرس التطبيقي.

إنشاء مشاريع باستخدام الأمثلة

سننشئ مشروعَين. المشروع ot-rcp لجهاز BRD4166A والمشروع ot-cli-ftd لجهازَي BRD4168A يُرجى اتّباع الخطوات التالية واختيار التطبيق النموذجي المناسب للوحة التطوير.

  1. افتح قائمة ملف (File) في "استوديو Android" واختَر جديد (New) > معالج مشاريع Silicon Labs (Silicon Labs Project Wizard). يظهر مربّع الحوار "اختيار الهدف وحزمة تطوير البرامج (SDK) وسلسلة الأدوات". لا تغيِّر بيئة التطوير المتكاملة (IDE) التلقائية Simplicity / سلسلة أدوات GNU المتوافقة مع OpenThread. انقر على "التالي".
    • لوحات الاستهداف: تعرض لوحة الراديو المحدّدة (BRD4168A) مع اللوحة الرئيسية (BRD4001A)
    • الجهاز المستهدف: يعرض هذا الحقل شريحة وحدة التحكّم الدقيقة (MCU) المدمجة. تحتوي اللوحة BRD4168A على وحدة تحكّم دقيقة (MCU) من النوع EFR32MG13.
    • حزمة تطوير البرامج (SDK): يمكنك هنا اختيار إصدار حزمة تطوير البرامج (SDK) الذي تعمل عليه. تتضمّن معلومات الحزمة علامة حزمة تطوير البرامج (SDK) وإصدار Silicon Labs من OpenThread، مثل Platform 4.0.1.0 وOpenThread 2.0.1.0 (GitHub-55af6ce2c).
    • بيئة التطوير المتكاملة/ سلسلة الأدوات: سلسلة الأدوات التي سيتم استخدامها لتجميع مشروع OT. نستخدم GNU ARM.

معالج المشروع الجديد

  1. يتم فتح مربّع الحوار "اختيار مشروع نموذجي". ستظهر لك قائمة بالمشاريع النموذجية. استخدِم فلاتر نوع التكنولوجيا والكلمات الرئيسية للبحث عن مثال محدّد. احرص على تدوين رقم إصدار Gecko SDK Suite. ستحتاج إلى علامة الإصدار هذه عند إعداد Raspberry Pi كجهاز توجيه الحدود. اختَر ot-cli-ftd، ثم انقر على التالي.

الخطوة 2 من معالج المشروع الجديد

  1. يفتح مربّع الحوار "إعدادات المشروع". يمكنك هنا إعادة تسمية مشروعك وتغيير الموقع الجغرافي التلقائي لملف المشروع وتحديد ما إذا كنت ستربط ملفات المشروع أو تنسخها. تشير ملفات المشاريع المرتبطة إلى حزمة SDK، وينتهي الأمر بإجراء أي تعديلات في حزمة SDK واستخدامها في المشاريع المستقبلية. يسمح لك نسخ مصادر المشروع بتعديل نسخة محلية من المشروع، وبالتالي تظل ملفات حزمة تطوير البرامج (SDK) سليمة. يُعدّ الخيار ربط حزمة تطوير البرامج (SDK) ونسخ مصادر المشروع الخيار التلقائي والمقترَح. انقر على إنهاء.

الخطوة 3 من معالج المشاريع الجديدة

  1. يتم فتح "منظور Simplicity IDE" مع فتح "أداة ضبط إعدادات المشروع" على علامة التبويب نظرة عامة.

نظرة عامة حول المشروع

يتم ضبط المشروع من علامة التبويب مكونات البرنامج عن طريق تثبيت المكونات وإلغاء تثبيتها، وضبط المكونات المثبَّتة. يتم التحقّق من المكوّنات المثبَّتة. انقر على المكوّنات المثبَّتة للاطّلاع على قائمة مكوّنات تمّت فلترتها وثبَّتها التطبيق النموذجي. يتم حفظ أي تغييرات تجريها تلقائيًا، ويتم إنشاء ملفات المشروع تلقائيًا. يظهر مستوى التقدّم في أسفل يسار نافذة Simplicity IDE.

مكوّنات البرامج

في هذا العرض التوضيحي، سنستخدم الإعدادات التلقائية للتطبيقات النموذجية. كرِّر الخطوات أعلاه لإنشاء مشروع ot-rcp للوحة الأخرى.

إنشاء المشاريع وتثبيتها

إنشاء مشروعَي ot-rcp وot-cli-ftd وتثبيتهما

  1. بعد إعداد مشروعك، انقر على عنصر التحكّم في الإنشاء (رمز المطرقة) في شريط الأدوات العلوي. يمكنك بدلاً من ذلك النقر بزر الماوس الأيمن على المشروع والنقر على "إنشاء المشروع".

زر إنشاء مشروع

  1. يتم عرض مستوى التقدّم في وحدة التحكّم وشريط التقدّم في أسفل يسار الشاشة. ستظهر أيضًا في نافذة الإخراج هذه أي أخطاء أو تحذيرات ذات صلة بمشروعك.

نافذة ناتج إنشاء المشروع

  1. يتم إنشاء صور الملفات الثنائية بعد إنشاء مشروع ناجح. يمكنك تثبيت ذاكرة ROM للصورة الثنائية من طريقة عرض "مستكشف المشاريع". ابحث عن الملف ‎ .bin أو ‎.hex أو ‎ .s37 في الدليل الفرعي للمترجم. انقر بزر الماوس الأيمن على الملف واختَر تثبيت ذاكرة ROM على الجهاز. إذا كان لديك أكثر من جهاز واحد متصل، اختَر جهازًا لبرمجته، ثم انقر على موافق. يتم فتح أداة Flash Programmer مع ملء مسار الملف. انقر على البرنامج.

فلاش

5. ملخّص إعداد البرامج الثابتة

في هذه المرحلة، يجب أن تكون قد أنشأت البرامج الثابتة المناسبة وجمّعتها ونقلتها إلى لوحات الراديو. بعد نقل ot-rcp إلى BRD4166A، افصلها عن نظام المضيف واربطها بجهاز Raspberry Pi.

بعد إكمال هذا القسم، سيظهر إعداد أجهزة شبكة Thread على النحو التالي.

إعداد EFR32MG

6. إعداد "وحدة التحكم التسلسلية" لأجهزة ot-cli-ftd

لتشغيل واجهة "وحدة التحكّم"، انقر بزر الماوس الأيمن على جهاز J-Link في عرض "الأجهزة" / نافذة "محولات تصحيح الأخطاء" (Debug Adapters) في Simplicity IDE. اختَر تشغيل وحدة التحكّم. للحصول على طلب في "وحدة التحكّم"، اختَر علامة التبويب المنفذ التسلسلي 1 واضغط على Enter. تحقَّق من حالة عقدة FTD.

طريقة عرض FTD Studio Console

ستلاحظ أنّه ليس لدينا بعد وحدة تحكّم خاصة بـ ot-rcp. في الخطوة التالية، سنضبط Raspberry Pi كجهاز توجيه حدودي لتكنولوجيا التشغيل (OT) ونعدّ وحدة التحكّم لـ ot-rcp.

7. إعداد Raspberry Pi كجهاز توجيه حدودي

تنصح شركة Silicon Labs بنشر حاوية Docker الخاصة بالشركة باستخدام OTBR. يتيح تشغيل OTBR في حاوية إنشاء عناصر قابلة للنشر بسهولة وتطوير نماذج أولية واختبارها بسرعة.

تتم استضافة صور Silicon Labs OTBR على siliconlabsinc DockerHub، مع علامات. تتوافق كل علامة مع إصدار من GSDK:

https://hub.docker.com/r/siliconlabsinc/openthread-border-router/tags

يجب استخدام حاويات Docker مع حِزم RCP التي تم إنشاؤها باستخدام Simplicity Studio 5 لإصدار معيّن. احرص على مطابقة إصدار علامة الحاوية مع إصدار GSDK الذي تختبره. على سبيل المثال، إذا كان إصدار GDSK هو Gecko SDK Suite v4.0.1 (140) عند اختيار ot-rcp من نافذة اختيار مشروع المثال، استخدِم الصورة siliconlabsinc/openthread-border-router:gsdk-4.0.1.

إصدار GSDK

إعداد Raspberry Pi

  1. على بطاقة SD، تأكَّد من تثبيت صورة نظام التشغيل Raspbian Stretch Lite أو Raspbian Stretch مع سطح المكتب.
  2. يمكنك إما استخدام SSH على Raspberry Pi أو اختيار العمل مع Raspbian Desktop مباشرةً. افتح نافذة طرفية.
  3. احرص على تعديل مستودعاتك المحلية وأداة إدارة الحِزم (apt-get update وapt-get upgrade قبل تثبيت Docker).

تثبيت صورة Docker

  1. ثبِّت Docker باستخدام الأمر التالي على جهاز RPi.
    curl -sSL https://get.docker.com | sh
    
  2. بعد الانتهاء، يمكنك تعديل إعدادات مستخدم Docker لكي لا يتطلّب الأمر sudo قبل كل أمر. يجب إعادة التشغيل.
    sudo usermod -aG docker $USER
    
  3. أدخِل الأوامر التالية لتثبيت الحاويات. يُرجى العِلم أنّه يمكنك تشغيل حاوية Border Router واحدة فقط في كل مرة باستخدام RCP. تأكَّد أيضًا من مطابقة إصدار GSDK في Simplicity Studio مع صورة Docker الصحيحة. على سبيل المثال، gsdk-4.0.1:
    docker pull siliconlabsinc/openthread-border-router:gsdk-4.0.1
    

ضبط Docker وتشغيله

  1. عليك ضبط منفذ TTY الذي تريد استخدامه في OTBR لربط RCP عند بدء التشغيل. ابحث عن منفذ TTY في جهاز RCP. أسهل طريقة للقيام بذلك هي البحث عن إدخال /tty/dev... بعد توصيل RCP. يجب أن تكون القيمة إما /dev/ttyUSB0 أو /dev/ttyACM0.
  2. نفِّذ عملية تثبيت Docker باستخدام الأمر التالي. احرص على استبدال اسم صورة Docker بإصدار GSDK المطابق. على سبيل المثال، gsdk-4.0.1:
    docker run -d --name "otbr" \
     --sysctl "net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=1 net.ipv6.conf.all.forwarding=1" \
     -p 8080:80 --dns=127.0.0.1 -it \
     --volume /dev/ttyACM0:/dev/ttyACM0 \
     --privileged siliconlabsinc/openthread-border-router:gsdk-4.0.1 \
     --radio-url spinel+hdlc+uart:///dev/ttyACM0?uart-baudrate=460800 \
     --backbone-interface eth0
    
    • تضمن -d تشغيل الحاوية في وضع منفصل.
    • يمكنك الاطّلاع على سجلّات الحاوية الجارية في أي وقت باستخدام الأمر docker logs.
    • تكون --name ثابتة إلى أن يتم إغلاق (أو إزالة) حاوية Docker بشكل صحيح.
    • يشير المنفذ 8080 إلى منفذ خادم الويب الذي يستضيف صفحة الويب الخاصة بإدارة Border Router.
    • ?uart-baudrate=460800 مطلوب في خيارات عنوان URL الخاص بالراديو لتجنُّب مشاكل التجزئة / إعادة التجميع عبر UART، مع عمليات مكلفة مثل DTLS مع حِزم IPv6 الطويلة.

التفاعل مع عقدة RCP

بعد تشغيل Docker، يمكنك التواصل مع عقدة RCP من خلال واجهة تفاعلية باستخدام هذا الأمر. تحقَّق من حالة عقدة RCP.

$ docker exec -ti otbr sh -c "sudo ot-ctl"
> state 
disabled
Done

يمكنك الحصول على قائمة بمعرّفات الحاويات قيد التشغيل

$ docker ps -aq

يمكنك التحقّق من النافذة التي تشغّل حاوية OTBR Docker بحثًا عن ناتج سجلّ التشغيل لجهاز توجيه الحدود أو اتّباع سجلّ الحاوية على النحو التالي:

$ docker logs [container-id] -f

يمكنك اختياريًا إيقاف الصورة أو إزالتها أو حذفها إذا تم تحميل حاوية Docker بشكل صحيح.

$ docker stop otbr
$ docker rm otbr
$ docker kill otbr

اختياري: للخروج من الصدفة، استخدِم CNTL + C.

في هذه المرحلة، يجب أن يكون لديك 3 وحدات تحكّم.

  1. وحدتا تحكّم ot-cli-ftd في Simplicity Studio تم إعدادهما كجهازَي Full Thread.
  2. ot-ctl غلاف تفاعلي واحد على Raspberry Pi تم إعداده كجهاز توجيه حدودي لشبكة OT

أصبحنا الآن جاهزين لتشكيل شبكة Thread.

8. إنشاء شبكة Thread

إعداد RCP

لإنشاء الشبكة، نبدأ باستخدام ot-ctl shell على جهاز OTBR الذي يُستخدَم للتواصل مع عقدة RCP. أدخِل الأوامر التالية بالترتيب الموضّح أدناه:

المؤشر

Command

وصف الأمر

الردّ المتوقّع

1

dataset init new

أنشئ إعدادات شبكة جديدة.

تم

2

dataset commit active

إرسال مجموعة البيانات الجديدة إلى مجموعة البيانات التشغيلية النشطة

تم

3

ifconfig up

فعِّل واجهة Thread.

تم

4

thread start

فعِّل عملية بروتوكول Thread وأرفِقها.

تم

انتظِر لمدة 10 ثوانٍ حتى تظهر واجهة سلسلة المحادثات.

5

state

تحقَّق من حالة الجهاز. يجب أن تكون الحالة "رئيسية".
الحالات الأخرى المحتملة: غير متصلة بالإنترنت أو غير مفعّلة أو منفصلة أو
فرعية أو جهاز توجيه أو رئيسية

القائد
تم

6

dataset

عرض إعدادات الشبكة
ستختلف القيم عن تلك الواردة في هذا الدرس التطبيقي حول الترميز.
دوِّن القناة ومفتاح الشبكة
واسم الشبكة ومعرّف رقم PAN.

Active Timestamp: 1
Channel: 20
Channel Mask: 0x07fff800
Ext PAN ID: 39ba71f7fc367160
Mesh Local Prefix: fd5c:c6b:3a17:40b9::/64
Network Key: 81ae2c2c17368d585dee71eaa8cf1e90
Network Name: OpenThread-008c
PAN ID: 0x008c
PSKc: c98f0193d4236025d22dd0ee614e641f
Security Policy: 0, onrcb
Done

سنستخدم رقم القناة ومفتاح الشبكة على ot-cli-ftd لربط جهازي FTD بشبكة سلسلة المحادثات هذه.

إعداد FTD وإضافته إلى شبكة Thread (طريقة خارج النطاق)

باستخدام طريقة النطاق الخارجي، نعرف جميع معلومات الأمان ونضيف العقدة يدويًا. في وحدات تحكّم Simplicity، أضِف كلا الجهازَين إلى شبكتنا باستخدام الأوامر التالية بالترتيب الموضّح أدناه.

المؤشر

Command

وصف الأمر

الردّ المتوقّع

1

dataset channel 20

اضبط القناة التي يستخدمها OTBR.

تم

2

dataset networkkey 81ae2c2c17368d585dee71eaa8cf1e90

مفتاح الشبكة هو العنصر الوحيد المطلوب لربط جهاز بشبكة Thread.

تم

3

dataset commit active

إرسال مجموعة البيانات الجديدة إلى مجموعة البيانات التشغيلية النشطة

تم

4

ifconfig up

فعِّل واجهة Thread.

تم

5

thread start

فعِّل عملية بروتوكول Thread وأرفِقها.

تم

انتظِر لمدة 20 ثانية بينما ينضم الجهاز إلى الشبكة ويضبط إعداداته.

6

state

عرض إعدادات الشبكة

child
Done

التواصل بين أجهزة Thread

سنستخدم الأمر ping للتحقّق من إمكانية تواصل الأجهزة مع بعضها البعض. لاستخدام الأمر ping، نحتاج إلى عناوين IPv6 للأجهزة. يمكن الحصول على هذه المعلومات باستخدام الأمر ipaddr.

> ipaddr
fd5c:c6b:3a17:40b9:0:ff:fe00:fc00		# Leader Anycast Locator (ALOC)
fd5c:c6b:3a17:40b9:0:ff:fe00:1800		# Routing Locator (RLOC)
fd5c:c6b:3a17:40b9:84e2:bae8:bd5b:fa03		# Mesh-Local EID (ML-EID)
fe80:0:0:0:c449:ca4a:101f:5d16			# Link-Local Address (LLA)

أرسِل إشارة اختبار من كلا الجهازَين FTD إلى الجهاز OTBR باستخدام عنوان RLOC الخاص بالجهاز OTBR.

> ping fd5c:c6b:3a17:40b9:0:ff:fe00:1800
Done
> 
> 16 bytes from fd5c:c6b:3a17:40b9:0:ff:fe00:1800: icmp_seq=3 hlim=64 time=30ms
16 bytes from fd5c:c6b:3a17:40b9:0:ff:fe00:1800: icmp_seq=3 hlim=64 time=52ms

يشير الردّ إلى الحمولة التي تم تلقّيها وإلى أنّ عملية التواصل ناجحة. كرِّر العملية لإرسال إشارة إلى أجهزة FTD من جهاز OTBR.

9- تهانينا

لقد أنشأت شبكة Thread.

أنت تعرف الآن:

  • كيفية إنشاء مشروع OpenThread باستخدام بيئة التطوير المتكاملة (IDE) في Silicon Labs Simplicity Studio
  • كيفية إنشاء وتثبيت ثنائيات OpenThread CLI على لوحات راديو Silicon Labs
  • كيفية إعداد جهاز Raspberry Pi 3B+ أو إصدار أحدث كجهاز توجيه حدودي OpenThread (OTBR) باستخدام Docker
  • كيفية إنشاء شبكة Thread على OTBR
  • توفير الأجهزة على شبكة Thread خارج النطاق
  • كيفية التحقّق من اتصال Thread بين العُقد باستخدام الأمر ping

محتوى إضافي للقراءة

يمكنك الاطّلاع على openthread.io وGitHub للحصول على مجموعة متنوعة من مراجع OpenThread، بما في ذلك:

10. إعداد البرامج الثابتة الاختياري - العروض التوضيحية

العروض التوضيحية هي صور برامج ثابتة مُنشأة مسبقًا وجاهزة للتنزيل على جهاز متوافق. أسرع طريقة لمعرفة ما إذا كان هناك عرض توضيحي متاح للجزء الخاص بك في Simplicity Studio هي النقر على الجزء الخاص بك ضمن Debug Adapters view ثم الانتقال إلى علامة التبويب EXAMPLE PROJECTS & DEMOS في Launcher Perspective. أوقِف فلتر "المشاريع النموذجية" وضَع علامة في مربّع الاختيار "سلسلة المحادثات" ضمن "نوع التكنولوجيا".

الإصدارات التجريبية من "استوديو YouTube"

تتوافق صور التطبيق التجريبي المُجمَّعة مسبقًا والمقدَّمة مع حزمة تطوير البرامج (SDK) الخاصة بـ OpenThread مع اللوحات التالية:

  1. BRD4161a
  2. BRD4166a
  3. BRD4168a
  4. BRD4180a
  5. BRD4304a

قد يتم تعديل هذه القائمة في إصدارات حزمة تطوير البرامج (SDK) المستقبلية لتشمل المزيد من لوحات الراديو. يُرجى الرجوع إلى ملاحظات إصدار حزمة تطوير البرامج (SDK) من Silicon Labs OpenThread ضمن "المستندات" للحصول على قائمة كاملة بالأجزاء المتوافقة.

ثبّت ذاكرة ROM للعروض التوضيحية التالية على اللوحات المعنية. لتثبيت ذاكرة ROM، اختَر لوحتك ضمن "محوّلات تصحيح الأخطاء" (Debug Adapters) على يمين الشاشة، ثم انقر على "تشغيل" (RUN) لتشغيل التطبيقات النموذجية ذات الصلة. ستظهر نافذة منبثقة تعرض مستوى تقدّم عملية التثبيت.

  1. BRD4166A: ot-rcp: سيعمل هذا الجهاز كمعالج مساعد لاسلكي لجهاز توجيه حدود شبكة OT. سنستخدم هذا الجهاز لإنشاء شبكة Thread وإعداد الجهازَين الآخرَين عليها. وبما أنّ هذا الجهاز هو جهاز توجيه حدود شبكة Thread، فهو يعمل أيضًا كبوابة تتيح للأجهزة في شبكة Thread التواصل عبر الإنترنت.
  2. جهازان من طراز BRD4168A: ot-cli-ftd: سيعمل هذان الجهازان كجهازَي Thread كاملَين. ستنضم هذه الأجهزة إلى شبكة Thread التي أنشأها جهاز OTBR.