1. מבוא
Google's OpenThread (OT) היא הטמעה של קוד פתוח בשרשור. Google השיקה את OpenThread כדי שטכנולוגיית הרשת שבה נעשה שימוש במוצרי Google Nest תהיה זמינה יותר למפתחים, כדי להאיץ את הפיתוח של מוצרים לבית החכם ולמבנים מסחריים. פלטפורמת ה-OpenThread ניידת, עם שכבת הרצה צרה של פלטפורמה וטביעת רגל קטנה. הוא תומך בעיצוב של מערכת על שבב (SoC) ובמעבדים משותפים (NCP) ברשת.
מפרט החוטים מגדיר פרוטוקול תקשורת אלחוטי, מאובטח וחזק של תקשורת אלחוטית בין מכשירים, עבור אפליקציות לבנייה ביתית ומסחרית.
מעבדי Silicon Labs שיפרנו את OpenOpen כדי לעבוד עם החומרה של Silicon Labs. קוד המקור הזה זמין ב-GitHub וגם כערכת פיתוח תוכנה (SDK) שמותקנת בו מערכת Simplicity Studio 5 (SSv5). ה-SDK כולל תמונת מצב שנבדקה במלואה של קוד המקור של GitHub. הוא תומך במגוון רחב יותר של חומרה בהשוואה לגרסת GitHub, וכולל מסמכים ואפליקציות לדוגמה שאינן זמינות ב-GitHub.
המדריך הזה מסביר איך להתחיל לפתח אפליקציות של OpenThread באמצעות Silicon Labs Openthread ו-Simplicity Studio 5. בתמונה שלמטה מוצגים הלוחות (BRDs) והחומרה שהוגדרה עם נתב OTB Border (OTBR) ושני מכשירים המחולקים לשרשורים שבהם נעשה שימוש במעבדת הקוד.
מה תלמדו
- איך יוצרים פרויקט OpenThread באמצעות Silicon Labs Simplicity Studio IDE.
- איך לבנות קבצים בינאריים של Openthread ו-CLI כדי להבהב אל לוחות הרדיו של Silicon Labs.
- איך להגדיר נתב פטל יותר מגרסה 3B ומעלה באמצעות נתב פתוח (OTBR) באמצעות אביזר עגינה.
- איך יוצרים רשת Thread ב-OTBR.
- הזמנת תדרים של מכשירים מחוץ לרשת בשרשור.
- איך מאמתים תקשורת בשרשור בין הצמתים באמצעות פקודת פינג.
2. דרישות מוקדמות
חומרה:
- 3 לוחות רדיו EFR32MGxx - אפשר להשתמש בכל שילוב של המכשירים האלה. ב-codelab זה נעשה שימוש ב-BRD4166A כ-RCP ובשני מכשירי BRD4168As כשרשור מלא.
- EFR32MG12 (BRD4161A, BRD4166A, BRD4170A, BRD4304A)
- EFR32MG13 (BRD4168A)
- EFR32MG21 (BRD4180A, BRD4180B)
- BRD4001A: לוחות אלחוטיים ראשיים (WSTK) לאירוח לוחות הרדיו. למעט BRD4166A, בכל לוח הרדיו צריך לוח ראשי למתחילים. כבלי USB קטנים לחיבור ולחיבור של הלוח הראשי או כבל המיקרו USB עבור BRD4166A.
- פטל P3 BB ומעלה עם Raspbian Stretch Lite OS או Restbian Stretch במחשב שולחניהמחובר לאינטרנט באמצעות אתרנט. אנו מגדירים זאת כנתב גבולות.
- מערכת Windows/Linux/Mac למארחים עם לפחות 2 יציאות USB וחיבור לאינטרנט. בודקים את דרישות החומרה ומערכת ההפעלה בכתובת SSv5.
- לפחות כבל Ethernet אחד לחיבור ה-Rerפטer Pi לאינטרנט. ה-WSTK תומך גם בניפוי באגים ובפלאש באמצעות כתובת IP, כך שניתן להשתמש בכבלי Ethernet נוספים כדי לחבר את ה-WSTK למערכת המארחת באמצעות מתג אתרנט.
תוכנה:
- גרסה 5 של Simplicity Studio מותקנת ומעודכנת במערכת האירוח של Windows/Linux/Mac באמצעות
- ארגז כלים של GNU ARM
- Gecko SDK Suite 3.2.0 ואילך ו-Silicon Labs OpenThread SDK.
3. הגדרת חומרה
Codelab זה נוצר באמצעות
- EFR32MG12 BRD4166A Sense Thunderboard 2 כפי שמוצג בצד שמאל.
- שני EFR32MG13 BRD4168A כפי שמוצג בצד שמאל.
- Simplicity Studio v5 מותקן ב-macOS Catalina 10.15.7 עם
- SDK 3.2.0 של Gecko
- GNU ARM v7.2.1
יש לחבר כל לוח ראשי אלחוטי לערכה למחשב באמצעות USB, כפי שמוצג בתמונה שבהמשך. החיבורים האלה יאפשרו תכנות וניתוח נתונים של ה-RCP ומכשירי הקצה. תחילה נשתמש במחשב המארח כדי לתכנת את BRD4166A בקושחה OT-rc ולבסוף לחבר אותה ל-Raspber Pi. אופציונלי: אפשר לחבר מכשירי קצה למחשב המארח באמצעות מתג Ethernet משותף. הערכות למתחילים תומכות גם בתכנות ובניתוח רשתות באמצעות IPv4.
4. הגדרת קושחה
יש שתי דרכים להתחיל. שתי האפשרויות מאפשרות לך להבליט את הקושחות הנדרשות למעבדת הקוד הזו.
- פרויקטים: (מומלץ) יצירה, יצירה והבזק של אפליקציה לדוגמה. בעזרת אפשרות זו אפשר להתאים אישית את האפליקציה בפרויקט.OR
- הדגמות: (אופציונלי) הבזקת ההדגמות המובנות מראש ישירות בלוח הרדיו של כל אחת מהאפליקציות לדוגמה. אנחנו ממליצים למשתמשים לנסות את גרסת הקושחה של ההדגמות כאימון אופציונלי. לקבלת פרטים, יש לעיין בקטע "הגדרת קושחה אופציונלית – הדגמות" בסוף שיעור הקוד הזה.
אנחנו נשתמש בשיטה מבוססת-הפרויקט עבור Lab Lab זה.
יצירת פרויקטים באמצעות דוגמאות
אנחנו ניצור שני פרויקטים. הפרויקט ot-rcp
עבור BRD4166A ופרויקט ot-cli-ftd
של שני BRD4168A. יש לפעול לפי השלבים הבאים ולבחור את הבקשה לדוגמה המתאימה ללוח.
- פותחים את תפריט קובץ ב-Studio& ובוחרים באפשרות אשף > חדש של Silicon Labs. תיבת הדו-שיח 'מיקוד', 'SDK' ו'בחירת כלי' תיפתח. אין לשנות את ברירת המחדל של גורמי מפתח מסוג IDE Simplicity / GNU שנתמכים על ידי OpenThread. לוחצים על 'הבא'.
- לוחות עלייה: מציג את לוח הרדיו שנבחר (BRD4168A) יחד עם הלוח הראשי (BRD4001A)
- מכשיר יעד: בשדה הזה מוצגים הצ'יפ של המיקרו-בקר (MCU) על לוח האם. ה-BRD4168A כולל לוח שידורים EFR32MG13 MCU.
- SDK: כאן אפשר לבחור את גרסת ה-SDK שאתם עובדים בה. פרטי החבילה כוללים את תג ה-SDK ואת ה-build של Silicon Labs ב-OpenThread, לדוגמה:
Platform 4.0.1.0
ו-OpenThread 2.0.1.0 (GitHub-55af6ce2c)
. - IDE/ Toolchain: ארגז הכלים שישמש להכנה של פרויקט ה-OT. אנחנו משתמשים ב-GNU ARM.
- תיבת הדו-שיח 'בחירת פרויקט' תיפתח. תוצג רשימה של פרויקטים לדוגמה. השתמשו במסנן 'סוג' פרוטוקול Thread ובסוג מילת המפתח כדי לחפש דוגמה ספציפית. חשוב לשים לב למספר הגרסה של Gecko SDK Suite. יש צורך בתג הגרסה הזה כשמגדירים את פטל פאי כנתב גבולות. בוחרים באפשרות ot-cli-ftd ולוחצים על הבא.
- תיבת הדו-שיח 'הגדרת הפרויקט' תיפתח. כאן תוכלו לשנות את שם הפרויקט, לשנות את מיקום ברירת המחדל של קובץ הפרויקט ולקבוע אם לקשר אליו או להעתיק קובצי פרויקט. קובצי פרויקטים מקושרים מצביעים על ה-SDK וכל שינוי שיתבצע בהם יבוצע ב-SDK וישמשו לצורך פרויקטים עתידיים. העתקת מקורות של פרויקטים מאפשרת לערוך עותק מקומי של הפרויקט, כך שקובצי SDK יישארו ללא שינוי. ‘קישור sdk והעתקת מקורות הפרויקט' היא ברירת המחדל והבחירה המומלצת. לוחצים על סיום.
- פרספקטיבה IDE של Simplicity IDE נפתחת עם תצורות הפרויקט הפתוחות בכרטיסייה OVERVIEW.
הפרויקט מוגדר בכרטיסייה רכיבי תוכנה על ידי התקנה והסרת רכיבים, והגדרת רכיבים מותקנים. רכיבים מותקנים נבדקים. לוחצים על רכיבים מותקנים כדי לראות רשימה מסוננת של רכיבים שהותקנו על ידי האפליקציה לדוגמה. כל שינוי שתבצעו יישמר באופן אוטומטי, וקובצי הפרויקט ייווצרו באופן אוטומטי. ההתקדמות מוצגת בפינה השמאלית התחתונה של נקודת המבט של פשטות IDE.
לצורך ההדגמה הזו נשתמש בהגדרות ברירת המחדל של האפליקציות לדוגמה. חוזרים על השלבים שלמעלה כדי ליצור את הפרויקט ot-rcp
ללוח השני.
בנייה ופלאש של הפרויקטים
יש לך אפשרות ליצור פרויקטים עם ot-rcp
וגם ot-cli-ftd
.
- לאחר הגדרת הפרויקט, לוחצים על Control build (סמל הפטיש) בסרגל הכלים העליון. לחלופין, אפשר ללחוץ לחיצה ימנית על הפרויקט וללחוץ על build של הפרויקט.
- ההתקדמות מוצגת במסוף ובסרגל ההתקדמות בפינה השמאלית התחתונה. גם שגיאות או אזהרות הקשורות לפרויקט יופיעו גם בחלון הפלט הזה.
- התמונות הבינאריות נוצרות לאחר בניית פרויקט בהצלחה. ניתן להבליט את התמונה הבינארית מתצוגת Project Explorer. מאתרים את הקובץ .bin, .hex או .s37 בספריית המשנה של המהדר. לוחצים לחיצה ימנית על הקובץ ובוחרים באפשרות פלאש למכשיר. אם יש לך יותר ממכשיר אחד יש לבחור מכשירכדי להפעיל אותו, לוחצים על אישור. Programmer Programmer נפתח כשנתיב הקובץ מאוכלס. לוחצים על תוכנית.
5. סיכום הגדרת הקושחה
בשלב זה היה צריך ליצור, להדר ולהריץ את הקושחה המתאימה בלוחות הרדיו. לאחר העברת הפלאש של ot-rcp
ל-BRD4166A, יש לנתק אותו ממערכת המארח ולחבר את הלוח הזה ל-Raspber Pi.
לאחר השלמת הקטע הזה, ההגדרה של חומרת רשת השרשור תיראה כך.
6. הגדרת המסוף הסידורי למכשירים עם חיבור שטוח
כדי להפעיל את ממשק ה-Console, בתצוגה 'פשטות IDE', לוחצים לחיצה ימנית על מכשיר ה-J-Link בחלון 'תצוגת מכשירים' / ניפוי באגים. בוחרים באפשרות Play Console. כדי לקבל הודעה ב-Console, בוחרים סדר 1 ומקישים על Enter. בודקים את מצב הצומת של FTD.
לידיעתך, עדיין אין לנו מסוף עבור ot-rcp
. בשלב הבא נגדיר את ה-Rפטber Pi כנתב גבולות OT ותגדיר את המסוף עבור ot-rcp
.
7. הגדרת פטל פיו כנתב גבולות
ההמלצה של Silicon Labs לפרוס את מאגר העגינה של החברה עם ה-OTBR. הפעלת ה-OTBR במכל מאפשרת ליצור בקלות פריטים המיועדים לפריסה וליצירת אבטיפוס ובדיקות של פיתוח מהיר.
תמונות OTBR של Silicon Labs מאוחסנות ב-siliconlabsinc DockerHub, עם תגים. כל תג תואם לגרסת GSDK:
https://hub.docker.com/r/siliconlabsinc/openthread-limit-router/tags
יש להשתמש בקונטיינרים של אביזר עגינה עם פקדי RCP שנוצרו באמצעות Simplicity Studio 5 עבור גרסה נתונה. הקפידו להתאים את הגרסה של תג מאגר לגרסה של GSDK שאתם בוחנים. לדוגמה, אם גרסת ה-GDSK הייתה Gecko SDK Suite v4.0.1 (140)
בזמן שבחרת ב-ot-rcp
מהחלון Example Project Project, השתמש בתמונה siliconlabsinc/openthread-border-router:gsdk-4.0.1
.
הגדרה של פטל פיי
- בכרטיס ה-SD, חשוב להקפיד להבליט את התמונה של Raspbian Lite OS של מתיחה או קמפיין מסוג Rbsbian Lite OS במחשב.
- אפשר להשתמש ב-SSH ל-Raspber Pi או לעבוד ישירות עם Raspbian Desktop. פותחים מסוף.
- חשוב לעדכן את המאגרים ואת מנהל החבילות המקומיות (apt-get update וapt-get Upgrade לפני ההתקנה של Docker).
התקנה של תמונת עגינה
- מתקינים את Docker עם הפקודה הבאה ב-RPi.
curl -sSL https://get.docker.com | sh
- בסיום התהליך, אפשר לשנות את הגדרות המשתמש ב-Docker כך שלא תידרש sudo לפני כל פקודה. נדרשת הפעלה מחדש.
sudo usermod -aG docker $USER
- הוצא את הפקודות הבאות כדי להתקין את הפריטים המכילים. הערה: ניתן להפעיל רק מאגר אחד של נתב גבולות בו-זמנית עם ה-RCP. כמו כן, חשוב לוודא שהגרסה של Simplicity Studio GSDK תואמת לתמונת העיגון הנכונה. למשל:
gsdk-4.0.1
:docker pull siliconlabsinc/openthread-border-router:gsdk-4.0.1
הגדרה והפעלה של אביזר העגינה
- עליך להגדיר את יציאת ה-TTY שברצונך להשתמש בה ב-OTBR כדי לחבר את ה-RCP בעת ההפעלה. מחפשים את יציאת ה-TTY של מכשיר ה-RCP. הדרך הקלה ביותר לעשות זאת היא לחפש רשומה של
/tty/dev
... אחרי שה-RCP מחובר. הוא צריך להיות בדרך כלל/dev/ttyUSB0
או/dev/ttyACM0
. - מריצים את התקנת 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
נשארת במיקום קבוע עד שמאגר העגינה נסגר כראוי (או יוסר). - יציאה 8080 מציינת את היציאה של שרת האינטרנט המארח את דף האינטרנט לניהול נתב גבולות.
?uart-baudrate=460800
נדרש באפשרויות של כתובת ה-URL של רדיו כדי לעקוף בעיות של פיצול / הרכבה מחדש בפרוטוקול UART, עם פעולות יקרות כמו DTLS עם חבילות IPv6 ארוכות.
אינטראקציה עם צומת ה-RCP
לאחר שאביזר העגינה פועל, תוכלו לתקשר עם צומת ה-RCP דרך מעטפת אינטראקטיבית באמצעות הפקודה הזו. בודקים את מצב הצומת של RCP.
$ docker exec -ti otbr sh -c "sudo ot-ctl" > state disabled Done
אפשר לקבל רשימה של מזהי מאגר פעילים
$ docker ps -aq
ניתן לבדוק את החלון המכיל את מאגר ה-OTBR אביזר העגינה כדי להריץ פלט יומן של נתב גבולות או לעקוב אחר יומן המאגר באופן הבא:
$ docker logs [container-id] -f
אפשר גם לעצור את התמונה, להסיר אותה או להרוג אותה אם מאגר העגינה נטען כמו שצריך.
$ docker stop otbr
$ docker rm otbr
$ docker kill otbr
אופציונלי: כדי לצאת מהמעטפת, משתמשים ב-CNTL + C.
בשלב זה, צריכות להיות לך 3 קונסולות.
- שני קונסולות
ot-cli-ftd
ב-Simplicity Studio שהוגדרו כמכשירים בשרשור מלא. - מעטפת אינטראקטיבית אחת מסוג
ot-ctl
ב-Rפטber Pi, המוגדרת כנתב גבולות.
עכשיו אנחנו מוכנים ליצור רשת שרשור.
8. יצירת רשת שרשור
הגדרת RCP
כדי ליצור את הרשת, אנחנו מתחילים עם מעטפת ot-ctl
ב-OTBR, המשמש לתקשורת עם צומת ה-RCP. מזינים את הפקודות הבאות לפי הסדר:
אינדקס | Command | תיאור הפקודה | תשובה צפויה | ||
1 |
| יצירת תצורת רשת חדשה. | סיום | ||
2 |
| מתחייבת מערך נתונים חדש למערך הנתונים התפעולי הפעיל. | סיום | ||
3 |
| הפעלת ממשק פרוטוקול Thread. | סיום | ||
4 |
| הפעלה וצירוף של פרוטוקול Thread. | סיום | ||
ממתינים 10 שניות עד שממשק השרשור יסתיים. | |||||
5 |
| בודקים את מצב המכשיר. הוא צריך להיות המנהיג. | המוביל/ה | ||
6 |
| הצגת תצורת הרשת. | חותמת זמן פעילה: 1 |
אנחנו נשתמש במספר הערוץ ובמפתח הרשת ב-ot-cli-ftd
כדי להצטרף לשני מזהי ה-FTD לרשת השרשור הזו.
הגדרה והוספה של FTD לרשת השרשורים שלנו (שיטת תדר)
בשיטה מחוץ למסגרת, אנחנו יודעים את כל פרטי האבטחה ומוסיפים את הצומת באופן ידני. במסופים של Simplycity, מוסיפים את שתי ה-FTDs לרשת שלנו באמצעות הפקודות הבאות, לפי הסדר שמוצג.
אינדקס | Command | תיאור הפקודה | תשובה צפויה | ||
1 |
| מגדירים את הערוץ שנעשה בו שימוש ב-OTBR. | סיום | ||
2 |
| כדי לחבר מכשיר לרשת שרשור, נדרש רק מפתח הרשת. | סיום | ||
3 |
| מתחייבת מערך נתונים חדש למערך הנתונים התפעולי הפעיל. | סיום | ||
4 |
| הפעלת ממשק פרוטוקול Thread. | סיום | ||
5 |
| הפעלה וצירוף של פרוטוקול Thread. | סיום | ||
ממתינים 20 שניות בזמן שהמכשיר מצטרף ומגדיר את עצמו. | |||||
6 |
| הצגת תצורת הרשת. | ילד |
תקשורת בין מכשירי Thread
נשתמש בפקודה 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)
בשתי ה-FTDs מבצעים פינג על סמך ה-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
בתגובה מצוין המטען הייעודי שהתקבל והתקשורת הושלמה. חוזרים על התהליך לפינג FTDs מה-OTBR.
9. מזל טוב
יצרת רשת שרשור!
הידעתם:
- איך יוצרים פרויקט OpenThread באמצעות Silicon Labs Simplicity Studio IDE.
- איך לבנות קבצים בינאריים של Openthread ו-CLI כדי להבהב אל לוחות הרדיו של Silicon Labs.
- איך להגדיר נתב פטל יותר מגרסה 3B ומעלה באמצעות נתב פתוח (OTBR) באמצעות אביזר עגינה.
- איך יוצרים רשת Thread ב-OTBR.
- הזמנת תדרים של מכשירים מחוץ לרשת בשרשור.
- איך מאמתים תקשורת בשרשור בין הצמתים באמצעות פקודת פינג.
קריאה נוספת
ב-openthread.io וב-GitHub תוכלו למצוא מגוון משאבים של Openthread, כולל:
- פלטפורמות נתמכות – כל הפלטפורמות שתומכות ב-OpenThread
- Build Openthread – פרטים נוספים על בנייה והגדרה של OpenThread
- Thread Primer — כולל את כל הקונספטים של שרשור שמוצגים ב-Codelab הזה
- Silicon Labs Openthread – מבוא ל-OpenThread, דיון על נתבי גבול והזמנות, ותרגול מעשי ליצירת רשת OpenThread.
- QSG170: מדריך למתחילים של Silicon Labs – כולל פירוט של תהליך תחילת העבודה לפיתוח Silicon Labs לשרשורים
- AN1256: שימוש ב-Silicon Labs RCP עם נתב ה-Openthread – הוראות להתקנה ולהתקנה של מארח נתבי הגבול עם פטל
10. הגדרת קושחה אופציונלית – הדגמות
ההדגמות הן תמונות קושחה מוכנות מראש שמוכנות להורדה למכשיר תואם. הדרך המהירה ביותר לגלות אם יש הדגמה זמינה לחלק שלכם ב-Simplicity Studio היא ללחוץ על החלק שלכם בתצוגה 'מתאמי ניפוי באגים' ולאחר מכן לנווט לכרטיסייה 'דוגמה של פרויקטים' ו'הדגמה'; מנקודת המבט של מרכז האפליקציות. השבתת המסנן 'פרויקטים לדוגמה' וסימון התיבה 'שרשור שרשור' בקטע 'סוג טכנולוגיה'.
תמונות של אפליקציית הדגמה, שנרכשו מראש, שסופקו עם ה-SDK של OpenThread, תואמות ללוחות הבאים:
- BRD4161a
- BRD4166a
- BRD4168a
- BRD4180a
- BRD4304a
ניתן לעדכן את הרשימה הזו בגרסאות SDK הבאות שיכללו לוחות רדיו נוספים. רשימה מלאה של החלקים הנתמכים זמינה בקטע 'נתוני גרסה של SDK של Silicon Labs', בקטע 'מסמכי תיעוד'.
עליך להבליט את ההדגמות הבאות בלוחות הרלוונטיים. כדי להפעיל את הפלאש, בוחרים את הלוח בקטע 'מתאמי ניפוי באגים' מימין ולוחצים על 'הפעלה' כדי לראות את האפליקציות לדוגמה. התקדמות התהליך תציג את חלון הפלאש.
- BRD4166A: ot-rcp — המכשיר הזה יפעל כמעבד רדיו רדיו לנתב OT. נשתמש במכשיר הזה כדי ליצור רשת חוטים וכדי להצטרף לשני המכשירים האחרים ברשת שרשור. המכשיר הזה, שמשמש כנתב גבול, משמש גם כשער הכניסה של המכשירים ברשת שרשור.
- שני BRD4168A: ot-cli-ftd — שני המכשירים האלה יפעלו כמכשירי שרשור מלא. הם יצטרפו לרשת השרשורים שנוצרו על ידי ה-OTBR.