Việc thiết lập Khai thác luồng GRL và Công cụ tự động hoá khai thác OpenThread để sử dụng với OpenThread Border Router (OTBR) Device Under Test (DUT) cũng giống như Hướng dẫn thiết lập tự động hoá chứng nhận. Hãy sử dụng hướng dẫn đó cùng với các thay đổi được nêu chi tiết tại đây.
Đối với một thiết kế NCP như OTBR, OpenThread cung cấp một OpenThread_WpanCtl.py
ví dụ về Giao diện kiểm soát máy chủ luồng (THCI) cho phép Kiểm thử (Khai thác) kiểm soát NCP. Có hai chế độ kết nối dành cho thiết bị NCP:
- Sử dụng kết nối cổng nối tiếp (khuyến nghị sử dụng tính năng tự động phát hiện của Test Harness)
- Sử dụng kết nối SSH
Trừ khi có ghi chú khác, tất cả các bước cài đặt và định cấu hình bên dưới sẽ xảy ra trên máy Windows chạy phần mềm GRL Test Harness (Cài đặt kiểm thử GRL). Bạn phải cài đặt phần mềm này trước khi tiếp tục.
Sao chép tệp hỗ trợ THCI
Hãy đảm bảo bạn đã cài đặt phiên bản THCI mới nhất trên máy Windows. Hãy sao chép kho lưu trữ OpenThread hoặc chuyển đổi sang nhánh main
nếu bạn đã có:
git clone https://github.com/openthread/openthread
cd openthread
git checkout main
Sao chép các tệp sau từ /tools/harness-thci
trong kho lưu trữ OpenThread được sao chép vào các thư mục được chỉ định trên máy Windows:
Tệp nguồn | Sao chép vào thư mục |
---|---|
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\ |
Thiết lập loại kết nối
Để kiểm soát việc tận dụng Độ mạnh kiểm thử của NCP, hãy thiết lập kết nối cổng nối tiếp hoặc kết nối SSH.
Kết nối cổng nối tiếp (khuyến nghị)
Trên Raspberry Pi 3B (RPi3B), hãy bật cổng nối tiếp và vỏ đăng nhập:
- Nhập trình đơn cấu hình:
sudo raspi-config
- Trong trình đơn cấu hình, hãy chọn 5 Tùy chọn giao diện.
- Trong trình đơn Tuỳ chọn giao diện, hãy chọn Bật/tắt sê-ri P6.
- Khởi động lại RPi3B.
Trên máy Windows chạy tính năng Khai thác kiểm thử:
- Tải và cài đặt trình điều khiển FT232.
- Kết nối bộ chuyển đổi USB FT232 sang UART với khe cắm USB trên máy Windows.
- Đặt cầu nối điện áp trên FT232 thành 3,3V.
- Kết nối FT232 với RPi3B bằng cách sử dụng các chân và dòng Dupont sau:
Ghim RPi3B Chân FT232 Đường Dupont Ghim 6 GND Trắng Ghim 8 RXD (RXD) Vàng Ghim 10 Đạt chuẩn TXD Đỏ - Sau khi kết nối, hãy khởi động lại máy Windows.
- Tìm giá trị nhận dạng phần cứng của cổng nối tiếp thiết bị bằng mô-đun Python pySerial:
- Cài đặt pySerial trên máy Windows.
- Sử dụng Python trên dòng lệnh Windows để liệt kê tất cả giá trị nhận dạng phần cứng (VID và PID) cho các thiết bị kết nối với máy. Trong đầu ra này, một thiết bị NCP được kết nối với mã nhận dạng
VID_0403+PID_6001
.python -m serial.tools.list_ports -v
COM10desc: USB Serial Port (COM10)
hwid: FTDIBUS\VID_0403+PID_6001+AL01WOSZA\0000
- Nếu đã biết cổng COM, bạn có thể sử dụng một lệnh khác. Ví dụ: nếu cổng COM là
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ập nhật danh sách Thiết bị Vàng:
- Mở
C:\GRL\Thread1.1\Config\Configuration.ini
- Thêm một nhóm OpenThread_WpanCtl vào mảng
GoldenDeviceHardwareIds
có VID và PID của(các) thiết bị: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’]}
- Mở
Sau khi hoàn tất quá trình định cấu hình:
- Khởi động Vòng kiểm tra GRL.
Trên trang Định cấu hình giường thử nghiệm, thiết bị/cổng hiện sẽ xuất hiện dưới dạng thiết bị NCP OT.
Nếu DUT không được liệt kê trong phần Giường thử nghiệm sau khi bắt đầu Kiểm tra, hãy thêm thủ công bằng cách kéo thiết bị OpenThread WpanCtl: wpantund + NCP từ phần Support Hardware (Phần cứng được hỗ trợ) vào mục Tested Bed (Phần kiểm thử). Sau khi kéo:
- Đảm bảo các giá trị Serial Line (Cổng COM) và Speed (Tốc độ truyền) được điền đúng.
- Nhấp vào nút mũi tên bên dưới trường Tốc độ để thiết lập kết nối nối tiếp giữa Thiết bị kiểm tra và thiết bị NCP OT.
Chọn hộp đánh dấu Enable Auto DUT Device Selection (Bật tuỳ chọn thiết bị DUT tự động) bên dưới danh sách Phần cứng được hỗ trợ.
Chọn nút chọn Đặt làm DUT bên dưới thiết bị/cổng mục tiêu để đặt thiết bị OT NCP làm DUT.
Kết nối SSH
Trên RPi3B, hãy bật SSH:
- Bật dịch vụ SSH khi khởi động:
sudo systemctl enable ssh
- Khởi động dịch vụ SSH:
sudo systemctl start ssh
Để bật SSH trên RPi3B không có giao diện người dùng, hãy xem Bước 3 của tài liệu về Raspberry Pi SSH.
Trên máy Windows chạy tính năng Khai thác kiểm thử:
- Cài đặt Paramiko cho môi trường Python của GRL:
cd C:\GRL\Python2.7
python -m pip install --upgrade pip
python -m pip install paramiko
- Khởi động Vòng kiểm tra GRL.
- Trên trang Định cấu hình giường thử nghiệm, hãy kéo thiết bị OpenThread WpanCtl SSH: wpantund+NCP từ phần supported Hardware (Phần cứng được hỗ trợ) đến mục Test Bed (Giường thử nghiệm).
- Điền addr addr (hiển thị IP) với 192.168.1.100 và PORT bằng 22 cho thiết bị.
- Nhấp vào nút mũi tên bên dưới trường PORT để thiết lập kết nối SSH giữa Test Harness và OT NCP.
Thiết lập tự động hóa
Xem các bước Cài đặt và Định cấu hình từ hướng dẫn Thiết lập tự động hóa chứng nhận để biết hướng dẫn về cách thiết lập Công cụ tự động hóa Harness.
Chạy các trường hợp kiểm thử
Xem Chạy trường hợp kiểm thử chứng nhận để tìm hiểu cách chạy các trường hợp kiểm thử chứng nhận trên OTBR DUT.
Khắc phục sự cố
Khởi động lại thiết bị
Nếu bạn cần khởi động lại RPi3B, hãy đóng phần mềm Test Harness và đợi ít nhất 20 giây sau khi khởi động lại để bắt đầu lại Test Harness.
Không thể khám phá Bộ định tuyến biên
Khi sử dụng kết nối cổng nối tiếp, Khai thác kiểm thử có thể không phát hiện thấy Bộ định tuyến biên. Nếu trường hợp này xảy ra:
- Kiểm tra xem thông tin đăng nhập Shell có hoạt động với cổng nối tiếp hay không, bằng cách sử dụng một công cụ như PuTTY.
- Sử dụng cổng COM cho thiết bị FT232 và tốc độ (tốc độ truyền) là 115200.
- Nếu đăng nhập không thành công, hãy khởi động lại tất cả thiết bị rồi thử lại.
- Trên RPi3B, hãy kiểm tra trạng thái của
wpantund
:
Nếu trạng thái là "bất thường":sudo service wpantund status
- Đảm bảo bạn đã gắn bo mạch NCP nRF52840:
ls /dev/tty*
/dev/ttyACM0 - Xác thực rằng cổng này khớp với cấu hình
wpantund
:// default value in '/etc/wpantund.conf' Config:NCP:SocketPath "/dev/ttyACM0"
- Khởi động lại
wpantund
:sudo service wpantund restart
- Đảm bảo bạn đã gắn bo mạch NCP nRF52840: