การตั้งค่าชุดทดสอบเราเตอร์เส้นขอบ

การตั้งค่าประสิทธิภาพการทดสอบชุดข้อความของ 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) ให้เปิดใช้พอร์ตอนุกรมและเปลือกการเข้าสู่ระบบ

  1. ป้อนเมนูการกําหนดค่า
    sudo raspi-config
  2. ในเมนูการกําหนดค่า ให้เลือกตัวเลือกการแลกเปลี่ยน 5 รายการ
  3. ในเมนูตัวเลือกการเชื่อมต่อ ให้เลือกเปิดใช้/ปิดใช้อนุกรม P6
  4. รีสตาร์ท RPi3B

ในเครื่อง Windows ที่ใช้ Test Harness

การเชื่อมต่อ OTBR FT232
  1. ดาวน์โหลดและติดตั้งไดรเวอร์ FT232
  2. เสียบอะแดปเตอร์ USB FT232 กับ UART เข้ากับช่อง USB ในเครื่อง Windows
  3. ตั้งค่าจัมพ์แรงดันไฟฟ้าบน FT232 เป็น 3.3V
  4. เชื่อมต่อ FT232 กับ RPi3B โดยใช้หมุดและเส้น Dupont ต่อไปนี้
    ปักหมุด RPi3B FT232 ปักหมุด สาย Dupont
    ปักหมุด 6 มาตรฐาน ขาว
    ปักหมุด 8 RXD เหลือง
    ปักหมุด 10 แบบ TXD แดง
  5. เมื่อเชื่อมต่อแล้ว ให้รีสตาร์ทเครื่อง Windows
  6. ค้นหาตัวระบุฮาร์ดแวร์พอร์ตอนุกรมของอุปกรณ์โดยใช้โมดูล Python pySerial
    1. ติดตั้ง pySerial ในเครื่อง Windows
    2. ใช้ Python ในบรรทัดคําสั่งของ Windows เพื่อแจกแจงตัวระบุฮาร์ดแวร์ทั้งหมด (VID และ PID) สําหรับอุปกรณ์ที่เชื่อมต่อกับเครื่อง ในเอาต์พุตนี้ ระบบจะเชื่อมต่ออุปกรณ์ NCP 1 เครื่อง โดยมีตัวระบุ VID_0403+PID_6001
      python -m serial.tools.list_ports -v
      COM10
          desc: USB Serial Port (COM10)
          hwid: FTDIBUS\VID_0403+PID_6001+AL01WOSZA\0000
    3. หากรู้จักพอร์ต 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']
  7. อัปเดตรายการอุปกรณ์ Golden ต่อไปนี้
    1. เปิด C:\GRL\Thread1.1\Config\Configuration.ini
    2. เพิ่มการจัดกลุ่ม 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’]}

เมื่อกําหนดค่าทั้งหมดเรียบร้อยแล้ว

  1. เริ่มใช้การทดสอบประสิทธิภาพ GRL
  2. ในหน้ากําหนดค่าเตียงทดสอบ ตอนนี้อุปกรณ์/พอร์ตจะปรากฏเป็นอุปกรณ์ OT NCP

    หาก DUT ไม่แสดงในส่วนเตียงทดสอบหลังจากเริ่มใช้งานการทดสอบเริ่มต้น ให้เพิ่มด้วยตนเองโดยลากอุปกรณ์ OpenThread WpanCtl: wpantund+NCP จากส่วนฮาร์ดแวร์ที่รองรับลงในส่วนการทดสอบเตียง หลังจากลากแล้ว

    1. ตรวจสอบว่าได้ป้อนค่าหมายเลขซีเรียล (พอร์ต COM) และความเร็ว (อัตราการละเมิดนโยบาย) ที่ถูกต้องแล้ว
    2. คลิกปุ่มลูกศรใต้ช่องความเร็วเพื่อสร้างการเชื่อมต่อ การเชื่อมต่อระหว่างอุปกรณ์ทดสอบกับอุปกรณ์ OT NCP
  3. เลือกช่องทําเครื่องหมายเปิดใช้การเลือกอุปกรณ์ DUT อัตโนมัติด้านล่างรายการฮาร์ดแวร์ที่รองรับ

  4. เลือกปุ่มตัวเลือกตั้งค่าเป็น DUT ใต้อุปกรณ์/พอร์ตเป้าหมายเพื่อตั้งค่าอุปกรณ์ OT NCP เป็น DUT

