1. مقدمة

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 مستخدَمَين في درس تطبيقي حول الترميز.

أهداف الدورة التعليمية
- كيفية إنشاء مشروع OpenThread باستخدام بيئة التطوير المتكاملة (IDE) في Silicon Labs Simplicity Studio
- كيفية إنشاء وتثبيت ثنائيات OpenThread CLI على لوحات راديو Silicon Labs
- كيفية إعداد جهاز Raspberry Pi 3B+ أو إصدار أحدث كجهاز توجيه حدودي OpenThread (OTBR) باستخدام Docker
- كيفية إنشاء شبكة Thread على OTBR
- توفير الأجهزة على شبكة Thread خارج النطاق
- كيفية التحقّق من اتصال Thread بين العُقد باستخدام الأمر ping
2. المتطلبات الأساسية
الأجهزة:
- 3 لوحات راديو EFR32MGxx - يمكن استخدام أي مجموعة من هذه الأجهزة. يستخدم هذا الدرس التطبيقي BRD4166A كجهاز RCP وجهازَي BRD4168A كجهازَي Full Thread.
- EFR32MG12 (BRD4161A وBRD4166A وBRD4170A وBRD4304A)
- EFR32MG13 (BRD4168A)
- EFR32MG21 (BRD4180A وBRD4180B)
- BRD4001A: لوحات رئيسية لاسلكية للمبتدئين (WSTK) لاستضافة لوحات الراديو باستثناء BRD4166A، تحتاج جميع لوحات الراديو إلى لوحة رئيسية لتشغيل كل منها. كابلات USB صغيرة لتوصيل اللوحات الرئيسية أو كابل USB صغير لطاقة BRD4166A

- جهاز Raspberry Pi 3B+ أو إصدار أحدث مزوّد بصورة نظام التشغيل Raspbian Stretch Lite أو Raspbian Stretch with Desktop والمتصل بالإنترنت عبر الإيثرنت نضبط هذا الجهاز كجهاز توجيه حدودي خاص بتكنولوجيا التشغيل.
- نظام مضيف Windows أو Linux أو Mac مزوّد بمنفذَي USB على الأقل واتصال بالإنترنت راجِع متطلبات الأجهزة ونظام التشغيل على SSv5.
- كابل إيثرنت واحد على الأقل لتوصيل Raspberry Pi بالإنترنت تتيح أدوات WSTK أيضًا تصحيح الأخطاء وتحديث البرامج الثابتة عبر بروتوكول الإنترنت، لذا يمكن استخدام كابلات إيثرنت إضافية بشكل اختياري لتوصيل أدوات WSTK بنظامك المضيف من خلال محوّل إيثرنت.
البرامج:
- تم تثبيت الإصدار 5 من Simplicity Studio وتحديثه على نظام التشغيل Windows أو Linux أو Mac المضيف باستخدام
- سلسلة أدوات GNU ARM
- الإصدار 3.2.0 أو الإصدارات الأحدث من Gecko SDK Suite وSilicon Labs OpenThread SDK
3- ضبط الأجهزة
تم إنشاء هذا الدرس التطبيقي حول الترميز باستخدام
- EFR32MG12 BRD4166A Thunderboard Sense 2 كما هو موضّح على اليمين
- جهازان EFR32MG13 BRD4168A كما هو موضح على اليسار
- تم تثبيت الإصدار 5 من Simplicity Studio على نظام التشغيل macOS Catalina 10.15.7 مع
- Gecko SDK 3.2.0
- GNU ARM v7.2.1


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

