Sidewalk 디바이스 온보딩 소개 - AWS IoT Wireless

Sidewalk 디바이스 온보딩 소개

이 단원에서는 Sidewalk 엔드 디바이스를 Amazon Sidewalk용 AWS IoT Core에 온보딩하는 방법을 설명합니다. 디바이스를 온보딩하려면 먼저 Sidewalk 디바이스를 추가한 다음 디바이스를 프로비저닝 및 등록한 다음 하드웨어를 클라우드 애플리케이션에 연결합니다. 이 자습서를 실행하기 전에 먼저 Python 및 AWS CLI 설치 섹션을 검토하고 완료하세요.

다음 단계는 Sidewalk 엔드 디바이스를 Amazon Sidewalk용 AWS IoT Core에 온보딩하고 연결하는 방법을 보여 줍니다. AWS CLI를 사용하여 디바이스를 온보딩하려면 이 섹션에 제공된 샘플 명령을 참조하세요. AWS IoT 콘솔을 사용하여 디바이스를 온보딩하는 방법에 대한 자세한 내용은 Amazon Sidewalk용 AWS IoT Core에 연결 섹션을 참조하세요.

중요

전체 온보딩 워크플로를 수행하려면 엔드 디바이스를 프로비저닝 및 등록하고 Hardware Development Kit(HDK)를 연결합니다. 자세한 내용은 Amazon Sidewalk 설명서의 엔드 디바이스 프로비저닝 및 등록을 참조하세요.

1단계: Amazon Sidewalk용 AWS IoT Core에 Sidewalk 디바이스 추가

다음은 Sidewalk 엔드 디바이스를 Amazon Sidewalk용 AWS IoT Core에 추가하기 위해 수행할 단계를 간략히 설명한 것입니다. 디바이스 프로필 및 생성한 무선 디바이스에 대해 수집한 정보를 저장합니다. 이 정보를 사용하여 엔드 디바이스를 프로비전하고 등록하게 됩니다. 이 단계에 대한 자세한 내용은 Amazon Sidewalk용 AWS IoT Core에 디바이스 추가 섹션을 참조하세요.

  1. 디바이스 프로필 생성

    Sidewalk 디바이스의 공유 구성을 포함하는 디바이스 프로필을 생성합니다. 프로필을 생성할 때 프로필의 name을 영숫자 문자열로 지정하세요. 프로필을 생성하려면 AWS IoT 콘솔에서 프로필 허브의 Sidewalk 탭으로 이동하여 프로필 생성을 선택하거나, 이 예시와 같이 CreateDeviceProfile API 작업 또는 create-device-profile CLI 명령을 사용하세요.

    // Add your device profile using a name and the sidewalk object. aws iotwireless create-device-profile --name sidewalk_profile --sidewalk {}
  2. Sidewalk 엔드 디바이스 생성

    Amazon Sidewalk용 AWS IoT Core로 엔드 디바이스를 생성합니다. 대상 이름과 이전 단계에서 얻은 디바이스 프로필의 ID를 지정합니다. 디바이스를 추가하려면 AWS IoT 콘솔에서 디바이스 허브의 Sidewalk 탭으로 이동하여 디바이스 프로비저닝을 선택하거나, 이 예시와 같이 CreateWirelessDevice API 작업 또는 create-wireless-device CLI 명령을 사용하세요.

    참고

    AWS 계정 및 AWS 리전에서 고유한 대상 이름을 지정하세요. Amazon Sidewalk용 AWS IoT Core에 대상을 추가할 때 동일한 대상 이름을 사용하게 됩니다.

    // Add your Sidewalk device by using the device profile ID. aws iotwireless create-wireless-device --type "Sidewalk" --name sidewalk_device \ --destination-name SidewalkDestination \ --sidewalk DeviceProfileId="12345678-234a-45bc-67de-e8901234f0a1"
  3. 디바이스 프로필 및 무선 디바이스 정보 가져오기

    디바이스 프로필 및 무선 디바이스 정보를 JSON으로 가져옵니다. JSON에는 디바이스 세부 정보, 디바이스 인증서, 프라이빗 키, DeviceTypeId 및 Sidewalk 제조 일련번호(SMSN)에 대한 정보가 포함됩니다.

    • AWS IoT 콘솔을 사용하는 경우 디바이스 허브의 Sidewalk 탭을 사용하여 Sidewalk 엔드 디바이스용 통합 JSON 파일을 다운로드할 수 있습니다.

    • API 작업을 사용하는 경우 API 작업 GetDeviceProfileGetWirelessDevice에서 얻은 응답을 별도의 JSON 파일(예: device_profile.jsonwireless_device.json)로 저장하세요.

      // Store device profile information as a JSON file. aws iotwireless get-device-profile \ --id "12345678-a1b2-3c45-67d8-e90fa1b2c34d" > device_profile.json // Store wireless device information as a JSON file. aws iotwireless get-wireless-device --identifier-type WirelessDeviceId \ --identifier "23456789-abcd-0123-bcde-fabc012345678" > wireless_device.json

