Présentation de l’intégration de vos appareils Sidewalk - AWS IoT Wireless

Présentation de l’intégration de vos appareils Sidewalk

Cette section explique comment intégrer vos terminaux Sidewalk à AWS IoT Core pour Amazon Sidewalk. Pour intégrer vos appareils, ajoutez d’abord votre appareil Sidewalk, puis configurez et enregistrez votre appareil, puis connectez votre matériel à l’application cloud. Avant de lancer ce didacticiel, révisez et terminez le Installation de Python et d’AWS CLI.

Les étapes suivantes vous montrent comment intégrer et connecter vos terminaux Sidewalk à AWS IoT Core pour Amazon Sidewalk. Si vous souhaitez intégrer des appareils à l’aide du AWS CLI, vous pouvez vous référer aux exemples de commandes fournis dans cette section. Pour plus d’informations sur l’intégration des appareils à l’aide de la console AWS IoT, veuillez consulter Connexion à AWS IoT Core pour Amazon Sidewalk.

Important

Pour effectuer l’ensemble du processus d’intégration, vous devez également approvisionner et enregistrer votre terminal, puis connecter votre kit de développement matériel (HDK). Pour plus d’informations, consultez la section Mise en service et enregistrement de votre terminal dans la documentation Amazon Sidewalk.

Étape 1 : Ajouter votre appareil Sidewalk à AWS IoT Core pour Amazon Sidewalk

Voici une vue d’ensemble des étapes que vous allez suivre pour ajouter votre terminal Sidewalk àAWS IoT Core pour Amazon Sidewalk. Stockez les informations que vous obtenez sur le profil de l’appareil et l’appareil sans fil que vous créez. Vous utiliserez ces informations pour mettre en service et enregistrer le terminal. Pour plus d'informations sur ces étapes, veuillez consulter Ajout de votre appareil à AWS IoT Core pour Amazon Sidewalk.

  1. Création d’un profil d’appareil

    Créez un profil d’appareil contenant les configurations partagées pour vos appareils Sidewalk. Lors de la création du profil, spécifiez un name pour le profil sous forme de chaîne alphanumérique. Pour créer un profil, accédez à l’onglet Sidewalk du centre Profiles de la console AWS IoT et choisissez Créer un profil, ou utilisez l’opération d’APICreateDeviceProfile ou la commande CLI create-device-profile comme indiqué dans cet exemple.

    // Add your device profile using a name and the sidewalk object. aws iotwireless create-device-profile --name sidewalk_profile --sidewalk {}
  2. Créez votre terminal Sidewalk

    Créez votre terminal Sidewalk avec AWS IoT Core pour Amazon Sidewalk. Spécifiez un nom de destination et l’ID du profil d’appareil obtenu à l’étape précédente. Pour ajouter un appareil, accédez à l’onglet Sidewalk du centre des appareils de la console AWS IoT et choisissez Mise en service d’un appareil, ou utilisez l’opération d’API CreateWirelessDevice ou la commande CLI create-wireless-device comme indiqué dans cet exemple.

    Note

    Spécifiez un nom pour votre destination qui soit propre à votre Compte AWS et Région AWS. Vous utiliserez le même nom de destination lorsque vous ajouterez votre destination à AWS IoT Core pour 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. Obtenir le profil de l’appareil et les informations sur les appareils sans fil

    Obtenez le profil de l’appareil et les informations de l’appareil sans fil au format JSON. Le JSON contiendra des informations sur les détails de l’appareil, les certificats de l’appareil, les clés privées, DeviceTypeId et le numéro de série de fabrication (SMSN) de Sidewalk.

    • Si vous utilisez la console AWS IoT, vous pouvez utiliser l’onglet Sidewalk du centre des appareils pour télécharger un fichier JSON combiné pour votre terminal Sidewalk.

    • Si vous utilisez les opérations d’API, stockez les réponses obtenues à partir des opérations d’API GetDeviceProfile et GetWirelessDevice comme fichiers JSON distincts, tels que device_profile.json et 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

