Introduzione all'onboarding dei dispositivi Sidewalk - Wireless AWS IoT

Introduzione all'onboarding dei dispositivi Sidewalk

In questa sezione viene illustrato come eseguire l'onboarding dei dispositivi finali Sidewalk in AWS IoT Core per Amazon Sidewalk. Per eseguire l'onboarding dei dispositivi, aggiungi innanzitutto il dispositivo Sidewalk, effettua il provisioning del dispositivo e la registrazione, quindi connetti l'hardware all'applicazione cloud. Prima di eseguire questo tutorial, rivedi e completa Installazione di Python e della AWS CLI.

Nella procedura seguente viene illustrato come eseguire l'onboarding e collegare i dispositivi finali Sidewalk in AWS IoT Core per Amazon Sidewalk. Se desideri eseguire l'onboarding dei dispositivi utilizzando AWS CLI, puoi fare riferimento ai comandi di esempio forniti in questa sezione. Per informazioni sull'onboarding dei dispositivi mediante la console AWS IoT, consultare Connessione a AWS IoT Core per Amazon Sidewalk.

Importante

Per eseguire l'intero flusso di lavoro di onboarding, viene anche effettuato il provisioning e la registrazione del dispositivo finale e il collegamento del kit di sviluppo dell'hardware (HDK). Per ulteriori informazioni, consultare la pagina relativa al provisioning e alla registrazione del dispositivo finale nella documentazione di Amazon Sidewalk.

Fase 1: Aggiunta del dispositivo Sidewalk ad AWS IoT Core per Amazon Sidewalk

Di seguito viene fornita una panoramica della procedura eseguita per aggiungere il dispositivo finale Sidewalk ad AWS IoT Core per Amazon Sidewalk. Archivia le informazioni ottenute sul profilo del dispositivo e sul dispositivo wireless che viene creato. Utilizzerai queste informazioni per effettuare il provisioning e la registrazione del dispositivo finale. Per ulteriori informazioni su questa procedura, consultare Aggiunta del dispositivo ad AWS IoT Core per Amazon Sidewalk.

  1. Creazione di un profilo del dispositivo

    Crea un profilo del dispositivo contenente le configurazioni condivise per i dispositivi Sidewalk. Durante la creazione del profilo, specifica un name per il profilo come una stringa alfanumerica. Per creare un profilo, vai alla scheda Sidewalk dell'hub Profili nella console AWS IoT e scegli Crea profilo oppure utilizza l'operazione API CreateDeviceProfile o il comando dell'interfaccia a riga di comando create-device-profile come mostrato in questo esempio.

    // Add your device profile using a name and the sidewalk object. aws iotwireless create-device-profile --name sidewalk_profile --sidewalk {}
  2. Creazione del dispositivo finale Sidewalk

    Crea il tuo dispositivo finale Sidewalk con AWS IoT Core per Amazon Sidewalk. Specifica un nome destinazione e l'ID del profilo del dispositivo ottenuto nella fase precedente. Per aggiungere un dispositivo, vai alla scheda Sidewalk dell'hub Dispositivi nella console AWS IoT e scegli Provisioning del dispositivo oppure utilizza l'operazione API CreateWirelessDevice o il comando dell'interfaccia a riga di comando create-wireless-device come mostrato in questo esempio.

    Nota

    Specifica un nome per la destinazione che sia univoco per Account AWS e Regione AWS. Lo stesso nome destinazione verrà utilizzato quando si aggiunge la destinazione ad AWS IoT Core per 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. Ottenere informazioni sul profilo del dispositivo e sul dispositivo wireless

    Ottieni le informazioni sul profilo del dispositivo e sul dispositivo wireless come un file JSON. Il file JSON contiene informazioni sui dettagli del dispositivo, i certificati dei dispositivi, le chiavi private, DeviceTypeId e il numero di serie di produzione Sidewalk (SMSN).

    • Se stai usando la console AWS IoT, puoi utilizzare la scheda Sidewalk dell'hub Dispositivi per scaricare un file JSON combinato per il dispositivo finale Sidewalk.

    • Se stai usando le operazioni API, archivia le risposte ottenute dalle operazioni API GetDeviceProfile e GetWirelessDevice come file JSON separati, ad esempio device_profile.json e 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

