기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Bluetooth Low Energy 테스트 실행
이 섹션에서는 FreeRTOS AWS IoT Device Tester 용를 사용하여 Bluetooth Low Energy 테스트를 설정하고 실행하는 방법을 설명합니다.
코어 검증에는 Bluetooth 테스트가 필요하지 않습니다. FreeRTOS Bluetooth를 지원하는 디바이스를 테스트하지 않으려는 경우 이 설정을 건너뛸 수 있으며 device.json의 BLE 기능을 No로 설정된 상태로 그대로 두어야 합니다.
사전 조건
-
마이크로컨트롤러 보드의 첫 번째 테스트의 지침을 따르세요.
-
Raspberry Pi 4B 또는 3B+. (Raspberry Pi BLE 컴패니언 애플리케이션을 실행하는 데 필요함)
-
Raspberry Pi 소프트웨어용 마이크로 SD 카드 및 SD 카드 어댑터.
Raspberry Pi 설정
DUT(테스트 대상 디바이스)의 BLE 기능을 테스트하려면 Raspberry Pi Model 4B 또는 3B+가 있어야 합니다.
BLE 테스트를 실행하도록 Raspberry Pi를 설정하려면
-
테스트를 수행하는 데 필요한 소프트웨어가 포함된 사용자 지정 Yocto 이미지 중 하나를 다운로드합니다.
참고
Yocto 이미지는 FreeRTOS용 AWS IoT Device Tester 를 사용한 테스트에만 사용해야 하며 다른 용도로는 사용할 수 없습니다.
-
yocto 이미지를 Raspberry Pi용 SD 카드로 플래시합니다.
-
Etcher
와 같은 SD 카드 쓰기 도구를 사용하여 다운로드된 파일을 SD 카드로 플래시합니다. 운영 체제 이미지가 크기 때문에 이 단계는 시간이 약간 걸릴 수 있습니다. 그런 다음 컴퓨터에서 SD 카드를 꺼내고 Raspberry Pi에 microSD 카드를 삽입합니다.image-name.rpi-sd.img
-
-
Raspberry Pi를 구성합니다.
-
처음으로 부팅하는 경우 Raspberry Pi를 모니터, 키보드 및 마우스에 연결하는 것이 좋습니다.
-
Raspberry Pi를 마이크로 USB 전원에 연결합니다.
-
기본 자격 증명을 사용하여 로그인합니다. 사용자 ID에
root를 입력합니다. 암호에idtafr을 입력합니다. -
이더넷 또는 Wi-Fi 연결을 사용하여 Raspberry Pi를 네트워크에 연결합니다.
-
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" } -
ifup wlan0을 실행하여 Wi-Fi 연결을 시작합니다. Wi-Fi 네트워크에 연결하려면 1분 정도 걸릴 수 있습니다.
-
-
이더넷 연결의 경우
ifconfig eth0을 실행합니다. Wi-Fi 연결의 경우ifconfig wlan0을 실행합니다. IP 주소를 기록해 둡니다. 이 주소는 명령 출력에inet addr로 나타납니다. 이 절차의 뒷 부분에서 IP 주소가 필요합니다. -
(선택 사항) 테스트는 yocto 이미지에 대한 기본 자격 증명을 사용하여 SSH를 통해 Raspberry Pi에서 명령을 실행합니다. 보안을 강화하기 위해 SSH에 대한 퍼블릭 키 인증을 설정하고 암호 기반 SSH를 비활성화하는 것이 좋습니다.
-
OpenSSL
ssh-keygen명령을 사용하여 SSH 키를 생성합니다. 호스트 컴퓨터에 이미 SSK 키 페어가 있는 경우 AWS IoT Device Tester FreeRTOS가 Raspberry Pi에 로그인할 수 있도록 새 키 페어를 생성하는 것이 좋습니다.참고
Windows에는 SSH 클라이언트가 설치되어 있지 않습니다. Windows에 SSH 클라이언트를 설치하는 방법에 대한 자세한 내용은 SSH 소프트웨어 다운로드
를 참조하십시오. -
ssh-keygen명령은 키 페어 저장 이름과 경로를 입력하라는 메시지를 표시합니다. 기본적으로 키 페어 파일은id_rsa(프라이빗 키) 및id_rsa.pub(퍼블릭 키)로 이름 지정됩니다. macOS와 Linux에서 이러한 파일의 기본 위치는~/.ssh/입니다. Windows에서 기본 위치는C:\Users\입니다.user-name -
키 구문을 묻는 메시지가 표시되면 Enter를 눌러 계속합니다.
-
FreeRTOS AWS IoT Device Tester 용가 디바이스에 로그인할 수 있도록 Raspberry Pi에 SSH 키를 추가하려면 호스트 컴퓨터의
ssh-copy-id명령을 사용합니다. 이 명령은 Raspberry Pi에서~/.ssh/authorized_keys파일에 퍼블릭 키를 추가합니다.ssh-copy-id root@raspberry-pi-ip-address -
암호를 묻는 화면이 나타나면
idtafr을 입력합니다. 이 값은 yocto 이미지의 기본 암호입니다.참고
ssh-copy-id명령은 퍼블릭 키에id_rsa.pub라는 이름이 지정된다고 가정합니다. macOS와 Linux에서 기본 위치는~/.ssh/입니다. Windows에서 기본 위치는C:\Users\입니다. 퍼블릭 키의 이름을 다르게 지정하거나 다른 위치에 저장한 경우,user-name\.sshssh-copy-id에-i옵션을 사용하여 SSH 퍼블릭 키의 정규화된 경로를 지정해야 합니다(예:ssh-copy-id -i ~/my/path/myKey.pub). SSH 키 생성 및 퍼블릭 키 복사에 대한 자세한 내용은 SSH-COPY-ID를 참조하십시오. -
퍼블릭 키 인증이 작동하는지 테스트하려면
ssh -i를 실행합니다./my/path/myKeyroot@raspberry-pi-device-ip암호를 묻는 화면이 나타나지 않으면 퍼블릭 키 인증이 작동하는 것입니다.
-
퍼블릭 키를 사용하여 Raspberry Pi에 로그인할 수 있는지 확인한 다음, 암호 기반 SSH를 비활성화합니다.
-
Raspberry Pi에서
/etc/ssh/sshd_config파일을 편집합니다. -
PasswordAuthentication속성을no로 설정합니다. -
sshd_config파일을 저장하고 닫습니다. -
/etc/init.d/sshd reload를 실행하여 SSH 서버를 다시 로드합니다.
-
-
-
resource.json파일을 생성합니다.-
AWS IoT Device Tester를 추출한 디렉터리에서 라는 파일을 생성합니다
resource.json. -
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" } } ] } ] -
(선택 사항) SSH에 퍼블릭 키 인증을 사용하도록 선택하지 않은 경우
resource.json파일의connectivity섹션에 다음을 추가합니다."connectivity": { "protocol": "ssh", "ip": "rasp-pi-ip-address", "auth": { "method": "password", "credentials": { "user": "root", "password": "idtafr" } } } -
(선택 사항) SSH에 퍼블릭 키 인증을 사용하도록 선택한 경우
resource.json파일의connectivity섹션에 다음을 추가합니다."connectivity": { "protocol": "ssh", "ip": "rasp-pi-ip-address", "auth": { "method": "pki", "credentials": { "user": "root", "privKeyPath": "location-of-private-key" } } }
-
-
FreeRTOS 파일 설정
device.json 파일에서 BLE 기능을 Yes로 설정합니다. Bluetooth 테스트가 사용 가능하기 전에 device.json 파일로 시작하는 경우 BLE용 기능을 features 배열에 추가해야 합니다.
{ ... "features": [ { "name": "BLE", "value": "Yes" }, ... }
BLE 테스트 실행
device.json에서 BLE 기능을 활성화한 후 그룹 ID를 지정하지 않고 devicetester_를 실행하면 BLE 테스트가 실행됩니다.[linux | mac |
win_x86-64] run-suite
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 구성으로 인한 것이 아닐 가능성이 높습니다.