4. إعداد البرامج الثابتة
هناك طريقتان للبدء. يتيح لك كلا الخيارين تثبيت البرامج الثابتة المطلوبة في هذا الدرس العملي.
- المشاريع: (مقترَح) أنشئ تطبيقًا نموذجيًا وصمّمه وثبّت ذاكرة ROM. يتيح لك هذا الخيار تخصيص التطبيق في المشروع.OR
- العروض التوضيحية: (اختياري) يمكنك عرض العروض التوضيحية المُنشأة مسبقًا مباشرةً على لوحة الراديو لأي من التطبيقات النموذجية. ننصح المستخدمين بتجربة إعداد البرامج الثابتة للعروض التوضيحية كتمرين اختياري. يُرجى الرجوع إلى قسم "إعداد البرامج الثابتة الاختياري - العروض التوضيحية" في نهاية هذا الدرس العملي للحصول على التفاصيل.
سنستخدم طريقة المشروع في هذا الدرس التطبيقي.
إنشاء مشاريع باستخدام الأمثلة
سننشئ مشروعَين. المشروع ot-rcp لجهاز BRD4166A والمشروع ot-cli-ftd لجهازَي BRD4168A يُرجى اتّباع الخطوات التالية واختيار التطبيق النموذجي المناسب للوحة التطوير.
- افتح قائمة ملف (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.

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

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

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

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

في هذا العرض التوضيحي، سنستخدم الإعدادات التلقائية للتطبيقات النموذجية. كرِّر الخطوات أعلاه لإنشاء مشروع ot-rcp للوحة الأخرى.
إنشاء المشاريع وتثبيتها
إنشاء مشروعَي ot-rcp وot-cli-ftd وتثبيتهما
- بعد إعداد مشروعك، انقر على عنصر التحكّم في الإنشاء (رمز المطرقة) في شريط الأدوات العلوي. يمكنك بدلاً من ذلك النقر بزر الماوس الأيمن على المشروع والنقر على "إنشاء المشروع".

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

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

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

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

ستلاحظ أنّه ليس لدينا بعد وحدة تحكّم خاصة بـ 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.

إعداد Raspberry Pi
- على بطاقة SD، تأكَّد من تثبيت صورة نظام التشغيل Raspbian Stretch Lite أو Raspbian Stretch مع سطح المكتب.
- يمكنك إما استخدام SSH على Raspberry Pi أو اختيار العمل مع Raspbian Desktop مباشرةً. افتح نافذة طرفية.
- احرص على تعديل مستودعاتك المحلية وأداة إدارة الحِزم (apt-get update وapt-get upgrade قبل تثبيت Docker).
تثبيت صورة Docker
- ثبِّت Docker باستخدام الأمر التالي على جهاز RPi.
curl -sSL https://get.docker.com | sh
- بعد الانتهاء، يمكنك تعديل إعدادات مستخدم Docker لكي لا يتطلّب الأمر sudo قبل كل أمر. يجب إعادة التشغيل.
sudo usermod -aG docker $USER
- أدخِل الأوامر التالية لتثبيت الحاويات. يُرجى العِلم أنّه يمكنك تشغيل حاوية Border Router واحدة فقط في كل مرة باستخدام RCP. تأكَّد أيضًا من مطابقة إصدار GSDK في Simplicity Studio مع صورة Docker الصحيحة. على سبيل المثال،
gsdk-4.0.1:docker pull siliconlabsinc/openthread-border-router:gsdk-4.0.1
ضبط Docker وتشغيله
- عليك ضبط منفذ TTY الذي تريد استخدامه في OTBR لربط RCP عند بدء التشغيل. ابحث عن منفذ TTY في جهاز RCP. أسهل طريقة للقيام بذلك هي البحث عن إدخال
/tty/dev... بعد توصيل RCP. يجب أن تكون القيمة إما/dev/ttyUSB0أو/dev/ttyACM0. - نفِّذ عملية تثبيت 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 وحدات تحكّم.
- وحدتا تحكّم
ot-cli-ftdفي Simplicity Studio تم إعدادهما كجهازَي Full Thread. ot-ctlغلاف تفاعلي واحد على Raspberry Pi تم إعداده كجهاز توجيه حدودي لشبكة OT
أصبحنا الآن جاهزين لتشكيل شبكة Thread.
8. إنشاء شبكة Thread
إعداد RCP
لإنشاء الشبكة، نبدأ باستخدام ot-ctl shell على جهاز OTBR الذي يُستخدَم للتواصل مع عقدة RCP. أدخِل الأوامر التالية بالترتيب الموضّح أدناه:
المؤشر | Command | وصف الأمر | الردّ المتوقّع | ||
1 |
| أنشئ إعدادات شبكة جديدة. | تم | ||
2 |
| إرسال مجموعة البيانات الجديدة إلى مجموعة البيانات التشغيلية النشطة | تم | ||
3 |
| فعِّل واجهة Thread. | تم | ||
4 |
| فعِّل عملية بروتوكول Thread وأرفِقها. | تم | ||
انتظِر لمدة 10 ثوانٍ حتى تظهر واجهة سلسلة المحادثات. | |||||
5 |
| تحقَّق من حالة الجهاز. يجب أن تكون الحالة "رئيسية". | القائد | ||
6 |
| عرض إعدادات الشبكة | Active Timestamp: 1 | ||
سنستخدم رقم القناة ومفتاح الشبكة على ot-cli-ftd لربط جهازي FTD بشبكة سلسلة المحادثات هذه.
إعداد FTD وإضافته إلى شبكة Thread (طريقة خارج النطاق)
باستخدام طريقة النطاق الخارجي، نعرف جميع معلومات الأمان ونضيف العقدة يدويًا. في وحدات تحكّم Simplicity، أضِف كلا الجهازَين إلى شبكتنا باستخدام الأوامر التالية بالترتيب الموضّح أدناه.
المؤشر | Command | وصف الأمر | الردّ المتوقّع | ||
1 |
| اضبط القناة التي يستخدمها OTBR. | تم | ||
2 |
| مفتاح الشبكة هو العنصر الوحيد المطلوب لربط جهاز بشبكة Thread. | تم | ||
3 |
| إرسال مجموعة البيانات الجديدة إلى مجموعة البيانات التشغيلية النشطة | تم | ||
4 |
| فعِّل واجهة Thread. | تم | ||
5 |
| فعِّل عملية بروتوكول Thread وأرفِقها. | تم | ||
انتظِر لمدة 20 ثانية بينما ينضم الجهاز إلى الشبكة ويضبط إعداداته. | |||||
6 |
| عرض إعدادات الشبكة | child | ||
التواصل بين أجهزة 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، بما في ذلك:
- المنصّات المتوافقة: يمكنك الاطّلاع على جميع المنصّات المتوافقة مع OpenThread
- إنشاء OpenThread: مزيد من التفاصيل حول إنشاء OpenThread وإعداده
- مقدمة عن Thread: تغطي جميع مفاهيم Thread الواردة في هذا الدرس التطبيقي حول الترميز
- تدريب Silicon Labs OpenThread: مقدّمة عن OpenThread، ومناقشة عملية الإعداد وأجهزة توجيه الحدود، وتمرين عملي لإنشاء شبكة OpenThread
- QSG170: دليل البدء السريع في OpenThread من Silicon Labs: يغطّي بالتفصيل عملية البدء في تطوير Thread من Silicon Labs
- AN1256: استخدام RCP من Silicon Labs مع جهاز توجيه الحدود OpenThread: تعليمات الإنشاء والتثبيت لمضيف جهاز توجيه الحدود Raspberry Pi
10. إعداد البرامج الثابتة الاختياري - العروض التوضيحية
العروض التوضيحية هي صور برامج ثابتة مُنشأة مسبقًا وجاهزة للتنزيل على جهاز متوافق. أسرع طريقة لمعرفة ما إذا كان هناك عرض توضيحي متاح للجزء الخاص بك في Simplicity Studio هي النقر على الجزء الخاص بك ضمن Debug Adapters view ثم الانتقال إلى علامة التبويب EXAMPLE PROJECTS & DEMOS في Launcher Perspective. أوقِف فلتر "المشاريع النموذجية" وضَع علامة في مربّع الاختيار "سلسلة المحادثات" ضمن "نوع التكنولوجيا".

تتوافق صور التطبيق التجريبي المُجمَّعة مسبقًا والمقدَّمة مع حزمة تطوير البرامج (SDK) الخاصة بـ OpenThread مع اللوحات التالية:
- BRD4161a
- BRD4166a
- BRD4168a
- BRD4180a
- BRD4304a
قد يتم تعديل هذه القائمة في إصدارات حزمة تطوير البرامج (SDK) المستقبلية لتشمل المزيد من لوحات الراديو. يُرجى الرجوع إلى ملاحظات إصدار حزمة تطوير البرامج (SDK) من Silicon Labs OpenThread ضمن "المستندات" للحصول على قائمة كاملة بالأجزاء المتوافقة.
ثبّت ذاكرة ROM للعروض التوضيحية التالية على اللوحات المعنية. لتثبيت ذاكرة ROM، اختَر لوحتك ضمن "محوّلات تصحيح الأخطاء" (Debug Adapters) على يمين الشاشة، ثم انقر على "تشغيل" (RUN) لتشغيل التطبيقات النموذجية ذات الصلة. ستظهر نافذة منبثقة تعرض مستوى تقدّم عملية التثبيت.
- BRD4166A: ot-rcp: سيعمل هذا الجهاز كمعالج مساعد لاسلكي لجهاز توجيه حدود شبكة OT. سنستخدم هذا الجهاز لإنشاء شبكة Thread وإعداد الجهازَين الآخرَين عليها. وبما أنّ هذا الجهاز هو جهاز توجيه حدود شبكة Thread، فهو يعمل أيضًا كبوابة تتيح للأجهزة في شبكة Thread التواصل عبر الإنترنت.
- جهازان من طراز BRD4168A: ot-cli-ftd: سيعمل هذان الجهازان كجهازَي Thread كاملَين. ستنضم هذه الأجهزة إلى شبكة Thread التي أنشأها جهاز OTBR.