SSH การรับรอง OTBR

การเชื่อมต่อ SSH

เปิดใช้ SSH ใน RPi3B

  1. เปิดใช้บริการ SSH เมื่อเปิดเครื่อง:
    sudo systemctl enable ssh
  2. เริ่มบริการ SSH:
    sudo systemctl start ssh

หากต้องการเปิดใช้งาน SSH บน RPi3B แบบไม่มีส่วนหัว โปรดดูขั้นตอนที่ 3 ของเอกสารประกอบของ Raspberry Pi SSH

ในเครื่อง Windows ที่ใช้ Test Harness

  1. ติดตั้ง Paramiko สําหรับสภาพแวดล้อม Python ของ GRL:
    cd C:\GRL\Python2.7
    python -m pip install --upgrade pip
    python -m pip install paramiko
  2. เริ่มใช้การทดสอบประสิทธิภาพ GRL
  3. ในหน้ากําหนดค่า Test Test ให้ลากอุปกรณ์ OpenThread WpanCtl SSH: wpantund+NCP จากส่วนฮาร์ดแวร์ที่รองรับลงในส่วนเตียงทดสอบ
  4. ป้อนข้อมูล IP adder ด้วย 192.168.1.100 และ PORT ด้วย 22 สําหรับอุปกรณ์
  5. คลิกปุ่มลูกศรใต้ช่องพอร์ตเพื่อสร้างการเชื่อมต่อ SSH ระหว่างเครื่องมือทดสอบกับอุปกรณ์ OT NCP
SSH การรับรอง OTBR

การตั้งค่าการทํางานอัตโนมัติ

อ่านขั้นตอนการติดตั้งและกําหนดค่าจากคู่มือการตั้งค่าระบบอัตโนมัติเพื่อรับรองวิธีตั้งค่าเครื่องมือควบคุมการทํางานอัตโนมัติ

เรียกใช้กรอบการทดสอบ

ดูวิธีเรียกใช้กรอบการทดสอบการรับรองใน OTBR DUT ได้ที่กรอบการทดสอบการรับรอง

การแก้ปัญหา

รีบูตอุปกรณ์

หากคุณจําเป็นต้องรีบูต RPi3B ให้ปิดซอฟต์แวร์ Test Harness แล้วรออย่างน้อย 20 วินาทีหลังจากที่รีบูตเสร็จ จึงจะเริ่มการทดสอบประสิทธิภาพได้

การใช้ประโยชน์จากการทดสอบไม่พบเราเตอร์เส้นขอบ

เมื่อใช้การเชื่อมต่อพอร์ตอนุกรม โปรแกรมทดสอบอาจไม่พบเราเตอร์ Border Router หากเป็นเช่นนี้

  1. ตรวจสอบว่าการเข้าสู่ระบบ Shell เหมาะกับพอร์ตอนุกรมหรือไม่ โดยใช้เครื่องมืออย่าง PuTTY
    1. ใช้พอร์ต COM สําหรับอุปกรณ์ FT232 และความเร็ว (อัตราการฉ้อโกง) 115200
    2. หากเข้าสู่ระบบไม่สําเร็จ ให้รีบูตอุปกรณ์ทั้งหมดแล้วลองอีกครั้ง
  2. ใน RPi3B ให้ตรวจสอบสถานะ wpantund ดังนี้
    sudo service wpantund status
    หากสถานะเป็น "ผิดปกติ" ให้ทําดังนี้
    1. ตรวจสอบว่าติดตั้งกระดาน nRF52840 NCP ไว้
      ls /dev/tty*
      /dev/ttyACM0
    2. ตรวจสอบว่าพอร์ตนี้ตรงกับการกําหนดค่าของ wpantund ดังนี้
      // default value in '/etc/wpantund.conf'
      Config:NCP:SocketPath "/dev/ttyACM0"
    3. รีสตาร์ท wpantund:
      sudo service wpantund restart