من الضروري إجراء عملية التحقق الأساسية للتحقق من منفذ ناجح لـ 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
Donedataset
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 Donedataset commit active
Doneifconfig up
Donethread start
Done
انتظر بضع ثوانٍ...
state
leader
Done
إرفاق عقدة ثانية
توضيح الاتصال اللاسلكي الناجح من خلال إرفاق عقدة ثانية بشبكة Thread المكوّنة حديثًا، باستخدام مفتاح شبكة Thread ومعرّف PAN نفسهما من العقدة الأولى:
dataset networkkey dfd34f0f05cad978ec4e32b0413038ff
Donedataset panid 0x8f28
Donedataset commit active
Donerouterselectionjitter 1
Doneifconfig up
Donethread 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
Donedataset
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 Donedataset commit active
Doneifconfig up
Donethread 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
Donethread start
Done
انتظر بضع ثوانٍ وتحقق من إعادة توصيل الجهاز بالشبكة بنجاح:
panid
0x8f28 Donestate
router Done
التحقق من إنشاء الأرقام عشوائيًا
يمكنك عرض إنشاء أرقام عشوائيًا من خلال تنفيذ الأمر factoryreset
وإثبات ملكية عنوان موسّع عشوائي جديد.
extaddr
a660421703f3fdc3 Donefactoryreset
انتظر بضع ثوانٍ...
extaddr
9a8ed90715a5f7b6
Done