बॉर्डर राऊटर टेस्ट हॉर्नेस सेट अप

ओपन थ्रेड बॉर्डर राऊटर (OTBR) डिवाइस (टेस्ट के दौरान) (DUT) के साथ इस्तेमाल करने के लिए, GRL Thread टेस्ट हार्नेस और OpenThread हार्नेस ऑटोमेशन टूल, का सेट अप करें. यह टूल सर्टिफ़िकेशन ऑटोमेशन सेटअप गाइड जैसा ही है. यहां बताए गए बदलावों के साथ उस गाइड का इस्तेमाल करें.

OTBR जैसे NCP डिज़ाइन के लिए, OpenThread, OpenThread_WpanCtl.py उदाहरण थ्रेड होस्ट कंट्रोल इंटरफ़ेस (THCI) देता है. इसकी मदद से, टेस्ट हार्नेस को NCP कंट्रोल करने की अनुमति मिलती है. एनसीपी डिवाइस के लिए दो कनेक्शन मोड होते हैं:

  • सीरियल पोर्ट कनेक्शन का इस्तेमाल करना (टेस्ट हार्नेस की ऑटो डिस्कवरी सुविधा के इस्तेमाल के लिए सुझाया गया)
  • एसएसएच कनेक्शन का इस्तेमाल किया जा रहा है

जब तक अलग से न बताया जाए, तब तक नीचे दिए गए सभी इंस्टॉलेशन और कॉन्फ़िगरेशन चरण GRL परीक्षण हार्नेस सॉफ़्टवेयर को चलाने वाली Windows मशीन पर होते हैं, जो आगे बढ़ने से पहले इंस्टॉल होना चाहिए.

THCI की सहायता फ़ाइलें कॉपी करें

पक्का करें कि आपके पास Windows मशीन पर THCI का सबसे नया वर्शन हो. OpenThread डेटा रिपॉज़िटरी क्लोन करें या अगर आपके पास पहले से है, तो उसे main ब्रांच पर स्विच करें:

git clone https://github.com/openthread/openthread
cd openthread
git checkout main

क्लोक किए गए OpenThread डेटा स्टोर करने की जगह में, /tools/harness-thci से इन फ़ाइलों को 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\

कनेक्शन टाइप सेट अप करें

एनसीपी के टेस्ट हार्नेस कंट्रोल के लिए, सीरियल पोर्ट कनेक्शन या एसएसएच कनेक्शन की सुविधा सेट अप करें.

Raspबेरी Pi 3B (RPi3B) पर, सीरियल पोर्ट और लॉगिन शेल चालू करें:

  1. कॉन्फ़िगरेशन मेन्यू डालें:
    sudo raspi-config
  2. कॉन्फ़िगरेशन मेन्यू में, 5 इंटरफ़ेस के विकल्प चुनें.
  3. 'इंटरफ़ेसिंग विकल्प' मेन्यू में, P6 सीरियल को चालू/बंद करें चुनें.
  4. RPi3B को रीस्टार्ट करें.

Windows कंप्यूटर पर 'टेस्ट हार्नेस' चलाएं:

OTBR FT232 कनेक्शन
  1. FT232 ड्राइवर डाउनलोड और इंस्टॉल करें.
  2. FT232 USB को UART अडैप्टर को Windows मशीन के यूएसबी स्लॉट से जोड़ें.
  3. वोल्टेज जंपर को FT232 पर 3.3V पर सेट करें.
  4. नीचे दिए गए पिन और ड्यूपोंट लाइनों का इस्तेमाल करके, FT232 को RPi3B से कनेक्ट करें:
    RPi3B पिन FT232 पिन डुप्लीकेट लाइन
    पिन6 30 सफ़ेद
    पिन8 90 पीला
    पिन10 टीएक्सडी लाल
  5. कनेक्ट होने के बाद, Windows मशीन को रीस्टार्ट करें.
  6. Python pySerial मॉड्यूल का इस्तेमाल करके, डिवाइस के सीरियल पोर्ट हार्डवेयर आइडेंटिफ़ायर को ढूंढें:
    1. Windows मशीन पर pySerial इंस्टॉल करें.
    2. मशीन से कनेक्ट किए गए डिवाइसों के सभी हार्डवेयर आइडेंटिफ़ायर (वीआईडी और पीआईडी) तय करने के लिए, Windows कमांड लाइन पर Python का इस्तेमाल करें. इस आउटपुट में, एक NCP डिवाइस कनेक्ट होता है, जिसमें 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. गोल्डन डिवाइस की सूची अपडेट करें:
    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. जीआरएल टेस्ट हार्नेस शुरू करें.
  2. टेस्ट बेड कॉन्फ़िगर करें पेज पर, डिवाइस/पोर्ट अब OT NCP डिवाइस के तौर पर दिखता है.

    अगर टेस्ट हार्नेस शुरू होने के बाद, DUT को टेस्ट बेड सेक्शन में सूची में नहीं जोड़ा गया है, तो OpenThread WpanCtl: wpantund+NCP डिवाइस को काम करने वाले हार्डवेयर सेक्शन से टेस्ट बेड सेक्शन में खींचकर, मैन्युअल तरीके से जोड़ें. खींचकर छोड़ने के बाद:

    1. पक्का करें कि सीरियल लाइन (COM पोर्ट) और स्पीड (बॉड रेट) की वैल्यू भरी गई हों.
    2. टेस्ट हार्नेस और OT NCP डिवाइस के बीच सीरियल कनेक्शन बनाने के लिए, स्पीड फ़ील्ड के नीचे दिए गए तीर के निशान वाले बटन पर क्लिक करें.
  3. काम करने वाले हार्डवेयर सूची के नीचे, अपने-आप डीयूटी डिवाइस चुनने की सुविधा चालू करें चेकबॉक्स को चुनें.

  4. OT NCP डिवाइस को DUT के तौर पर सेट करने के लिए, टारगेट डिवाइस/पोर्ट के नीचे मौजूद DUT के रूप में सेट करें रेडियो बटन को चुनें.

