Bluetooth Low Energy 테스트 실행 - 무료RTOS

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Bluetooth Low Energy 테스트 실행

이 섹션에서는 AWS IoT Device Tester for Free 를 사용하여 Bluetooth Low Energy 테스트를 설정하고 실행하는 방법을 설명합니다RTOS.

코어 검증에는 Bluetooth 테스트가 필요하지 않습니다. 무료RTOS Bluetooth 지원으로 디바이스를 테스트하지 않으려면 이 설정을 건너뛰고 device.json의 BLE 기능을 로 설정한 상태로 두어야 합니다No.

사전 조건

 

Raspberry Pi 설정

테스트 중인 디바이스의 BLE 기능을 테스트하려면(DUT) Raspberry Pi 모델 4B 또는 3B +가 있어야 합니다.

Raspberry Pi가 BLE 테스트를 실행하도록 설정하려면
  1. 테스트를 수행하는 데 필요한 소프트웨어가 포함된 사용자 지정 Yocto 이미지 중 하나를 다운로드합니다.

    참고

    Yocto 이미지는 AWS IoT Device Tester 를 사용한 무료RTOS 테스트에만 사용해야 하며 다른 용도로는 사용할 수 없습니다.

  2. yocto 이미지를 Raspberry Pi용 SD 카드로 플래시합니다.

    1. Etcher와 같은 SD 카드 쓰기 도구를 사용하여 다운로드된 image-name.rpi-sd.img 파일을 SD 카드로 플래시합니다. 운영 체제 이미지가 크기 때문에 이 단계는 시간이 약간 걸릴 수 있습니다. 그런 다음 컴퓨터에서 SD 카드를 꺼내고 Raspberry Pi에 microSD 카드를 삽입합니다.

  3. Raspberry Pi를 구성합니다.

    1. 처음으로 부팅하는 경우 Raspberry Pi를 모니터, 키보드 및 마우스에 연결하는 것이 좋습니다.

    2. Raspberry Pi를 마이크로 USB 전원에 연결합니다.

    3. 기본 자격 증명을 사용하여 로그인합니다. 사용자 ID에 root를 입력합니다. 암호에 idtafr을 입력합니다.

    4. 이더넷 또는 Wi-Fi 연결을 사용하여 Raspberry Pi를 네트워크에 연결합니다.

      1. Wi-Fi를 통해 Raspberry Pi를 연결하려면 Raspberry Pi에서 /etc/wpa_supplicant.conf를 열고 Wi-Fi 자격 증명을 Network 구성에 추가합니다.

        ctrl_interface=/var/run/wpa_supplicant ctrl_interface_group=0 update_config=1 network={ scan_ssid=1 ssid="your-wifi-ssid" psk="your-wifi-password" }
      2. ifup wlan0을 실행하여 Wi-Fi 연결을 시작합니다. Wi-Fi 네트워크에 연결하려면 1분 정도 걸릴 수 있습니다.

    5. 이더넷 연결의 경우 ifconfig eth0을 실행합니다. Wi-Fi 연결의 경우 ifconfig wlan0을 실행합니다. IP 주소를 기록해 둡니다. 이 주소는 명령 출력에 inet addr로 나타납니다. 이 절차의 뒷 부분에서 IP 주소가 필요합니다.

    6. (선택 사항) 테스트는 yocto 이미지의 기본 자격 증명을 SSH 사용하여 Raspberry Pi에서 명령을 실행합니다. 추가 보안을 위해 에 대한 퍼블릭 키 인증을 설정하고 암호 기반 를 SSH 비활성화하는 것이 좋습니다SSH.

      1. OpenSSL ssh-keygen 명령을 사용하여 SSH 키를 생성합니다. 호스트 컴퓨터에 이미 SSK 키 페어가 있는 경우 Raspberry Pi에 AWS IoT Device Tester 무료로RTOS 로그인할 수 있도록 새 키 페어를 생성하는 것이 좋습니다.

        참고

        Windows는 설치된 SSH 클라이언트와 함께 제공되지 않습니다. Windows에 SSH 클라이언트를 설치하는 방법에 대한 자세한 내용은 SSH 소프트웨어 다운로드를 참조하세요.

      2. ssh-keygen 명령은 키 페어 저장 이름과 경로를 입력하라는 메시지를 표시합니다. 기본적으로 키 페어 파일은 id_rsa(프라이빗 키) 및 id_rsa.pub(퍼블릭 키)로 이름 지정됩니다. macOS와 Linux에서 이러한 파일의 기본 위치는 ~/.ssh/입니다. Windows에서 기본 위치는 C:\Users\user-name입니다.

      3. 키 구문을 입력하라는 메시지가 표시되면 ENTER를 눌러 계속하세요.

      4. Free AWS IoT Device Tester RTOS에서 디바이스에 로그인할 수 있도록 Raspberry Pi에 SSH 키를 추가하려면 호스트 컴퓨터의 ssh-copy-id 명령을 사용합니다. 이 명령은 Raspberry Pi에서 ~/.ssh/authorized_keys 파일에 퍼블릭 키를 추가합니다.

        ssh-copy-id root@raspberry-pi-ip-address

      5. 암호를 묻는 화면이 나타나면 idtafr을 입력합니다. 이 값은 yocto 이미지의 기본 암호입니다.

        참고

        ssh-copy-id 명령은 퍼블릭 키에 id_rsa.pub라는 이름이 지정된다고 가정합니다. macOS와 Linux에서 기본 위치는 ~/.ssh/입니다. Windows에서 기본 위치는 C:\Users\user-name\.ssh입니다. 퍼블릭 키에 다른 이름을 부여하거나 다른 위치에 저장한 경우 -i 옵션ssh-copy-id(예: )을 사용하여 SSH 퍼블릭 키의 정규화된 경로를 지정해야 합니다ssh-copy-id -i ~/my/path/myKey.pub. SSH 키 생성 및 퍼블릭 키 복사에 대한 자세한 내용은 SSH-COPY-ID를 참조하세요.

      6. 퍼블릭 키 인증이 작동하는지 테스트하려면 ssh -i /my/path/myKey root@raspberry-pi-device-ip를 실행합니다.

        암호를 묻는 화면이 나타나지 않으면 퍼블릭 키 인증이 작동하는 것입니다.

      7. 퍼블릭 키를 사용하여 Raspberry Pi에 로그인한 다음 암호 기반 를 비활성화할 수 있는지 확인합니다SSH.

        1. Raspberry Pi에서 /etc/ssh/sshd_config 파일을 편집합니다.

        2. PasswordAuthentication 속성을 no로 설정합니다.

        3. sshd_config 파일을 저장하고 닫습니다.

        4. 를 실행하여 SSH 서버를 다시 로드합니다/etc/init.d/sshd reload.

    7. resource.json 파일을 생성합니다.

      1. AWS IoT Device Tester를 추출한 디렉터리에서 라는 파일을 생성합니다resource.json.

      2. Raspberry Pi에 대한 다음 정보를 파일에 추가하고 rasp-pi-ip-address Raspberry Pi의 IP 주소를 사용합니다.

        [ { "id": "ble-test-raspberry-pi", "features": [ {"name":"ble", "version":"4.2"} ], "devices": [ { "id": "ble-test-raspberry-pi-1", "connectivity": { "protocol": "ssh", "ip": "rasp-pi-ip-address" } } ] } ]
      3. 에 대한 퍼블릭 키 인증을 사용하지 않기로 선택한 경우 resource.json 파일의 connectivity 섹션에 다음을 SSH추가합니다.

        "connectivity": { "protocol": "ssh", "ip": "rasp-pi-ip-address", "auth": { "method": "password", "credentials": { "user": "root", "password": "idtafr" } } }
      4. (선택 사항) 에 퍼블릭 키 인증을 사용하도록 선택한 경우 resource.json 파일의 connectivity 섹션에 다음을 SSH추가합니다.

        "connectivity": { "protocol": "ssh", "ip": "rasp-pi-ip-address", "auth": { "method": "pki", "credentials": { "user": "root", "privKeyPath": "location-of-private-key" } } }

무료RTOS 디바이스 설정

device.json 파일에서 BLE 기능을 Yes로 설정합니다. Bluetooth 테스트를 사용할 수 있기 전에 의 device.json 파일로 시작하는 경우 의 기능을 features 배열BLE에 추가해야 합니다.

{ ... "features": [ { "name": "BLE", "value": "Yes" }, ... }

BLE 테스트 실행

에서 BLE 기능을 활성화한 후 그룹 IDdevice.json를 지정devicetester_[linux | mac | win_x86-64] run-suite하지 않고 를 실행하면 BLE 테스트가 실행됩니다.

BLE 테스트를 별도로 실행하려면 BLE에 대한 그룹 ID를 지정할 수 있습니다devicetester_[linux | mac | win_x86-64] run-suite --userdata path-to-userdata/userdata.json --group-id FullBLE.

가장 안정적인 성능을 위해 Raspberry Pi를 테스트 중인 디바이스() 가까이에 배치하세요DUT.

BLE 테스트 문제 해결

마이크로컨트롤러 보드의 첫 번째 테스트의 단계를 따랐는지 확인합니다. 이외의 테스트BLE가 실패하는 경우 문제는 Bluetooth 구성 때문이 아닐 가능성이 높습니다.