اعتبار پورت، اعتبار پورت

مشاهده منبع در 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 و تأیید اینکه گره به حالت Leader منتقل شده است نشان دهید.

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 Network Key و PAN ID از گره اول، ارتباط رادیویی موفقی را نشان دهید:

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 نشان دهید.

لیست تمام آدرس های IPv6 Leader:

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 Mesh-Local Leader ارسال کنید:

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