OTBR सर्टिफ़िकेशन एसएसएच

एसएसएच कनेक्शन

RPi3B पर, एसएसएच चालू करें:

  1. बूट पर एसएसएच सेवा को चालू करें:
    sudo systemctl enable ssh
  2. एसएसएच सेवा शुरू करें:
    sudo systemctl start ssh

बिना ग्राफ़िक यूज़र इंटरफ़ेस वाले RPi3B पर एसएसएच की सुविधा चालू करने के लिए, Raspber Pi SSH दस्तावेज़ का तीसरा चरण देखें.

Windows कंप्यूटर पर 'टेस्ट हार्नेस' चलाएं:

  1. GRL के Python एनवायरमेंट के लिए, Paramiko इंस्टॉल करें:
    cd C:\GRL\Python2.7
    python -m pip install --upgrade pip
    python -m pip install paramiko
  2. जीआरएल टेस्ट हार्नेस शुरू करें.
  3. टेस्ट बेड कॉन्फ़िगर करें पेज पर, OpenThread WpanCtl SSH: wpantund+NCP डिवाइस को, काम करने वाले हार्डवेयर सेक्शन से टेस्ट बेड सेक्शन पर खींचें और छोड़ें.
  4. 192.168.1.100 वाले IP ऐडर और डिवाइस के लिए पोर्ट को 22 से पॉप्युलेट करें.
  5. टेस्ट हार्नेस और OT NCP डिवाइस के बीच SSH कनेक्शन बनाने के लिए, पोर्ट फ़ील्ड के नीचे मौजूद ऐरो बटन पर क्लिक करें.
OTBR सर्टिफ़िकेशन एसएसएच

ऑटोमेशन सेट अप करना

ऑटोमेशन टूल को सेट अप करने का तरीका जानने के लिए, सर्टिफ़िकेशन ऑटोमेशन सेट अप करने की गाइड में दिए गए तरीके इंस्टॉल करें और उन्हें कॉन्फ़िगर करें पर जाएं.

टेस्ट केस चलाएं

OTBR DUT पर सर्टिफ़िकेशन के टेस्ट केस चलाने का तरीका जानने के लिए, सर्टिफ़िकेशन टेस्ट केस चलाना देखें.

समस्या हल करना

डिवाइस फिर चालू हो रहा है

अगर आपको RPi3B को फिर से चालू करना है, तो टेस्ट हार्नेस सॉफ़्टवेयर को बंद करें और टेस्ट हार्नेस को फिर से शुरू करने के लिए, रीबूट होने के कम से कम 20 सेकंड तक इंतज़ार करें.

टेस्ट हार्नेस, बॉर्डर राऊटर नहीं खोज सका

सीरियल पोर्ट कनेक्शन का इस्तेमाल करते समय, हो सकता है कि टेस्ट हार्नेस बॉर्डर राऊटर का पता न लगा पाए. अगर ऐसा है, तो:

  1. देखें कि शेल में इस्तेमाल किए गए टूल की मदद से, शेल लॉगिन इन सीरियल पोर्ट के लिए काम करता है या नहीं.
    1. FT232 डिवाइस के लिए COM पोर्ट और 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