

# Nozioni di base sull'utilizzo di AWS IoT Core per Amazon Sidewalk
<a name="sidewalk-getting-started"></a>

In questa sezione viene illustrato come iniziare a connettere i dispositivi finali Sidewalk ad AWS IoT Core per Amazon Sidewalk. Viene descritto come connettere un dispositivo finale ad Amazon Sidewalk e scambiare messaggi tra di essi. Verranno fornite informazioni sull'applicazione di esempio Sidewalk e una panoramica su come eseguire il monitoraggio dei sensori utilizzando AWS IoT Core per Amazon Sidewalk. L'applicazione di esempio fornisce un pannello di controllo per visualizzare e monitorare le modifiche alla temperatura del sensore.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/iot-wireless/latest/developerguide/images/sidewalk-getting-started.png)


I seguenti argomenti ti forniscono le nozioni di base per iniziare a utilizzare AWS IoT Core per Amazon Sidewalk.

**Topics**
+ [Prova del tutorial sul monitoraggio dei sensori](sidewalk-gs-tutorial.md)
+ [Introduzione all'onboarding dei dispositivi Sidewalk](sidewalk-gs-workflow.md)

# Prova del tutorial sul monitoraggio dei sensori
<a name="sidewalk-gs-tutorial"></a>

In questa sezione viene fornita una panoramica dell'applicazione di esempio Amazon Sidewalk su GitHub che mostra come monitorare la temperatura di un sensore. In questo tutorial vengono utilizzati script che creano in modo programmatico le risorse wireless richieste, effettuano il provisioning del dispositivo finale e memorizzano nella flash i file binari, quindi collegano il dispositivo finale all'applicazione. Gli script che utilizzano AWS CLI e i comandi Python creano uno stack AWS CloudFormation e risorse wireless, quindi memorizzano nella flash i file binari e distribuiscono l'applicazione sul kit di sviluppo dell'hardware (HDK).

Nel diagramma seguente vengono illustrati i passaggi coinvolti quando si esegue l'[applicazione di esempio](https://github.com/aws-samples/aws-iot-core-for-amazon-sidewalk-sample-app) e si collega il dispositivo finale Sidewalk all'applicazione. Per istruzioni dettagliate, inclusi i prerequisiti e la configurazione per questo tutorial, consultare il [documento README](https://github.com/aws-samples/amazon-sidewalk-sample-iot-app/blob/main/README.md) in *GitHub*.

![\[alt text not found\]](http://docs.aws.amazon.com/it_it/iot-wireless/latest/developerguide/images/sidewalk-sensor-monitoring.png)


# Introduzione all'onboarding dei dispositivi Sidewalk
<a name="sidewalk-gs-workflow"></a>

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](setting-up-iotwireless.md#wireless-onboard-prereq).

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](iot-sidewalk-onboard.md).

**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](https://docs.sidewalk.amazon/provisioning/) nella *documentazione di Amazon Sidewalk*.

**Topics**
+ [Fase 1: Aggiunta del dispositivo Sidewalk ad AWS IoT Core per Amazon Sidewalk](#iot-sidewalk-qsg-step1)
+ [Fase 2: Creazione di una destinazione per il dispositivo finale Sidewalk](#iot-sidewalk-qsg-step2)
+ [Fase 3: Effettuare il provisioning e registrare il dispositivo finale](#iot-sidewalk-qsg-step2)
+ [Fase 4: Connessione a un dispositivo finale Sidewalk e scambio di messaggi](#iot-sidewalk-qsg-step4)

## Fase 1: Aggiunta del dispositivo Sidewalk ad AWS IoT Core per Amazon Sidewalk
<a name="iot-sidewalk-qsg-step1"></a>

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](iot-sidewalk-create-device.md).

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](https://console.aws.amazon.com/iot/home#/wireless/profiles?tab=sidewalk) nella console AWS IoT e scegli **Crea profilo** oppure utilizza l'operazione API [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateDeviceProfile.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateDeviceProfile.html) o il comando dell'interfaccia a riga di comando [https://docs.aws.amazon.com/cli/latest/reference/create-device-profile.html](https://docs.aws.amazon.com/cli/latest/reference/create-device-profile.html) 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 {}
   ```

1. 

**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](https://console.aws.amazon.com/iot/home#/wireless/devices?tab=sidewalk) nella console AWS IoT e scegli **Provisioning del dispositivo** oppure utilizza l'operazione API [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateWirelessDevice.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateWirelessDevice.html) o il comando dell'interfaccia a riga di comando [https://docs.aws.amazon.com/cli/latest/reference/create-wireless-device.html](https://docs.aws.amazon.com/cli/latest/reference/create-wireless-device.html) 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"
   ```

1. 

**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](https://console.aws.amazon.com/iot/home#/wireless/devices?tab=sidewalk) per scaricare un file JSON combinato per il dispositivo finale Sidewalk.
   + Se stai usando le operazioni API, archivia le risposte ottenute dalle operazioni API [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetDeviceProfile.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetDeviceProfile.html) e [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateWirelessDevice.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateWirelessDevice.html) 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
<a name="iot-sidewalk-qsg-step2"></a>

Di seguito viene fornita una panoramica della procedura che verrà eseguita per aggiungere la destinazione ad AWS IoT Core per Amazon Sidewalk. Utilizzando la Console di gestione AWS, 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](sidewalk-destination-rule-role.md).

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 [https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html](https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateRole.html) o il comando dell'interfaccia a riga di comando [https://docs.aws.amazon.com/cli/latest/reference/iam/create-role](https://docs.aws.amazon.com/cli/latest/reference/iam/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
   ```

1. 

**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, [https://docs.aws.amazon.com/iot/latest/apireference/API_CreateTopicRule.html](https://docs.aws.amazon.com/iot/latest/apireference/API_CreateTopicRule.html) o il comando AWS CLI, [https://docs.aws.amazon.com/cli/latest/reference/iot/create-topic-rule.html](https://docs.aws.amazon.com/cli/latest/reference/iot/create-topic-rule.html), per creare una regola per la destinazione.

   ```
   aws iot create-topic-rule --rule-name Sidewalkrule \ 
       --topic-rule-payload file://myrule.json
   ```

1. 

**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](https://console.aws.amazon.com/iot/home#/wireless/destinations) della console AWS IoT, l'operazione API [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateDestination.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateDestination.html) o il comando dell'interfaccia a riga di comando [https://docs.aws.amazon.com/cli/latest/reference/create-destination.html](https://docs.aws.amazon.com/cli/latest/reference/create-destination.html). 

   ```
   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
<a name="iot-sidewalk-qsg-step2"></a>

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](https://docs.sidewalk.amazon/provisioning/) 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
<a name="iot-sidewalk-qsg-step4"></a>

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](https://docs.sidewalk.amazon/provisioning/) nella *documentazione di Amazon Sidewalk*.

1. 

**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 [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_SendDataToWirelessDevice.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_SendDataToWirelessDevice.html) o il comando della riga di comando [https://docs.aws.amazon.com/cli/latest/reference/iotwireless/send-data-to-wireless-device.html](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/send-data-to-wireless-device.html) 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}
   ```