Cómo utilizar la compatibilidad de red pública - AWS IoT Wireless

Cómo utilizar la compatibilidad de red pública

Para habilitar la compatibilidad de red pública de Everynet, debe habilitar algunos parámetros de itinerancia al crear un perfil de servicio. En esta versión beta, estos parámetros están disponibles cuando se utiliza la API de AWS IoT Wireless o la AWS CLI. En las siguientes secciones, se muestran los parámetros que debe habilitar, así como el modo de habilitar la red pública mediante la AWS CLI.

nota

Puede habilitar la compatibilidad con redes públicas solo al crear un nuevo perfil de servicio. No puede actualizar un perfil existente para habilitar la red pública con estos parámetros.

Parámetros de itinerancia

Especifique los siguientes parámetros al crear un perfil de servicio para su dispositivo. Especifique estos parámetros cuando añada un perfil de servicio desde el hub Perfiles de la consola, con la operación API CreateServiceProfile de AWS IoT Wireless o el comando create-service-profile de la AWS CLI.

nota

AWS IoT Core para LoRaWAN no admite la transferencia de datos en itinerancia. Al crear el perfil de servicio, no se puede habilitar el parámetro HrAllowed que especifica si se debe utilizar el traspaso de itinerancia.

  • Activación de itinerancia permitida (RaAllowed): este parámetro especifica si se debe habilitar la activación de itinerancia. La activación de itinerancia permite que un dispositivo final se active bajo la cobertura de un vNS. Al utilizar la característica de itinerancia, RaAllowed se debe establecer en true.

  • Itinerancia pasiva permitida (PrAllowed): este parámetro especifica si se debe habilitar la itinerancia pasiva. Al utilizar la característica de itinerancia, PrAllowed se debe establecer en true.

Habilitar la compatibilidad con redes públicas para dispositivos

Para habilitar la compatibilidad de la red LoRaWAN pública en sus dispositivos, ejecute el siguiente procedimiento.

nota

