הגדרה של רתמת הבדיקה של שרשורי ה-GRL והכלי לאוטומציה של רתמת ה-OpenThread לשימוש במכשיר של Openthread Border Router (OTBR) זהה למדריך להגדרת אוטומציה של אישורים. השתמשו במדריך הזה יחד עם השינויים המפורטים כאן.
לעיצוב NCP כמו OTBR, ב-OpenThread יש OpenThread_WpanCtl.py
דוגמה לממשק בקרה למארחים בשרשור (THCI) שמאפשר לרתמת הבדיקה לשלוט ב-NCP. יש שני מצבי חיבור למכשיר NCP:
- שימוש בחיבור יציאה טורית (מומלץ לשימוש בתכונת הגילוי האוטומטי של רתימת הבדיקה)
- שימוש בחיבור SSH
אלא אם צוין אחרת, כל שלבי ההתקנה וההגדרות בהמשך מתרחשים במחשב Windows שבו מותקנת תוכנת GRL Test Harm שיש להתקין לפני המשך התהליך.
העתקה של קובצי התמיכה של 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 של NCP, צריך להגדיר חיבור יציאה טורית או חיבור SSH.
חיבור יציאה טורית (מומלץ)
ב-Raspney Pi 3B (RPi3B), מפעילים את היציאה הטורית ואת מעטפת ההתחברות:
- פותחים את תפריט ההגדרות:
sudo raspi-config
- בתפריט ההגדרות, בוחרים באפשרות 5 אפשרויות ממשק.
- בתפריט 'אפשרויות ממשק', בוחרים באפשרות P6 Serial Enable/Disabled.
- מפעילים מחדש את RPi3B.
במחשב Windows שבו מופעלת התכונה 'מסגרת בדיקה':
- מורידים ומתקינים את מנהל ההתקנים של FT232.
- מחברים את המתאם FT232 USB ל-UART לחריץ USB במחשב של Windows.
- מכווננים את מתח המתח ב-FT232 ל-3.3V.
- יש לחבר את ה-FT232 ל-RPi3B באמצעות הסיכות והקווים הבאים של Dupont:
פין RPi3B FT232 פינים דופון קו קוד אימות 6 GND לבן הצמדה8 ימני צהוב הצמדה10 טקסס אדום - לאחר ההתחברות, מפעילים מחדש את המחשב עם Windows.
- מאתרים את מזהה החומרה של יציאה טורית במכשיר באמצעות המודול pySerial של Python:
- להתקין pySerial במחשב Windows.
- תוכלו להשתמש ב-Python בשורת הפקודה של Windows כדי למנות את כל מזהי החומרה (VID ו-PID) למכשירים שמחוברים למכונה. בפלט הזה מחובר מכשיר NCP אחד, עם המזהה
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']
- מעדכנים את רשימת הזהב במכשיר:
- פתיחת
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 מהקטע Hardware Hardware, בקטע Hardware Bed. לאחר הגרירה:
- מוודאים שהערכים הנכונים של השורה הטורית (יציאת COM) ומהירות (קצב שידור) מאוכלסים.
- לוחצים על לחצן החץ מתחת לשדה Speed כדי ליצור את החיבור הטורי בין 'מסגרת הבדיקה' למכשיר ה-OT NCP.
מסמנים את התיבה Enable Auto DUT Device Select (הפעלה אוטומטית של בחירת מכשירים אוטומטית) מתחת לרשימת המכשירים הנתמכים.
לוחצים על לחצן הבחירה Set as DUT (הגדרה כ-DUT) מתחת למכשיר היעד/יציאה, כדי להגדיר את ה-OTT במכשיר כ-DUT.
חיבור SSH
ב-RPi3B, מפעילים את ה-SSH:
- הפעלת שירות ה-SSH במהלך ההפעלה:
sudo systemctl enable ssh
- מפעילים את שירות ה-SSH:
sudo systemctl start ssh
כדי להפעיל SSH ב-RPi3B ללא GUI, עיינו בשלב 3 של מסמכי התיעוד ל-SSH ב-Raspney Pi.
במחשב Windows שבו מופעלת התכונה 'מסגרת בדיקה':
- מתקינים את Paramko בסביבת Python של GRL:
cd C:\GRL\Python2.7
python -m pip install --upgrade pip
python -m pip install paramiko
- התחלת רתימת הבדיקה של GRL.
- בדף Configure Test Bed, גוררים את המכשיר OpenThread WpanCtl SSH:wwtund+NCP מהקטע Hardware Hardware ועוברים לקטע Bed Bed.
- אכלוס את ה-IP של ה-IP ב-192.168.1.100 ואת ה-PORT ב-22 למכשיר.
- לוחצים על לחצן החץ מתחת לשדה PORT כדי ליצור חיבור SSH בין מסגרת הבדיקה למכשיר ה-OT NCP.
הגדרת אוטומציה
כדי לקבל הוראות להגדרת כלי האוטומציה של Harness, לחצו על Install ועל Configure במדריך ל'הגדרת אוטומציה של אישורים'.
הפעלת מקרי בדיקה
במאמר הרצת מקרי מבחן של אישורים מוסבר איך משתמשים ב-OTBR DUT.
פתרון בעיות
המכשיר מופעל מחדש
אם אתם צריכים להפעיל מחדש את ה-RPi3B, סגרו את תוכנת הבדיקה, והמתינו לפחות 20 שניות אחרי שההפעלה מחדש תסתיים כדי להפעיל שוב את הבדיקה.
רתמת הבדיקה נכשלה לגלות נתב גבולות
כשאתם משתמשים בחיבור יציאה טורית, ייתכן שמסגרת הבדיקה לא תאתר את נתב הגבולות. במקרה כזה:
- בודקים אם התחברות ל-Shell פועלת עבור היציאה הטורית באמצעות כלי כמו PuTTY.
- צריך להשתמש ביציאת COM עבור מכשיר FT232 ובמהירות (באוד) של 115200.
- אם ההתחברות נכשלה, יש להפעיל מחדש את כל המכשירים ולנסות שוב.
- ב-RPi3B, בודקים את הסטטוס של
wpantund
:
אם הסטטוס הוא 'חריג':sudo service wpantund status
- חשוב לוודא שלוח ה-NCPF52840 של NCP מותקן:
ls /dev/tty*
/dev/ttyACM0 - מוודאים שהיציאה הזו תואמת לתצורה של
wpantund
:// default value in '/etc/wpantund.conf' Config:NCP:SocketPath "/dev/ttyACM0"
- הפעלה מחדש של
wpantund
:sudo service wpantund restart
- חשוב לוודא שלוח ה-NCPF52840 של NCP מותקן: