Verbinden Ihres Sidewalk-Geräts und Anzeigen des Uplink-Metadatenformats - AWS IoT Wireless

Verbinden Ihres Sidewalk-Geräts und Anzeigen des Uplink-Metadatenformats

In diesem Tutorial verwenden Sie den MQTT-Testclient, um die Konnektivität zu testen und die Nachrichten anzuzeigen, die zwischen Ihrem Endgerät und der AWS Cloud ausgetauscht werden. Abonnieren Sie im MQTT-Testclient das Thema, das Sie bei der Erstellung der IoT-Regel für Ihr Ziel angegeben haben, um Nachrichten zu empfangen. Sie können mithilfe der SendDataToWirelessDevice-API-Operation auch eine Downlink-Nachricht von AWS IoT Core für Amazon Sidewalk an Ihr Gerät senden. Sie können überprüfen, ob die Nachricht verschickt wurde, indem Sie die Benachrichtigung über den Nachrichtenübermittlungsstatus aktivieren.

Anmerkung

Informationen zum Verbinden und Einrichten Ihrer Hardwareplattform finden Sie unter Bereitstellen und Registrieren Ihres Endgeräts und Einrichten des Hardware Development Kits (HDK) in der Dokumentation zu Amazon Sidewalk.

Verwenden Sie die SendDataToWirelessDevice-API-Operation oder den send-data-to-wireless-device-CLI-Befehl, um Downlink-Nachrichten von AWS IoT Core für Amazon Sidewalk an Ihr Sidewalk-Endgerät zu senden. Das folgende Beispiel veranschaulicht die Ausführung dieses Befehls. Die Nutzlastdaten sind die zu sendende Binärdatei mit base64-Verschlüsselung.

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

Im Folgenden sehen Sie ein Beispiel für die Ausführung dieses Befehls. Dabei handelt es sich um eine ID der Downlink-Nachricht, die an das Gerät gesendet wurde.

{ MessageId: "6011dd36-0043d6eb-0072-0008" }
Anmerkung

Die SendDataToWirelessDevice-API kann eine Nachrichten-ID zurückgeben, aber die Nachricht wird möglicherweise nicht erfolgreich übermittelt. Aktivieren Sie die Ereignisse zum Nachrichtenübermittlungsstatus für Ihre Sidewalk-Konten und -Geräte, um den Status der Nachricht zu überprüfen, die an das Gerät gesendet wurde. Weitere Informationen über die Aktivierung dieses Ereignisses finden Sie unter Ereignisbenachrichtigungen für Sidewalk-Ressourcen. Weitere Informationen zu diesem Ereignistyp finden Sie unter Nachrichtenübermittlungsereignisse.

Sobald Ihr Gerät verbunden ist, können Sie das Thema abonnieren (z. B. project/sensor/observed), das Sie bei der Erstellung der Zielregel angegeben haben, und sich die Uplink-Nachrichten des Geräts ansehen.

Wenn Sie bei der Erstellung Ihres Ziels einen Themennamen angegeben haben, können Sie das Thema abonnieren, um Uplink-Nachrichten von Ihrem Endgerät zu überwachen. Wechseln Sie zum MQTT-Testclient auf der Seite Test der AWS IoT-Konsole auf, geben Sie den Themennamen ein (z. B. project/sensor/observed) und wählen Sie dann Abonnieren.

Das folgende Beispiel zeigt das Format der Uplink-Nachrichten, die von Sidewalk-Geräten an AWS IoT gesendet werden. Das WirelessMetadata enthält Metadaten zur Nachrichtenanforderung.

{ "PayloadData":"ZjRlNjY1ZWNlNw==", "WirelessDeviceId":"wireless_device_id", "WirelessMetadata":{ "Sidewalk":{ "CmdExStatus":"Cmd", "SidewalkId":"device_id", "Seq":0, "MessageType":"messageType" } } }

Die folgende Tabelle zeigt eine Definition der verschiedenen Parameter in den Uplink-Metadaten. Die device-id ist die ID des WLAN-Geräts, z. B. ABCDEF1234, und der messageType ist der Typ der Uplink-Nachricht, die vom Gerät empfangen wurde.

Sidewalk-Uplink-Metadatenparameter
Parameter Beschreibung Typ Erforderlich
PayloadData

Die Nutzlastdaten der Nachricht, die vom WLAN-Gerät gesendet wird.

String Ja
WirelessDeviceID Die Kennung des WLAN-Geräts, das die Daten sendet. String Ja
Sidewalk.CmdExStatus

Laufzeitstatus des Befehls. Nachrichten vom Typ Antwort müssen den Statuscode COMMAND_EXEC_STATUS_SUCCESS enthalten. Benachrichtigungen enthalten jedoch möglicherweise nicht den Statuscode.

Aufzählung Nein
Sidewalk.NackExStatus

Antwortstatus der negativen Quittung, der RADIO_TX_ERROR oder MEMORY_ERROR sein kann.

Zeichenfolgen-Array Nein