Étape 2 : créer une destination pour votre appareil Sidewalk

Voici une vue d’ensemble des étapes que vous allez suivre pour ajouter votre destination à AWS IoT Core pour Amazon Sidewalk. À l’aide de la AWS Management Console, des opérations d’API AWS IoT Wireless ou de l’AWS CLI, exécutez les étapes suivantes pour créer une règle AWS IoT et une destination. Vous pouvez ensuite vous connecter à la plate-forme matérielle, consulter et échanger des messages. Pour un exemple de rôle IAM et de règle AWS IoT utilisés dans les exemples AWS CLI de cette section, veuillez consulter Créer un rôle IAM et une règle IoT pour votre destination.

  1. Créez un rôle IAM

    Créez un rôle IAM qui autorise AWS IoT Core pour Amazon Sidewalk à envoyer des données à la règle AWS IoT. Pour créer le rôle, utilisez l’opération d’API CreateRole ou la commande CLI create-role. Vous pouvez nommer le rôle comme SidewalkRole.

    aws iam create-role --role-name lambda-ex \ --assume-role-policy-document file://lambda-trust-policy.json
  2. Création d’une règle pour la destination

    Créez une règle AWS IoT qui traitera les données de l’appareil et spécifiez le sujet dans lequel les messages sont publiés. Vous observerez les messages relatifs à ce sujet après vous être connecté à la plate-forme matérielle. Utilisez l’opération d’API AWS IoT Core, CreateTopicRule, ou la commande AWS CLI, create-topic-rule, pour créer une règle pour la destination.

    aws iot create-topic-rule --rule-name Sidewalkrule \ --topic-rule-payload file://myrule.json
  3. Créer une destination

    Créez une destination qui associe votre appareil Sidewalk à la règle IoT qui le traite pour une utilisation avec d’autres AWS services. Vous pouvez ajouter une destination à l’aide du centre de destinations de la console AWS IoT, de l’opération d’API CreateDestination ou de la commande CLI create-destination.

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

Étape 3 : Mettre en service et enregistrer le terminal

À l’aide des commandes Python, vous pouvez mettre en service et enregistrer votre terminal. Le script de mise en service utilise les données JSON de l’appareil que vous avez obtenues pour générer une image binaire de fabrication, qui est ensuite flashée sur la carte matérielle. Vous enregistrez ensuite votre terminal pour le connecter à la plate-forme matérielle. Pour plus d’informations, consultez la section Mise en service et enregistrement de votre terminal dans la documentation Amazon Sidewalk.

Note

Lorsque vous enregistrez votre terminal Sidewalk, votre passerelle doit être connectée à Amazon Sidewalk, et votre passerelle et votre appareil doivent être à portée l’un de l’autre.

Étape 4 : Se connecter à un appareil Sidewalk et échanger des messages

Une fois que vous avez enregistré votre terminal, vous pouvez le connecter et commencer à échanger des messages et des données de l’appareil.

  1. Connectez votre terminal Sidewalk

    Connectez le HDK à votre ordinateur et suivez les instructions fournies par la documentation du fournisseur pour vous connecter à votre HDK. Pour plus d’informations, consultez la section Mise en service et enregistrement de votre terminal dans la documentation Amazon Sidewalk.

  2. Afficher et échanger des messages

    Utilisez le client MQTT pour vous abonner à la rubrique spécifiée dans la règle et afficher le message reçu. Vous pouvez également utiliser l’opération d’API SendDataToWirelessDevice ou la commande CLI send-data-to-wireless-device pour envoyer un message en liaison descendante à votre appareil et vérifier l’état de la connectivité.

    (Facultatif) Vous pouvez activer l’événement d’état d’envoie du message pour vérifier si le message de liaison descendante a bien été reçu.

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