为组播和 FUOTA 配置准备设备
将无线设备添加到 适用于 LoRaWAN 的 AWS IoT Core 时,您可以使用控制台或 CLI 准备无线设备进行多播设置和 FUOTA 配置。如果您是第一次执行这一配置,我们建议您使用控制台。要管理多播组并从组中添加或删除多个设备,我们建议使用 CLI 管理大量资源。
GenAppKey 和 FPort
添加无线设备时,请先配置下列参数,然后再将您的设备添加到多播组或执行 FUOTA。在配置这些参数之前,请确保您的设备支持 FUOTA 和组播,并且无线设备规格为 OTAA v1.1
或 OTAAv1.0.x
。
-
GenAppKey
:对于支持 LoRaWAN 1.0.x 版本的设备以及要使用多播组的设备,GenAppKey
是具体设备的根密钥,从中派生多播组的会话密钥。注意
对于使用无线规格
OTAA v1.1
的 LoRaWAN 设备,AppKey
的用途和GenAppKey
相同。要设置参数来启动数据传输,适用于 LoRaWAN 的 AWS IoT Core 与终端设备一起分发会话密钥。有关 LoRaWAN 版本的更多信息,请参阅 LoRaWAN 版本。
注意
适用于 LoRaWAN 的 AWS IoT Core 存储了您以加密格式提供的
GenAppKey
信息。 -
FPorts
:根据对 FUOTA 和多播组的 LoRaWAN 规范,适用于 LoRaWAN 的 AWS IoT Core 为FPorts
参数的以下字段分配默认值。如果您已经分配了下列任意FPort
值,您可以选择一个不同的可用值,从 1 到 223。-
Multicast
:200该
FPort
值用于多播组。 -
FUOTA
:201该
FPort
值用于 FUOTA。 -
ClockSync
:202该
FPort
值用于时钟同步。
-
多播和 FUOTA 的设备配置文件
在多播会话开始时,使用 B 类或 C 类分发窗口向组中的设备发送下行链路消息。为多播和 FUOTA 添加的设备必须支持 B 类或 C 类操作模式。根据您的设备支持的设备类别,选择启用 B 类或 C 类模式之一或两种模式的设备配置文件。
有关设备配置文件的更多信息,请参阅 将配置文件添加到 适用于 LoRaWAN 的 AWS IoT Core。
使用控制台为多播和 FUOTA 做好设备准备
要使用控制台指定多播设置的 FPort 和 GenAppKey 参数和 FUOTA,请执行以下操作:
-
导航到 AWS IoT 控制台的设备中心
然后选择添加无线设备。 -
选择无线设备规格。您的设备必须使用 OTAA 进行激活。选择 OTAA v1.0.x 或 OTAA v1.1 时,出现 FUOTA 配置-可选。
-
输入无线设备的 EUI(扩展唯一标识符)参数。
-
展开FUOTA 配置-可选部分然后选择该设备支持无线固件更新 (FUOTA)。现在,您可以输入多播、FUOTA 和时钟同步的 FPort 值。如果针对无线设备规格您选择了
OTAA v1.0.x
,请输入 GenAppKey。 -
通过选择您的个人资料和路由消息目标,将您的设备添加到 适用于 LoRaWAN 的 AWS IoT Core。对于链接到设备的设备配置文件,请确保选择支持 B 类或支持 C 类模式,或选择两种模式。
注意
要指定 FUOTA 配置参数,您必须使用 AWS IoT 控制台的设备中心
有关无线设备规格和登记设备的更多信息,请参阅 将您的无线设备添加到 适用于 LoRaWAN 的 AWS IoT Core。
注意
您只能在创建无线设备时指定这些参数。更新现有设备时无法更改或指定参数。
使用 API 操作为多播和 FUOTA 准备设备
要使用多播组或执行 FUOTA,请使用 CreateWirelessDevice
API 操作或 create-wireless-device
CLI 命令确认这些参数。除了指定应用程序密钥和 FPort 参数之外,请确保链接到设备的设备配置文件支持 B 类或 C 类模式或两者都支持。
您可以将 input.json
文件作为 create-wireless-device
命令的输入。
aws iotwireless create-wireless-device \ --cli-input-json file://input.json
其中:
input.json 的内容
{ "Description": "My LoRaWAN wireless device" "DestinationName": "IoTWirelessDestination" "LoRaWAN": { "DeviceProfileId": "ab0c23d3-b001-45ef-6a01-2bc3de4f5333", "ServiceProfileId": "fe98dc76-cd12-001e-2d34-5550432da100", "FPorts": { "ClockSync": 202, "Fuota": 201, "Multicast": 200 }, "OtaaV1_0_x": { "AppKey": "3f4ca100e2fc675ea123f4eb12c4a012", "AppEui": "b4c231a359bc2e3d", "GenAppKey": "01c3f004a2d6efffe32c4eda14bcd2b4" }, "DevEui": "ac12efc654d23fc2" }, "Name": "SampleIoTWirelessThing" "Type": LoRaWAN }
有关您可以使用的 CLI 的信息,请参阅 AWS CLI 参考。
注意
指定这些参数的值之后,无法通过 UpdateWirelessDevice
API 操作进行更新。相反,您可以使用参数 GenAppKey
和 FPorts
的值创建新的设备。
要获取这些参数指定值的信息,可以使用 GetWirelessDevice
API 操作或 get-wireless-device
CLI 命令。
后续步骤
配置参数后,您可以创建多播组和 FUOTA 任务来发送下行链路有效负载或更新 LoRaWAN 设备的固件。
-
有关创建多播组的更多信息,请参阅 创建多播组并将设备添加到组。
-
有关创建 FUOTA 任务的更多信息,请参阅 创建 FUOTA 任务并提供固件映像。