Introducción a la incorporación de sus dispositivos de Sidewalk - AWS IoT Wireless

Introducción a la incorporación de sus dispositivos de Sidewalk

En esta sección, le indicamos cómo incorporar los dispositivos finales Sidewalk a AWS IoT Core para Amazon Sidewalk. Para incorporar sus dispositivos, primero añada su dispositivo de Sidewalk, luego aprovisiónelo y regístrelo y, a continuación, conecte el hardware a la aplicación en la nube. Antes de ejecutar este tutorial, revise y complete Instalación de Python y la AWS CLI.

En los siguientes pasos, se le mostrará cómo incorporar y conectar los dispositivos finales Sidewalk a AWS IoT Core para Amazon Sidewalk. Si desea incorporar dispositivos mediante la AWS CLI, puede consultar los ejemplos de comandos que se ofrecen en esta sección. Para obtener información sobre la incorporación de dispositivos mediante la consola de AWS IoT, consulte Conexión a AWS IoT Core para Amazon Sidewalk.

importante

Para llevar a cabo todo el flujo de trabajo de incorporación, también aprovisiona y registra el dispositivo final y conecta el kit de desarrollo de hardware (HDK). Para obtener más información, consulte Aprovisionamiento y registro de un dispositivo final en la documentación de Amazon Sidewalk.

Paso 1: Añadir el dispositivo Sidewalk a AWS IoT Core para Amazon Sidewalk

A continuación, se muestra información general de los pasos que debe seguir para agregar el dispositivo final Sidewalk a AWS IoT Core para Amazon Sidewalk. Guarde la información que obtenga sobre el perfil de dispositivo y el dispositivo inalámbrico que ha creado. Utilizará esta información para aprovisionar y registrar el dispositivo final. Para obtener más información sobre estos pasos, consulte Agregación del dispositivo a AWS IoT Core para Amazon Sidewalk.

  1. Creación de un perfil de dispositivo

    Cree un perfil de dispositivo que contenga las configuraciones compartidas de los dispositivos de Sidewalk. Al crear el perfil, especifique un name para el perfil como cadena alfanumérica. Para crear un perfil, vaya a la pestaña Sidewalk del Centro de Perfiles de la consola de AWS IoT y elija Crear perfil o utilice la operación CreateDeviceProfile de la API o el comando create-device-profile de la CLI, como se muestra en este ejemplo.

    // Add your device profile using a name and the sidewalk object. aws iotwireless create-device-profile --name sidewalk_profile --sidewalk {}
  2. Creación del dispositivo final de Sidewalk

    Cree el dispositivo final Sidewalk con AWS IoT Core para Amazon Sidewalk. Especifique un nombre de destino y el ID del perfil de dispositivo obtenido en el paso anterior. Para crear un dispositivo, vaya a la pestaña Sidewalk del Centro de dispositivos de la consola de AWS IoT y elija Aprovisionar dispositivo o utilice la operación CreateWirelessDevice de la API o el comando create-wireless-device de la CLI, como se muestra en este ejemplo.

    nota

    Especifique un nombre para el destino que sea único de su Cuenta de AWS y Región de AWS. Usará el mismo nombre de destino cuando agregue el destino a AWS IoT Core para Amazon Sidewalk.

    // 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. Obtención del perfil de dispositivo y la información del dispositivo inalámbrico

    Obtenga el perfil de dispositivo y la información del dispositivo inalámbrico como un JSON. El JSON contendrá información sobre los detalles y los certificados del dispositivo, las claves privadas, el DeviceTypeId y el número de serie del fabricante de Sidewalk (SMSN).

    • Si utiliza la consola de AWS IoT, puede usar la pestaña Sidewalk del Centro de dispositivos para descargar un archivo JSON combinado para el dispositivo final de Sidewalk.

    • Si utiliza las operaciones de la API, guarde las respuestas obtenidas de GetDeviceProfile y GetWirelessDevice en archivos JSON independientes, como device_profile.json y wireless_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

Paso 2: Creación de un destino para el dispositivo final de Sidewalk

A continuación, se muestra información general de los pasos que debe seguir para agregar el dispositivo a AWS IoT Core para Amazon Sidewalk. Mediante la AWS Management Console, las operaciones API de AWS IoT Wireless o la AWS CLI, debe seguir estos pasos para crear un destino y una regla de AWS IoT. A continuación, puede conectarse a la plataforma de hardware y ver e intercambiar mensajes. Para ver un ejemplo del rol de IAM y la regla de AWS IoT utilizados en los ejemplos de la AWS CLI de esta sección, consulte Creación de un rol de IAM y una regla de IoT para el destino.

  1. Creación del rol de IAM

    Cree un rol de IAM que le conceda a AWS IoT Core para Amazon Sidewalk el permiso necesario para enviar datos a la regla de AWS IoT. Para crear el rol, utilice la operación CreateRole de la API o el comando create-role de la CLI. Puede nombrar el rol como SidewalkRole.

    aws iam create-role --role-name lambda-ex \ --assume-role-policy-document file://lambda-trust-policy.json
  2. Creación de una regla para el destino

    Cree una regla de AWS IoT que procesará los datos del dispositivo y especificará el tema en el que se publicarán los mensajes. Observará los mensajes sobre este tema después de conectarse a la plataforma de hardware. Para crear una regla para el destino, utilice la operación de la API de AWS IoT Core, CreateTopicRule, o el comando de la AWS CLI, create-topic-rule.

    aws iot create-topic-rule --rule-name Sidewalkrule \ --topic-rule-payload file://myrule.json
  3. Creación de un destino

    Cree un destino que asocie su dispositivo de Sidewalk con la regla de IoT que lo procesa para usarlo con otros Servicios de AWS. Puede agregar un destino mediante el Centro de destinos de la consola de AWS IoT, la operación CreateDestination de la API o el comando create-destination de la CLI.

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

Paso 3: Aprovisionamiento y registro del dispositivo final

Con los comandos Python, puede aprovisionar y registrar el dispositivo final. El script de aprovisionamiento utiliza los datos JSON del dispositivo obtenidos para generar una imagen binaria de fabricación, que luego se flashea en la placa de hardware. A continuación, registre el dispositivo final para conectarlo a la plataforma de hardware. Para obtener más información, consulte Aprovisionamiento y registro de un dispositivo final en la documentación de Amazon Sidewalk.

nota

Al registrar el dispositivo final de Sidewalk, la puerta de enlace debe estar habilitada en Amazon Sidewalk y la puerta de enlace y el dispositivo deben estar dentro de su mutuo alcance.

Paso 4: Conexión al dispositivo final de Sidewalk e intercambio de mensajes

Una vez que haya registrado el dispositivo final, podrá conectarlo y empezar a intercambiar mensajes y datos del dispositivo.

  1. Conexión del dispositivo final de Sidewalk

    Conecte el HDK al equipo y siga las instrucciones indicadas en la documentación del proveedor para conectarse al HDK. Para obtener más información, consulte Aprovisionamiento y registro de un dispositivo final en la documentación de Amazon Sidewalk.

  2. Visualización e intercambio de mensajes

    Utilice el cliente MQTT para suscribirse al tema especificado en la regla y ver el mensaje recibido. También puede usar la operación SendDataToWirelessDevice de la API o el comando send-data-to-wireless-device de la CLI para enviar un mensaje de enlace descendente al dispositivo y verificar el estado de conectividad.

    (Opcional) Puede habilitar el evento de estado de entrega del mensaje para comprobar si el mensaje del enlace descendente se ha recibido correctamente.

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