Puede habilitar la capacidad de red pública solo para los dispositivos OTAA. Esta característica no es compatible con los dispositivos que utilizan ABP como método de activación.

  1. Crear un perfil de servicio con parámetros de itinerancia

    Cree un perfil de servicio activando los parámetros de itinerancia.

    nota

    Si desea crear un perfil de dispositivo para el dispositivo que va a asociar a este perfil de servicio, le recomendamos que especifique un valor grande para el parámetro RxDelay1, al menos superior a 2 segundos.

    • Mediante la consola de AWS IoT

      Vaya al hub de perfiles de la consola de AWS IoT y selecciona Agregar perfil de servicio. Al crear el perfil, seleccione Habilitar red pública.

    • Mediante la API de AWS IoT Wireless

      Para habilitar la itinerancia al crear un perfil de servicio, utilice la operación API CreateServiceProfile o el comando create-service-profile de la CLI, como se muestra en el ejemplo siguiente.

      aws iotwireless create-service-profile \ --region us-east-1 \ --name roamingprofile1 \ --lorawan '{"AddGwMetadata":true,"PrAllowed":true,"RaAllowed":true}'

      La ejecución de este comando devuelve el ARN y el ID del perfil de servicio como salida.

      { "Arn": "arn:aws:iotwireless:us-east-1:123456789012:ServiceProfile/12345678-a1b2-3c45-67d8-e90fa1b2c34d", "Id": "12345678-a1b2-3c45-67d8-e90fa1b2c34d" }
  2. Comprobar los parámetros de itinerancia en el perfil de servicio

    Para comprobar los parámetros de itinerancia que especificó, puede ver el perfil de servicio en la consola o mediante el comando de CLI get-service-profile, como se ilustra en el ejemplo siguiente.

    • Mediante la consola de AWS IoT

      Vaya al hub de perfiles de la consola AWS IoT y elija el perfil que ha creado. En la pestaña Configuración del perfil de la página de detalles, verá que RaAllowed y PrAllowed están establecidos en true.

    • Mediante la API de AWS IoT Wireless

      Para ver los parámetros de itinerancia que ha habilitado, utilice la operación de API GetServiceProfile o el comando de CLI get-service-profile, como se ilustra en el ejemplo siguiente.

      aws iotwireless get-service-profile \ --region us-east-1 \ --id 12345678-a1b2-3c45-67d8-e90fa1b2c34d

      Al ejecutar este comando, se muestran los detalles del perfil de servicio como salida, incluidos los valores de los parámetros de itinerancia, RaAllowed y PrAllowed.

      { "Arn": "arn:aws:iotwireless:us-east-1:123456789012:ServiceProfile/12345678-a1b2-3c45-67d8-e90fa1b2c34d", "Id": "12345678-a1b2-3c45-67d8-e90fa1b2c34d", "Name": "roamingprofile1" "LoRaWAN": { "UlRate": 60, "UlBucketSize": 4096, "DlRate": 60, "DlBucketSize": 4096, "AddGwMetadata": true, "DevStatusReqFreq": 24, "ReportDevStatusBattery": false, "ReportDevStatusMargin": false, "DrMin": 0, "DrMax": 15, "PrAllowed": true, "RaAllowed": true, "NwkGeoLoc": false, "TargetPer": 5, "MinGwDiversity": 1 } }
  3. asociar el perfil de servicio a los dispositivos

    Adjunte el perfil de servicio que creó con los parámetros de itinerancia a sus dispositivos finales. También puede crear un perfil de dispositivo y agregar un destino para sus dispositivos inalámbricos. Utilizará este destino para enrutar los mensajes de enlace ascendente que se envíen desde su dispositivo. Para obtener más información sobre cómo crear perfiles de dispositivos y un destino, consulte Agregar perfiles de dispositivos y Agregar destinos a AWS IoT Core para LoRaWAN.

    • Incorporar nuevos dispositivos

      Si aún no ha incorporado sus dispositivos, debe especificar este perfil de servicio para que se utilice al agregar su dispositivo a AWS IoT Core para LoRaWAN. El siguiente comando muestra cómo puede usar el comando de CLI create-wireless-device para agregar un dispositivo con el ID del perfil de servicio que creó. Para obtener información sobre cómo agregar un perfil de servicio mediante la consola, consulte Agregar las especificaciones de un dispositivo inalámbrico a AWS IoT Core para LoRaWAN con la consola.

      aws iotwireless create-wireless-device --cli-input-json file://createdevice.json

      A continuación se muestra el contenido del archivo createdevice.json.

      Contenido de createdevice.json

      { "Name": "DeviceA", "Type": LoRaWAN, "DestinationName": "RoamingDestination1", "LoRaWAN": { "DeviceProfileId": "ab0c23d3-b001-45ef-6a01-2bc3de4f5333", "ServiceProfileId": "12345678-a1b2-3c45-67d8-e90fa1b2c34d", "OtaaV1_1": { "AppKey": "3f4ca100e2fc675ea123f4eb12c4a012", "JoinEui": "b4c231a359bc2e3d", "NwkKey": "01c3f004a2d6efffe32c4eda14bcd2b4" }, "DevEui": "ac12efc654d23fc2" }, }

      El resultado de ejecutar este comando produce el ARN y el ID del dispositivo inalámbrico como salida.

      { "Arn": "arn:aws:iotwireless:us-east-1:123456789012:WirelessDevice/1ffd32c8-8130-4194-96df-622f072a315f", "Id": "1ffd32c8-8130-4194-96df-622f072a315f" }
    • Actualizar dispositivos existentes

      Si ya ha incorporado sus dispositivos, puede actualizar los dispositivos inalámbricos existentes para usar este perfil de servicio. El siguiente comando muestra cómo puede usar el comando de CLI update-wireless-device para actualizar un dispositivo mediante el ID del perfil de servicio que creó.

      aws iotwireless update-wireless-device \ --id "1ffd32c8-8130-4194-96df-622f072a315f" \ --service-profile-id "12345678-a1b2-3c45-67d8-e90fa1b2c34d" \ --description "Using roaming service profile A"

      Este comando no proporciona ninguna salida. Puede usar la API de GetWirelessDevice o el comando de CLI get-wireless-device para obtener la información actualizada.

  4. Conectar un dispositivo a la nube con Everynet

    Como la itinerancia está habilitada, su dispositivo ahora debe realizar una unión para obtener un nuevo DevAddr. Cuando utiliza OTAA, su dispositivo LoRaWAN envía una solicitud de unión y el servidor de red puede aceptarla. Luego, puede conectarse a Nube de AWS utilizando la cobertura de red proporcionada por Everynet. Para obtener instrucciones sobre cómo realizar el procedimiento de activación o conexión con el dispositivo, consulte la documentación del dispositivo.

    nota
    • Puede habilitar la capacidad de itinerancia y conectarse a una red pública solo para los dispositivos que utilizan OTAA como método de activación. No se admiten los dispositivos ABP. Para obtener instrucciones sobre cómo realizar el procedimiento de activación o conexión con el dispositivo, consulte la documentación del dispositivo. Consulte Modos de activación.

    • Para deshabilitar la capacidad de itinerancia de sus dispositivos, puede desasociarlos de este perfil de servicio y, a continuación, asociarlos a otro perfil de servicio que tenga los parámetros de itinerancia configurados en false. Tras cambiar a este perfil de servicio, los dispositivos deben realizar otra conexión para que no sigan funcionando en la red pública.

  5. Intercambiar mensajes de enlace ascendente y descendente

    Una vez que el dispositivo se haya unido a AWS IoT Core para LoRaWAN, podrá empezar a intercambiar mensajes entre el dispositivo y la nube.

    • Ver los mensajes de enlace ascendente

      Cuando envía mensajes de enlace ascendente desde sus dispositivos, AWS IoT Core para LoRaWAN entrega estos mensajes a su Cuenta de AWS utilizando el destino que configuró anteriormente. Estos mensajes se enviarán desde su dispositivo a la nube a través de la red de Everynet.

      Puede ver los mensajes con el nombre de la regla de AWS IoT o utilizar el cliente de MQTT para suscribirse al tema de MQTT que se especificó al crear el destino. Para obtener más información sobre el nombre de la regla y otros detalles del destino que especifique, consulte Agregar un destino mediante la consola.

      Para obtener más información sobre el formato del mensaje, consulte Ver el formato de los mensajes de enlace ascendente enviados desde dispositivos LoRaWAN.

    • Enviar mensajes de enlace descendente

      Puede poner en cola los mensajes de enlace descendente y enviarlos a sus dispositivos desde la consola o mediante el comando de la API de AWS IoT Wireless, SendDataToWirelessDevice, o el comando de AWS CLI, send-data-to-wireless-device. Para obtener más información sobre la puesta en cola o el envío de mensajes de enlace descendente, consulte Colocar en cola los mensajes de enlace descendente para enviarlos a dispositivos LoRaWAN.

      El código siguiente muestra un ejemplo de cómo se puede enviar un mensaje de enlace descendente mediante el comando de CLI send-data-to-wireless-device. Debe especificar el ID del dispositivo inalámbrico que recibirá los datos, la carga, si se debe utilizar el modo de reconocimiento y los metadatos inalámbricos.

      aws iotwireless send-data-to-wireless-device \ --id "1ffd32c8-8130-4194-96df-622f072a315f" \ --transmit-mode "1" \ --payload-data "SGVsbG8gVG8gRGV2c2lt" \ --wireless-metadata LoRaWAN={FPort=1}

      El resultado de la ejecución de este comando genera un MessageId para el mensaje de enlace descendente.

      nota

      En algunos casos, incluso si recibe el MessageId, los paquetes pueden descartarse. Para obtener información sobre cómo solucionar estas situaciones y resolverlas, consulte Solucionar los errores de la cola de mensajes del enlace descendente.

      { MessageId: "6011dd36-0043d6eb-0072-0008" }
    • Ver la información de cobertura

      Una vez que haya habilitado la red pública, podrá ver la información de cobertura de la red en la consola de AWS IoT. Vaya al hub de cobertura de la consola de AWS IoT y, a continuación, busque ubicaciones para ver la información de cobertura de sus dispositivos en el mapa.

      nota

      Esta característica utiliza Amazon Location Service para mostrar la información de cobertura de sus dispositivos en un mapa de ubicación de Amazon. Antes de usar los mapas de ubicación de Amazon, consulte los términos y condiciones de Amazon Location Service. Tenga en cuenta que AWS puede transmitir sus consultas de API al proveedor de datos externo que elija, que puede situarse fuera de la Región de AWS que está utilizando actualmente. Para obtener más información, consulte los Términos del servicio de AWS.