2단계: Sidewalk 엔드 디바이스의 대상 생성

다음은 대상을 Amazon Sidewalk용 AWS IoT Core에 추가하기 위해 수행할 단계를 간략히 설명한 것입니다. AWS Management Console 또는 AWS IoT Wireless API 작업 또는 AWS CLI로 다음 단계를 실행하여 AWS IoT 규칙 및 대상을 생성합니다. 그런 다음 하드웨어 플랫폼에 연결하여 메시지를 보고 교환할 수 있습니다. 이 섹션의 AWS CLI 예시에 사용되는 샘플 IAM 역할 및 AWS IoT 규칙은 대상에 대한 IAM 역할 및 IoT 규칙 생성 섹션을 참조하세요.

  1. IAM 역할 생성

    AWS IoT 규칙에 데이터를 전송할 권한을 Amazon Sidewalk용 AWS IoT Core에 부여하는 IAM 역할을 생성합니다. 역할을 생성하려면 CreateRole API 작업 또는 create-role CLI 명령을 사용합니다. 역할 이름을 SidewalkRole로 지정할 수 있습니다.

    aws iam create-role --role-name lambda-ex \ --assume-role-policy-document file://lambda-trust-policy.json
  2. 대상에 대한 규칙 생성

    디바이스 데이터를 처리하는 AWS IoT 규칙을 만들고 메시지를 게시할 주제를 지정합니다. 하드웨어 플랫폼에 연결한 후 이 주제에 대한 메시지를 관찰합니다.. AWS IoT Core API 작업 CreateTopicRule 또는 AWS CLI 명령 create-topic-rule을 사용하여 대상에 대한 규칙을 생성합니다.

    aws iot create-topic-rule --rule-name Sidewalkrule \ --topic-rule-payload file://myrule.json
  3. 대상 생성

    Sidewalk 디바이스를 다른 AWS 서비스와 함께 사용할 수 있도록 처리하는 IoT 규칙과 연결하는 대상을 생성합니다. AWS IoT 콘솔의 대상 허브, CreateDestination API 작업 또는 create-destination CLI 명령을 사용하여 대상을 추가할 수 있습니다.

    aws iotwireless create-destination --name SidewalkDestination \ --expression-type RuleName --expression SidewalkRule \ --role-arn arn:aws:iam::123456789012:role/SidewalkRole

3단계: 엔드 디바이스 프로비저닝 및 등록

Python 명령을 사용하여 엔드 디바이스를 프로비저닝하고 등록할 수 있습니다. 프로비저닝 스크립트는 획득한 디바이스 JSON 데이터를 사용하여 제조 바이너리 이미지를 생성합니다. 이 이미지는 하드웨어 보드에 플래시됩니다. 그런 다음 하드웨어 플랫폼에 연결할 엔드 디바이스를 등록합니다. 자세한 내용은 Amazon Sidewalk 설명서의 엔드 디바이스 프로비저닝 및 등록을 참조하세요.

참고

Sidewalk 엔드 디바이스를 등록할 때는 게이트웨이가 Amazon Sidewalk에 옵트인해야 하며 게이트웨이와 디바이스가 서로 범위 내에 있어야 합니다.

4단계: Sidewalk 엔드 디바이스에 연결 및 메시지 교환

엔드 디바이스를 등록한 후 엔드 디바이스를 연결하고 메시지 및 디바이스 데이터 교환을 시작할 수 있습니다.

  1. Sidewalk 엔드 디바이스 연결

    HDK를 컴퓨터에 연결하고 공급업체 설명서에서 제공하는 지침에 따라 HDK에 연결합니다. 자세한 내용은 Amazon Sidewalk 설명서의 엔드 디바이스 프로비저닝 및 등록을 참조하세요.

  2. 메시지 보기 및 교환

    MQTT 클라이언트를 사용하여 규칙에 지정된 주제를 구독하고 수신된 메시지를 봅니다. 또한 SendDataToWirelessDevice API 작업 또는 send-data-to-wireless-device CLI 명령을 사용하여 디바이스에 다운링크 메시지를 보내고 연결 상태를 확인할 수 있습니다.

    (선택 사항) 메시지 전송 상태 이벤트를 활성화하여 다운링크 메시지가 성공적으로 수신되었는지 확인할 수 있습니다.

    aws iotwireless send-data-to-wireless-device \ --id "<Wireless_Device_ID>" \ --payload-data "SGVsbG8gVG8gRGV2c2lt" \ --wireless-metadata Sidewalk={Seq=1,AckModeRetryDurationSecs=10}