Fase 2: Creazione di una destinazione per il dispositivo finale Sidewalk

Di seguito viene fornita una panoramica della procedura che verrà eseguita per aggiungere la destinazione ad AWS IoT Core per Amazon Sidewalk. Utilizzando la AWS Management Console, le operazioni API Wireless AWS IoT o AWS CLI, esegui i seguenti passaggi per creare una regola AWS IoT e una destinazione. Puoi quindi eseguire la connessone alla piattaforma hardware e visualizzare e scambiare messaggi. Per un esempio di ruolo IAM e regola AWS IoT utilizzati per gli esempi AWS CLI di questa sezione, consultare Creazione di un ruolo IAM e della regola IoT per la destinazione.

  1. Creazione di un ruolo IAM

    Crea un ruolo IAM che concede l'autorizzazione AWS IoT Core per Amazon Sidewalk per inviare dati alla regola AWS IoT. Per creare il ruolo, utilizza l'operazione API CreateRole o il comando dell'interfaccia a riga di comando create-role. Puoi assegnate al ruolo il nome SidewalkRole.

    aws iam create-role --role-name lambda-ex \ --assume-role-policy-document file://lambda-trust-policy.json
  2. Creazione di una regola per la destinazione

    Crea una regola AWS IoT che elabora i dati del dispositivo e specifica l'argomento in cui vengono pubblicati i messaggi. I messaggi su questo argomento verranno visualizzati dopo la connessione alla piattaforma hardware. Utilizza l'operazione API AWS IoT Core, CreateTopicRule o il comando AWS CLI, create-topic-rule, per creare una regola per la destinazione.

    aws iot create-topic-rule --rule-name Sidewalkrule \ --topic-rule-payload file://myrule.json
  3. Creazione di una destinazione

    Crea una destinazione che associa il dispositivo Sidewalk alla regola IoT utilizzata per elaborarlo per l'uso con altri Servizi AWS. Puoi aggiungere una destinazione utilizzando l'hub Destinazioni della console AWS IoT, l'operazione API CreateDestination o il comando dell'interfaccia a riga di comando create-destination.

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

Fase 3: Effettuare il provisioning e registrare il dispositivo finale

Utilizzando i comandi Python, è possibile effettuare il provisioning e la registrazione del dispositivo finale. Lo script di provisioning utilizza i dati JSON del dispositivo ottenuti per generare un'immagine binaria di produzione, che viene memorizzata nella flash sulla scheda hardware. Il dispositivo finale viene quindi registrato per la connessione alla piattaforma hardware. Per ulteriori informazioni, consultare la pagina relativa al provisioning e alla registrazione del dispositivo finale nella documentazione di Amazon Sidewalk.

Nota

Durante la registrazione del dispositivo finale Sidewalk, il gateway deve fornire il consenso esplicito ad Amazon Sidewalk e il gateway e il dispositivo devono trovarsi entro una determinata distanza tra loro.

Fase 4: Connessione a un dispositivo finale Sidewalk e scambio di messaggi

Dopo aver registrato il dispositivo finale, è possibile connetterlo e iniziare a scambiare messaggi e dati del dispositivo.

  1. Connessione del dispositivo finale Sidewalk

    Collega l'HDK al computer e segui le istruzioni fornite dalla documentazione del fornitore per connetterti all'HDK. Per ulteriori informazioni, consultare la pagina relativa al provisioning e alla registrazione del dispositivo finale nella documentazione di Amazon Sidewalk.

  2. Visualizzazione e scambio di messaggi

    Utilizza il client MQTT per effettuare la sottoscrizione all'argomento specificato nella regola e visualizzare il messaggio ricevuto. Puoi anche utilizzare l'operazione API SendDataToWirelessDevice o il comando della riga di comando send-data-to-wireless-device per inviare un messaggio in downlink al dispositivo e verificare lo stato della connettività.

    (Facoltativo) Puoi abilitare gli eventi sullo stato di consegna dei messaggi per verificare se il messaggio in downlink è stato ricevuto correttamente.

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