التحقق من المنفذ

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

من الضروري إجراء عملية التحقق الأساسية للتحقق من منفذ ناجح لـ OpenThread إلى مثال نظام أساسي جديد للأجهزة.

تجميع للنظام الأساسي المستهدف

يمكنك عرض إصدار ناجح من خلال تجميع مثال على تطبيق OpenThread لالنظام الأساسي المستهدف.

./script/build efr32mg12 -DBOARD=brd4161a

التفاعل مع سطر الأوامر (CLI)

يمكنك إظهار إمكانية تنفيذ OpenThread وإمكانيات UART الناجحة من خلال التفاعل مع سطر الأوامر (CLI).

افتح نافذة طرفية على /dev/ttyACM0 (إعدادات المنفذ التسلسلي: 115200 8-N-1). اكتب help للحصول على قائمة بالأوامر.

help
help
autostart
bufferinfo
...
version
whitelist

إنشاء شبكة Thread

توضيح موقّتات البروتوكول الناجحة من خلال إنشاء شبكة Thread والتأكّد من أن العُقدة قد انتقلت إلى حالة القائد.

dataset init new
Done
dataset
Active Timestamp: 1
Channel: 13
Channel Mask: 07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done
dataset commit active
Done
ifconfig up
Done
thread start
Done

انتظر بضع ثوانٍ...

state
leader
Done

إرفاق عقدة ثانية

توضيح الاتصال اللاسلكي الناجح من خلال إرفاق عقدة ثانية بشبكة Thread المكوّنة حديثًا، باستخدام مفتاح شبكة Thread ومعرّف PAN نفسهما من العقدة الأولى:

dataset networkkey dfd34f0f05cad978ec4e32b0413038ff
Done
dataset panid 0x8f28
Done
dataset commit active
Done
routerselectionjitter 1
Done
ifconfig up
Done
thread start
Done

انتظر بضع ثوانٍ...

state
router
Done

فحص الاتصال بين الأجهزة

يمكنك توضيح عملية ربط مسار البيانات الناجحة عن طريق إرسال/استلام رسائل طلب/استجابة ICMPv6 Echo.

إدراج جميع عناوين IPv6 الخاصة بالقائد:

ipaddr
fdde:ad00:beef:0:0:ff:fe00:fc00
fdde:ad00:beef:0:0:ff:fe00:800
fdde:ad00:beef:0:5b:3bcd:deff:7786
fe80:0:0:0:6447:6e10:cf7:ee29
Done

إرسال أداة فحص اتصال ICMPv6 من جهاز التوجيه إلى عنوان IPv6 لمعرّف الشبكة المحلية EID لـ الرواد:

ping fdde:ad00:beef:0:5b:3bcd:deff:7786
16 bytes from fdde:ad00:beef:0:5b:3bcd:deff:7786: icmp_seq=1 hlim=64 time=24ms

إعادة ضبط جهاز والتحقق من إعادة إرفاقه

عرض وظائف غير متغيرة من خلال إعادة ضبط الجهاز والتحقّق من إعادة توصيله بالشبكة نفسها بدون تدخل المستخدم

بدء شبكة Thread:

dataset init new
Done
dataset
Active Timestamp: 1
Channel: 13
Channel Mask: 07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done
dataset commit active
Done
ifconfig up
Done
thread start
Done

انتظر بضع ثوانٍ وتحقق من أنه تم تخزين مجموعة البيانات النشطة في وحدة تخزين غير متغيرة:

dataset active
Active Timestamp: 1
Channel: 13
Channel Mask: 07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done

إعادة ضبط الجهاز:

reset
ifconfig up
Done
thread start
Done

انتظر بضع ثوانٍ وتحقق من إعادة توصيل الجهاز بالشبكة بنجاح:

panid
0x8f28
Done
state
router
Done

التحقق من إنشاء الأرقام عشوائيًا

يمكنك عرض إنشاء أرقام عشوائيًا من خلال تنفيذ الأمر factoryreset وإثبات ملكية عنوان موسّع عشوائي جديد.

extaddr
a660421703f3fdc3
Done
factoryreset

انتظر بضع ثوانٍ...

extaddr
9a8ed90715a5f7b6
Done