การตั้งค่าประสิทธิภาพการทดสอบชุดข้อความของ GRL และเครื่องมือการทํางานอัตโนมัติของ OpenThread Harness เพื่อใช้ร่วมกับ OpenOpen Border Router (OTBR) Device ภายใต้ Test (DUT) จะเหมือนกับคู่มือการตั้งค่าระบบอัตโนมัติที่ผ่านการรับรอง ใช้คําแนะนําร่วมกับการเปลี่ยนแปลง ที่ระบุรายละเอียดที่นี่
สําหรับการออกแบบ NCP เช่น OTBR OpenThread จะให้OpenThread_WpanCtl.py
ตัวอย่าง Thread Host Control Interface
(THCI)
ที่ช่วยให้การทดสอบใช้ประโยชน์จากการควบคุม NCP ได้ อุปกรณ์ NCP
มีโหมดการเชื่อมต่อ 2 โหมด ดังนี้
- การใช้การเชื่อมต่อพอร์ตอนุกรม (แนะนําสําหรับการใช้ฟีเจอร์การค้นพบอัตโนมัติของ Test Harness)
- การใช้การเชื่อมต่อ SSH
หากไม่ได้ระบุไว้เป็นอย่างอื่น ขั้นตอนการติดตั้งและการกําหนดค่าทั้งหมดด้านล่างนี้จะเกิดขึ้นในเครื่อง Windows ที่ใช้ซอฟต์แวร์ GRL Test Harness ซึ่งควรติดตั้งก่อนดําเนินการต่อ
คัดลอกไฟล์สนับสนุน THCI
อย่าลืมใช้ THCI เวอร์ชันล่าสุดในเครื่อง Windows โคลนที่เก็บ OpenThread หรือหากมีอยู่แล้ว ให้เปลี่ยนเป็นสาขา main
ดังนี้
git clone https://github.com/openthread/openthread
cd openthread
git checkout main
คัดลอกไฟล์ต่อไปนี้จาก
/tools/harness-thci
ในที่เก็บ OpenThread ที่โคลนไปยังไดเรกทอรีที่ระบุบนเครื่อง Windows
ไฟล์ต้นฉบับ | คัดลอกไปยังไดเรกทอรี |
---|---|
deviceInputFields.xml |
C:\GRL\Thread1.1\Web\data\ |
OpenThread_WpanCtl.py |
C:\GRL\Thread1.1\Thread_Harness\THCI\ |
OpenThread_WpanCtl.png |
C:\GRL\Thread1.1\Web\images\ |
ตั้งค่าประเภทการเชื่อมต่อ
สําหรับการควบคุมการทดสอบการทดสอบของ NCP ให้ตั้งค่าการเชื่อมต่อพอร์ตอนุกรมหรือการเชื่อมต่อ SSH
การเชื่อมต่อพอร์ตอนุกรม (แนะนํา)
ใน Raspberry Pi 3B (RPi3B) ให้เปิดใช้พอร์ตอนุกรมและเปลือกการเข้าสู่ระบบ
- ป้อนเมนูการกําหนดค่า
sudo raspi-config
- ในเมนูการกําหนดค่า ให้เลือกตัวเลือกการแลกเปลี่ยน 5 รายการ
- ในเมนูตัวเลือกการเชื่อมต่อ ให้เลือกเปิดใช้/ปิดใช้อนุกรม P6
- รีสตาร์ท RPi3B
ในเครื่อง Windows ที่ใช้ Test Harness
- ดาวน์โหลดและติดตั้งไดรเวอร์ FT232
- เสียบอะแดปเตอร์ USB FT232 กับ UART เข้ากับช่อง USB ในเครื่อง Windows
- ตั้งค่าจัมพ์แรงดันไฟฟ้าบน FT232 เป็น 3.3V
- เชื่อมต่อ FT232 กับ RPi3B โดยใช้หมุดและเส้น Dupont ต่อไปนี้
ปักหมุด RPi3B FT232 ปักหมุด สาย Dupont ปักหมุด 6 มาตรฐาน ขาว ปักหมุด 8 RXD เหลือง ปักหมุด 10 แบบ TXD แดง - เมื่อเชื่อมต่อแล้ว ให้รีสตาร์ทเครื่อง Windows
- ค้นหาตัวระบุฮาร์ดแวร์พอร์ตอนุกรมของอุปกรณ์โดยใช้โมดูล Python pySerial
- ติดตั้ง pySerial ในเครื่อง Windows
- ใช้ Python ในบรรทัดคําสั่งของ Windows เพื่อแจกแจงตัวระบุฮาร์ดแวร์ทั้งหมด (VID และ PID) สําหรับอุปกรณ์ที่เชื่อมต่อกับเครื่อง ในเอาต์พุตนี้ ระบบจะเชื่อมต่ออุปกรณ์ NCP 1 เครื่อง โดยมีตัวระบุ
VID_0403+PID_6001
python -m serial.tools.list_ports -v
COM10desc: USB Serial Port (COM10)
hwid: FTDIBUS\VID_0403+PID_6001+AL01WOSZA\0000
- หากรู้จักพอร์ต COM อยู่แล้ว คุณก็ใช้คําสั่งอื่นได้ เช่น หากพอร์ต COM คือ
COM10
python -c "import serial.tools.list_ports;print [ports[2] for ports in serial.tools.list_ports.comports() if ports[0] == 'COM10']"
['FTDIBUS\VID_0403+PID_6001+AL01WP6MA\0000']
- อัปเดตรายการอุปกรณ์ Golden ต่อไปนี้
- เปิด
C:\GRL\Thread1.1\Config\Configuration.ini
- เพิ่มการจัดกลุ่ม OpenThread_WpanCtl ลงในอาร์เรย์
GoldenDeviceHardwareIds
ที่มี VID และ PID ของอุปกรณ์ ดังนี้GoldenDeviceHardwareIds = {
'NXP': ['VID:PID=1FC9:0300','VID:PID=15A2:0300','VID:PID=1366:1015'],
'SiLabs': 'VID:PID=10C4:8A5E',
'ARM': 'VID:PID=0D28:0204',
'OpenThread':['VID:PID=10C4:EA60', 'VID:PID=1915:CAFE'],
'OpenThread_WpanCtl':['VID_0403+PID_6001’]}
- เปิด
เมื่อกําหนดค่าทั้งหมดเรียบร้อยแล้ว
- เริ่มใช้การทดสอบประสิทธิภาพ GRL
ในหน้ากําหนดค่าเตียงทดสอบ ตอนนี้อุปกรณ์/พอร์ตจะปรากฏเป็นอุปกรณ์ OT NCP
หาก DUT ไม่แสดงในส่วนเตียงทดสอบหลังจากเริ่มใช้งานการทดสอบเริ่มต้น ให้เพิ่มด้วยตนเองโดยลากอุปกรณ์ OpenThread WpanCtl: wpantund+NCP จากส่วนฮาร์ดแวร์ที่รองรับลงในส่วนการทดสอบเตียง หลังจากลากแล้ว
- ตรวจสอบว่าได้ป้อนค่าหมายเลขซีเรียล (พอร์ต COM) และความเร็ว (อัตราการละเมิดนโยบาย) ที่ถูกต้องแล้ว
- คลิกปุ่มลูกศรใต้ช่องความเร็วเพื่อสร้างการเชื่อมต่อ การเชื่อมต่อระหว่างอุปกรณ์ทดสอบกับอุปกรณ์ OT NCP
เลือกช่องทําเครื่องหมายเปิดใช้การเลือกอุปกรณ์ DUT อัตโนมัติด้านล่างรายการฮาร์ดแวร์ที่รองรับ
เลือกปุ่มตัวเลือกตั้งค่าเป็น DUT ใต้อุปกรณ์/พอร์ตเป้าหมายเพื่อตั้งค่าอุปกรณ์ OT NCP เป็น DUT
การเชื่อมต่อ SSH
เปิดใช้ SSH ใน RPi3B
- เปิดใช้บริการ SSH เมื่อเปิดเครื่อง:
sudo systemctl enable ssh
- เริ่มบริการ SSH:
sudo systemctl start ssh
หากต้องการเปิดใช้งาน SSH บน RPi3B แบบไม่มีส่วนหัว โปรดดูขั้นตอนที่ 3 ของเอกสารประกอบของ Raspberry Pi SSH
ในเครื่อง Windows ที่ใช้ Test Harness
- ติดตั้ง Paramiko สําหรับสภาพแวดล้อม Python ของ GRL:
cd C:\GRL\Python2.7
python -m pip install --upgrade pip
python -m pip install paramiko
- เริ่มใช้การทดสอบประสิทธิภาพ GRL
- ในหน้ากําหนดค่า Test Test ให้ลากอุปกรณ์ OpenThread WpanCtl SSH: wpantund+NCP จากส่วนฮาร์ดแวร์ที่รองรับลงในส่วนเตียงทดสอบ
- ป้อนข้อมูล IP adder ด้วย 192.168.1.100 และ PORT ด้วย 22 สําหรับอุปกรณ์
- คลิกปุ่มลูกศรใต้ช่องพอร์ตเพื่อสร้างการเชื่อมต่อ SSH ระหว่างเครื่องมือทดสอบกับอุปกรณ์ OT NCP
การตั้งค่าการทํางานอัตโนมัติ
อ่านขั้นตอนการติดตั้งและกําหนดค่าจากคู่มือการตั้งค่าระบบอัตโนมัติเพื่อรับรองวิธีตั้งค่าเครื่องมือควบคุมการทํางานอัตโนมัติ
เรียกใช้กรอบการทดสอบ
ดูวิธีเรียกใช้กรอบการทดสอบการรับรองใน OTBR DUT ได้ที่กรอบการทดสอบการรับรอง
การแก้ปัญหา
รีบูตอุปกรณ์
หากคุณจําเป็นต้องรีบูต RPi3B ให้ปิดซอฟต์แวร์ Test Harness แล้วรออย่างน้อย 20 วินาทีหลังจากที่รีบูตเสร็จ จึงจะเริ่มการทดสอบประสิทธิภาพได้
การใช้ประโยชน์จากการทดสอบไม่พบเราเตอร์เส้นขอบ
เมื่อใช้การเชื่อมต่อพอร์ตอนุกรม โปรแกรมทดสอบอาจไม่พบเราเตอร์ Border Router หากเป็นเช่นนี้
- ตรวจสอบว่าการเข้าสู่ระบบ Shell เหมาะกับพอร์ตอนุกรมหรือไม่ โดยใช้เครื่องมืออย่าง PuTTY
- ใช้พอร์ต COM สําหรับอุปกรณ์ FT232 และความเร็ว (อัตราการฉ้อโกง) 115200
- หากเข้าสู่ระบบไม่สําเร็จ ให้รีบูตอุปกรณ์ทั้งหมดแล้วลองอีกครั้ง
- ใน RPi3B ให้ตรวจสอบสถานะ
wpantund
ดังนี้
หากสถานะเป็น "ผิดปกติ" ให้ทําดังนี้sudo service wpantund status
- ตรวจสอบว่าติดตั้งกระดาน nRF52840 NCP ไว้
ls /dev/tty*
/dev/ttyACM0 - ตรวจสอบว่าพอร์ตนี้ตรงกับการกําหนดค่าของ
wpantund
ดังนี้// default value in '/etc/wpantund.conf' Config:NCP:SocketPath "/dev/ttyACM0"
- รีสตาร์ท
wpantund
:sudo service wpantund restart
- ตรวจสอบว่าติดตั้งกระดาน nRF52840 NCP ไว้