

# Administración de dispositivos con AWS IoT Core para LoRaWAN
<a name="lorawan-manage-end-devices"></a>

A continuación, se indican algunas consideraciones importantes a la hora de utilizar los dispositivos con AWS IoT Core para LoRaWAN. Para obtener información sobre cómo añadir un dispositivo a AWS IoT Core para LoRaWAN, consulte [Incorporar dispositivos a AWS IoT Core para LoRaWAN](lorawan-onboard-end-devices.md).

## Consideraciones sobre los dispositivos
<a name="lorawan-devices-criteria"></a>

A la hora de seleccionar un dispositivo con el que desee comunicarse con AWS IoT Core para LoRaWAN, tenga en cuenta lo siguiente.
+ Sensores disponibles
+ Capacidad de la batería
+ Consumo de energía
+ Coste
+ Tipo de antena y rango de transmisión

## Utilización de dispositivos con puertas de enlace aptas para su uso con AWS IoT Core para LoRaWAN
<a name="lorawan-devices-qualified-gateways"></a>

Los dispositivos que utilice se pueden emparejar con puertas de enlace inalámbricas aptas para su uso con AWS IoT Core para LoRaWAN. Puede encontrar estas puertas de enlace y kits para desarrolladores en el [Partner Device Catalog de AWS](https://devices.amazonaws.com/search?page=1&sv=iotclorawan). También recomendamos que considere la proximidad de estos dispositivos a sus puertas de enlace. Para obtener más información, consulte [Uso de puertas de enlace aptas de AWS Partner Device Catalog](lorawan-manage-gateways.md#lorawan-qualified-gateways).

## Versión de LoRaWAN
<a name="lorawan-lorawan-version"></a>

AWS IoT Core para LoRaWAN es compatible con todos los dispositivos que cumplen las especificaciones LoRaWAN 1.0.x o 1.1 que se ajustan al estándar de LoRa Alliance.

## Modos de activación
<a name="lorawan-activation-modes"></a>

Para que su dispositivo LoRaWAN pueda enviar datos de enlace ascendente, debe completar un proceso denominado procedimiento de *activación* o *unión*. Para activar su dispositivo, puede utilizar OTAA (Activación inalámbrica) o ABP (Activación mediante personalización). Le recomendamos que utilice OTAA para activar el dispositivo, ya que se generan nuevas claves de sesión para cada activación, lo que lo hace más seguro.

La especificación de su dispositivo inalámbrico se basa en la versión y el modo de activación de LoRaWAN, que determinan las claves raíz y las claves de sesión generadas para cada activación. Para obtener más información, consulte [Agregar las especificaciones de un dispositivo inalámbrico a AWS IoT Core para LoRaWAN con la consola](lorawan-end-devices-add.md#lorawan-end-device-spec-console).

## Clases de dispositivos
<a name="lorawan-device-classes"></a>

Los dispositivos LoRaWAN pueden enviar mensajes de enlace ascendente en cualquier momento. Escuchar los mensajes de enlace descendente consume capacidad de la batería y reduce su duración. El protocolo LoRaWAN especifica tres clases de dispositivos LoRaWAN.
+ Los dispositivos de clase A se encuentran en estado de suspensión la mayor parte del tiempo y escuchan los mensajes de enlace descendente solo durante un breve periodo de tiempo. En su mayoría, estos dispositivos son sensores que funcionan con baterías con una duración de hasta 10 años.
+ Los dispositivos de clase B pueden recibir mensajes en ranuras de enlace descendente programadas. Estos dispositivos son en su mayoría actuadores alimentados por batería.
+ Los dispositivos de clase C nunca se encuentran en estado de suspensión y escuchan continuamente los mensajes entrantes, por lo que no tardan mucho en recibirlos. Estos dispositivos son en su mayoría actuadores con alimentación red.

Para obtener más información sobre estas consideraciones relativas a los dispositivos inalámbricos, consulte los recursos que se mencionan en [Más información sobre LoRaWAN](what-is-lorawan.md#lorawan-learn-more).

**Topics**
+ [Consideraciones sobre los dispositivos](#lorawan-devices-criteria)
+ [Utilización de dispositivos con puertas de enlace aptas para su uso con AWS IoT Core para LoRaWAN](#lorawan-devices-qualified-gateways)
+ [Versión de LoRaWAN](#lorawan-lorawan-version)
+ [Modos de activación](#lorawan-activation-modes)
+ [Clases de dispositivos](#lorawan-device-classes)
+ [Llevar a cabo la velocidad de datos adaptativa (ADR) con AWS IoT Core para LoRaWAN](iot-lorawan-adr.md)
+ [Gestionar la comunicación entre los dispositivos LoRaWAN y AWS IoT](lorawan-device-cloud-communication.md)
+ [Gestionar el tráfico LoRaWAN desde redes de dispositivos LoRaWAN públicas (Everynet)](iot-lorawan-roaming.md)

# Llevar a cabo la velocidad de datos adaptativa (ADR) con AWS IoT Core para LoRaWAN
<a name="iot-lorawan-adr"></a>

Para optimizar el consumo de energía de transmisión del dispositivo y, al mismo tiempo, garantizar que los mensajes de los dispositivos finales se reciban en las puertas de enlace, AWS IoT Core para LoRaWAN utiliza la velocidad de datos adaptativa. La velocidad de datos adaptativa indica a los dispositivos finales que optimicen la velocidad de datos, la potencia de transmisión y el número de retransmisiones, al tiempo que intentan reducir la tasa de errores de los paquetes recibidos en las puertas de enlace. Por ejemplo, si el dispositivo final está ubicado cerca de las puertas de enlace, la velocidad de datos adaptativa reduce la potencia de transmisión y aumenta la velocidad de datos. 

**Topics**
+ [Cómo funciona la velocidad de datos adaptativa (ADR)](#iot-lorawan-adr-algorithm)
+ [Configurar los límites de velocidad de datos (CLI)](#iot-lorawan-adr-use)

## Cómo funciona la velocidad de datos adaptativa (ADR)
<a name="iot-lorawan-adr-algorithm"></a>

Para habilitar la ADR, el dispositivo debe configurar el bit ADR en el encabezado del marco. Una vez configurado el bit ADR, AWS IoT Core para LoRaWAN envía el comando MAC `LinkADRReq` y sus dispositivos responden con el comando `LinkADRAns` que incluye el estado ACK del comando ADR. Cuando los dispositivos envían el ACK con el comando ADR, se seguirán las instrucciones del ADR de AWS IoT Core para LoRaWAN y se ajustarán los valores de los parámetros de transmisión para obtener una velocidad de datos óptima. 

El algoritmo ADR de AWS IoT Core para LoRaWAN utiliza la información de la SINR del historial de metadatos del enlace ascendente para determinar la potencia de transmisión y la velocidad de datos óptimas que deben utilizar los dispositivos. El algoritmo utiliza los 20 mensajes de enlace ascendente más recientes que comienzan una vez que se establece el bit ADR en el encabezado del marco. Para determinar el número de retransmisiones, se utiliza la tasa de errores de paquetes (PER), que es un porcentaje del número total de paquetes que se pierden. Cuando utiliza este algoritmo, solo puede controlar el rango de velocidades de datos, es decir, los límites mínimo y máximo de las velocidades de datos.

## Configurar los límites de velocidad de datos (CLI)
<a name="iot-lorawan-adr-use"></a>

De forma predeterminada, AWS IoT Core para LoRaWAN realizará la ADR cuando configure el bit ADR en el encabezado del marco de su dispositivo LoRaWAN. Puede controlar los límites mínimo y máximo de la velocidad de datos al crear un perfil de servicio para sus dispositivos LoRaWAN mediante la operación API [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateServiceProfile.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateServiceProfile.html) de AWS IoT Wireless o el comando [https://docs.aws.amazon.com/cli/latest/reference/create-service-profile.html](https://docs.aws.amazon.com/cli/latest/reference/create-service-profile.html) de la AWS CLI.

**nota**  
No puede especificar los límites máximo y mínimo de velocidad de datos al crear un perfil de servicio desde Consola de administración de AWS. Solo se puede especificar mediante la API de AWS IoT Wireless o la AWS CLI.

Para especificar los límites mínimo y máximo de la velocidad de datos, utilice los parámetros `DrMin` y `DrMax` con la operación API `CreateServiceProfile`. Los límites máximo y mínimo de velocidad de datos predeterminados son 0 y 15. Por ejemplo, el siguiente comando de la CLI establece un límite de velocidad de datos mínimo de 3 y un límite máximo de 12.

```
aws iotwireless create-service-profile \ 
    --lorawan DrMin=3,DrMax=12
```

La ejecución de este comando genera un ID y un nombre de recurso de Amazon (ARN) para el perfil de servicio.

```
{
    "Arn": "arn:aws:iotwireless:us-east-1:123456789012:ServiceProfile/12345678-a1b2-3c45-67d8-e90fa1b2c34d",
    "Id": "12345678-a1b2-3c45-67d8-e90fa1b2c34d"
}
```

Puede obtener los valores de los parámetros especificados mediante la operación API [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetServiceProfile.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetServiceProfile.html) de AWS IoT Wireless o el comando [https://docs.aws.amazon.com/cli/latest/reference/get-service-profile.html](https://docs.aws.amazon.com/cli/latest/reference/get-service-profile.html) de la AWS CLI. 

```
aws iotwireless get-service-profile --id "12345678-a1b2-3c45-67d8-e90fa1b2c34d"
```

La ejecución de este comando genera los valores de los parámetros del perfil de servicio.

```
{
    "Arn": "arn:aws:iotwireless:us-east-1:651419225604:ServiceProfile/12345678-a1b2-3c45-67d8-e90fa1b2c34d",
    "Id": "12345678-a1b2-3c45-67d8-e90fa1b2c34d",
    "LoRaWAN": {
        "UlRate": 60,
        "UlBucketSize": 4096,
        "DlRate": 60,
        "DlBucketSize": 4096,
        "AddGwMetadata": false,
        "DevStatusReqFreq": 24,
        "ReportDevStatusBattery": false,
        "ReportDevStatusMargin": false,
        "DrMin": 3,
        "DrMax": 12,
        "PrAllowed": false,
        "HrAllowed": false,
        "RaAllowed": false,
        "NwkGeoLoc": false,
        "TargetPer": 5,
        "MinGwDiversity": 1
    }
}
```

Si ha creado varios perfiles, puede usar la operación API [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListServiceProfiles.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListServiceProfiles.html) o el comando [https://docs.aws.amazon.com/cli/latest/reference/list-service-profiles.html](https://docs.aws.amazon.com/cli/latest/reference/list-service-profiles.html) de la AWS CLI para enumerar los perfiles de servicio en su Cuenta de AWS; luego, puede usar la API `GetServiceProfile` o el comando `get-service-profile` de la CLI para recuperar el perfil de servicio para el que ha personalizado los límites de velocidad de datos. 

# Gestionar la comunicación entre los dispositivos LoRaWAN y AWS IoT
<a name="lorawan-device-cloud-communication"></a>

Una vez que haya conectado su dispositivo LoRaWAN con AWS IoT Core para LoRaWAN, sus dispositivos pueden empezar a enviar mensajes a la nube. Los mensajes de enlace ascendente son mensajes que se envían desde su dispositivo y que son recibidos por AWS IoT Core para LoRaWAN. Sus dispositivos LoRaWAN pueden enviar mensajes de enlace ascendente en cualquier momento, que luego se reenvían a Servicio de AWS y a otras aplicaciones alojadas en la nube. Los mensajes que se envían desde AWS IoT Core para LoRaWAN y otros Servicio de AWS y aplicaciones a sus dispositivos se denominan mensajes de enlace descendente.

A continuación, se muestra cómo puede ver y administrar los mensajes de enlace ascendente y descendente que se envían entre sus dispositivos y la nube. Puede mantener una cola de mensajes de enlace descendente y enviarlos a sus dispositivos en el orden en que se agregaron a la cola.

**Topics**
+ [Ver el formato de los mensajes de enlace ascendente enviados desde dispositivos LoRaWAN](lorawan-uplink-metadata-format.md)
+ [Colocar en cola los mensajes de enlace descendente para enviarlos a dispositivos LoRaWAN](lorawan-downlink-queue.md)

# Ver el formato de los mensajes de enlace ascendente enviados desde dispositivos LoRaWAN
<a name="lorawan-uplink-metadata-format"></a>

Una vez que haya conectado su dispositivo LoRaWAN a AWS IoT Core para LoRaWAN, podrá observar el formato del mensaje de enlace ascendente que recibirá de su dispositivo inalámbrico.

## Para poder observar los mensajes de enlace ascendente
<a name="lorawan-uplink-metadata-prerequisites"></a>

Debe tener incorporado el dispositivo inalámbrico y haberlo conectado para que AWS IoT pueda transmitir y recibir datos. Para obtener información sobre cómo incorporar su dispositivo a AWS IoT Core para LoRaWAN, consulte [Incorporar dispositivos a AWS IoT Core para LoRaWAN](lorawan-onboard-end-devices.md).

## ¿Qué contienen los mensajes de enlace ascendente?
<a name="lorawan-uplink-metadata-contains"></a>

Los dispositivos LoRaWAN se conectan a AWS IoT Core para LoRaWAN mediante puertas de enlace LoRaWAN. El mensaje de enlace ascendente que reciba del dispositivo contendrá la siguiente información.
+ Datos de carga que corresponden al mensaje de carga cifrado que se envía desde el dispositivo inalámbrico.
+ Metadatos inalámbricos que incluyen:
  + Información del dispositivo, como DevEui, la velocidad de datos y el canal de frecuencia en el que funciona el dispositivo.
  + Parámetros adicionales opcionales e información de puerta de enlace para las puertas de enlace que están conectadas al dispositivo. Los parámetros de la puerta de enlace incluyen el EUI, la SNR y el RSSi de la puerta de enlace.

  Al utilizar los metadatos inalámbricos, puede obtener información útil sobre el dispositivo inalámbrico y los datos que se transmiten entre su dispositivo y AWS IoT. Por ejemplo, puede utilizar el parámetro `AckedMessageId` para comprobar si el dispositivo ha recibido el último mensaje de enlace descendente confirmado. De forma opcional, si decide incluir la información de la puerta de enlace, puede identificar si desea cambiar a un canal de puerta de enlace más potente que esté más cerca del dispositivo.

## ¿Cómo observar los mensajes de enlace ascendente?
<a name="lorawan-uplink-metadata-observe"></a>

Una vez que haya incorporado su dispositivo, puede usar el [cliente de prueba MQTT](https://console.aws.amazon.com/iot/home#/test) de la página **Pruebas** de la consola de AWS IoT para suscribirse al tema que especificó al crear su destino. Empezará a ver los mensajes cuando el dispositivo esté conectado y comience a enviar datos de carga.

Este diagrama identifica los elementos clave de un sistema LoRaWAN conectado con AWS IoT Core para LoRaWAN, y muestra el plano de datos principal y cómo fluyen los datos a través del sistema.

![\[Imagen que muestra cómo AWS IoT Core para LoRaWAN transfiere los datos desde un dispositivo inalámbrico hasta AWS IoT y otros servicios.\]](http://docs.aws.amazon.com/es_es/iot-wireless/latest/developerguide/images/iot-lorawan-data-flow.png)


Cuando el dispositivo inalámbrico comienza a enviar datos de enlace ascendente, AWS IoT Core para LoRaWAN agrupa la información de los metadatos inalámbricos con la carga y, a continuación, la envía a sus aplicaciones de AWS.

## Ejemplo de mensaje de enlace ascendente
<a name="lorawan-uplink-metadata-example"></a>

En el ejemplo siguiente se muestra el formato del mensaje de enlace ascendente recibido del dispositivo.

```
{
    "WirelessDeviceId": "5b58245e-146c-4c30-9703-0ca942e3ff35", 
    "PayloadData": "Cc48AAAAAAAAAAA=",    
    "WirelessMetadata":
    {
        "LoRaWAN":
        {
            "ADR": false,
            "Bandwidth": 125,
            "ClassB": false,
            "CodeRate": "4/5",
            "DataRate": "0",
            "DevAddr": "00b96cd4",
            "DevEui": "58a0cb000202c99",            
            "FOptLen": 2,
            "FCnt": 1,
            "Fport": 136,   
            "Frequency": "868100000",     
            "Gateways": [
             {
                    "GatewayEui": "80029cfffe5cf1cc",      
                    "Snr": -29,
                    "Rssi": 9.75
             }
             ],  
            "MIC": "7255cb07",  
            "MType": "UnconfirmedDataUp",
            "Major": "LoRaWANR1",
            "Modulation": "LORA", 
            "PolarizationInversion": false,    
            "SpreadingFactor": 12,                         
            "Timestamp": "2021-05-03T03:24:29Z"
            
        }
    }
}
```

### Excluir los metadatos de la puerta de enlace de los metadatos del enlace ascendente
<a name="lorawan-uplink-metadata-example2"></a>

Si desea excluir la información de los metadatos de la puerta de enlace de los metadatos del enlace ascendente, deshabilite el parámetro **AddGwMetadata** al crear el perfil de servicio. Para obtener información acerca de este parámetro, consulte [Agregar perfiles de servicio](lorawan-define-profiles.md#lorawan-service-profiles).

En este caso, no verá la sección `Gateways` en los metadatos del enlace ascendente, como se ilustra en el siguiente ejemplo.

```
{  
    "WirelessDeviceId": "0d9a439b-e77a-4573-a791-49d5c0f4db95",
    "PayloadData": "AAAAAAAA//8=",
    "WirelessMetadata": {
        "LoRaWAN": {
            "ClassB": false,
            "CodeRate": "4/5",
            "DataRate": "1",
            "DevAddr": "01920f27",
            "DevEui": "ffffff10000163b0",
            "FCnt": 1,
            "FPort": 5,
            "Timestamp": "2021-04-29T05:19:43.646Z"
    }
  }
}
```

# Colocar en cola los mensajes de enlace descendente para enviarlos a dispositivos LoRaWAN
<a name="lorawan-downlink-queue"></a>

Las aplicaciones alojadas en la nube y otros Servicio de AWS pueden enviar mensajes de enlace descendente a sus dispositivos inalámbricos. Los mensajes de enlace descendente son mensajes que se envían desde AWS IoT Core para LoRaWAN hasta su dispositivo inalámbrico. Puedes programar y enviar mensajes de enlace descendente para cada dispositivo que haya conectado a AWS IoT Core para LoRaWAN.

Si tiene varios dispositivos a los que desea enviar un mensaje de enlace descendente, puede usar un grupo de multidifusión. Los dispositivos de un grupo de multidifusión comparten la misma dirección de multidifusión, que luego se distribuye a todo un grupo de dispositivos receptores. Para obtener más información, consulte [Crear grupos de multidifusión para enviar una carga de enlace descendente a varios dispositivos](lorawan-multicast-groups.md). 

## Cómo funciona una cola de mensajes de enlace descendente
<a name="lorawan-how-downlink-works"></a>

La clase de dispositivo de su dispositivo LoRaWAN determina cómo se envían los mensajes de la cola al dispositivo. Los dispositivos de clase A envían un mensaje de enlace ascendente a AWS IoT Core para LoRaWAN para indicar que el dispositivo está disponible para recibir mensajes de enlace descendente. Los dispositivos de clase B pueden recibir mensajes en las ranuras de enlace descendente normales. Los dispositivos de clase C pueden recibir mensajes de enlace descendente en cualquier momento. Para obtener más información acerca de las clases de precios, consulte [Clases de dispositivos](lorawan-manage-end-devices.md#lorawan-device-classes).

A continuación, se muestra cómo se ponen en cola los mensajes y cómo se envían a los dispositivos de clase A.

1. AWS IoT Core para LoRaWAN almacena en búfer el mensaje de enlace descendente que ha agregado a la cola con el puerto de marco, los datos de carga y los parámetros del modo de confirmación que especificó mediante la consola de AWS IoT o la API de AWS IoT Wireless.

1. El dispositivo LoRaWAN envía un mensaje de enlace ascendente para indicar que está en línea y que puede empezar a recibir mensajes de enlace descendente.

1. Si ha agregado más de un mensaje de enlace descendente a la cola, AWS IoT Core para LoRaWAN envía el primer mensaje de enlace descendente de la cola a su dispositivo con el indicador de confirmación (ACK) activado.

1. El dispositivo envía un mensaje de enlace ascendente a AWS IoT Core para LoRaWAN inmediatamente o permanece en reposo hasta el siguiente mensaje de enlace ascendente e incluye el indicador ACK en el mensaje.

1. Cuando AWS IoT Core para LoRaWAN recibe el mensaje de enlace ascendente con el indicador ACK, borra el mensaje de enlace descendente de la cola, lo que indica que el dispositivo ha recibido correctamente el mensaje de enlace descendente. Si el indicador ACK no aparece en el mensaje de enlace ascendente después de comprobarlo tres veces, el mensaje se descarta.

## Realizar operaciones de cola de enlace descendente mediante la consola
<a name="lorawan-downlink-queue-console"></a>

Puede utilizar Consola de administración de AWS para poner en cola los mensajes de enlace descendente y borrar mensajes individuales o toda la cola, según sea necesario. En el caso de los dispositivos de clase A, después de recibir un enlace ascendente del dispositivo para indicar que está en línea, los mensajes en cola se envían al dispositivo. Una vez enviado el mensaje, se borra automáticamente de la cola.

**Poner en cola los mensajes de enlace descendente**  
Para crear una cola de mensajes de enlace descendente

1. Vaya a la [central de dispositivos de la consola de AWS IoT](https://console.aws.amazon.com/iot/home#/wireless/devices) y elija el dispositivo para el que desea poner en cola los mensajes de enlace descendente.

1. En la sección **Mensajes de enlace descendente** de la página de detalles del dispositivo, seleccione **Poner en cola los mensajes de enlace descendente**.

1. Especifique los siguientes parámetros para configurar el mensaje de enlace descendente:
   + **FPort**: elija el puerto de marco para que el dispositivo se comunique con AWS IoT Core para LoRaWAN.
   + **Carga**: especifique el mensaje de carga que desea enviar al dispositivo. El tamaño de carga máximo es de 242 MB. Si la velocidad de datos adaptativa (ADR) está habilitada, AWS IoT Core para LoRaWAN la usa para elegir la velocidad de datos óptima para el tamaño de la carga. Puede optimizar aún más la velocidad de datos según sea necesario.
   + **Modo de reconocimiento**: confirme si su dispositivo ha recibido el mensaje de enlace descendente. Si un mensaje requiere este modo, verá un mensaje de enlace ascendente con el indicador ACK en su flujo de datos y el mensaje se borrará de la cola.

1. Para agregar su mensaje de enlace descendente a la cola, seleccione **Enviar**.

El mensaje de enlace descendente ya se ha agregado a la cola. Si no ve el mensaje o recibe un error, puede solucionar el error tal y como se describe en [Solucionar los errores de la cola de mensajes del enlace descendente](#lorawan-downlink-queue-troubleshoot). 

**nota**  
Una vez que el mensaje de enlace descendente se haya agregado a la cola, no podrá editar los parámetros **FPort**, **Carga** ni **Modo de reconocimiento**. Para enviar un mensaje de enlace descendente con valores diferentes para estos parámetros, puede eliminar este mensaje y poner en cola un nuevo mensaje de enlace descendente con los valores de los parámetros actualizados.

La cola muestra los mensajes de enlace descendente que ha agregado. Para ver la carga de los mensajes de enlace ascendente y descendente que se intercambian entre sus dispositivos y AWS IoT Core para LoRaWAN, puede utilizar el analizador de redes. Para obtener más información, consulte [Supervisión de su flota de recursos inalámbricos en tiempo real mediante un analizador de redes](network-analyzer-overview.md).

**Enumerar la cola de mensajes de enlace descendente**  
El mensaje de enlace descendente que ha creado se agrega a la cola. Cada mensaje de enlace descendente posterior se agrega a la cola después de este mensaje. Puede ver una lista de los mensajes de enlace descendente en la sección **Mensajes de enlace descendente** de la página de detalles del dispositivo. Tras recibir un enlace ascendente, los mensajes se envían al dispositivo. Una vez que el dispositivo reciba un mensaje de enlace descendente, se eliminará de la cola. A continuación, el siguiente mensaje pasará a una posición superior en la lista para enviarse a su dispositivo.

**Eliminar mensajes individuales de enlace descendente o borrar toda la cola**  
Cada mensaje de enlace descendente se borra automáticamente de la cola después de enviarse a su dispositivo. También puede eliminar mensajes individuales o borrar toda la cola de enlaces descendentes. Estas acciones no se pueden deshacer.
+ Si encuentra mensajes en la cola que no quiere enviar, selecciónelos y elija **Eliminar**.
+ Si no desea enviar ningún mensaje de la cola a su dispositivo, puede borrar toda la cola seleccionando **Borrar cola de enlaces descendentes**.

## Realizar operaciones de cola de enlace descendente mediante la API
<a name="lorawan-downlink-queue-api"></a>

Puede usar la API de AWS IoT Wireless para poner en cola los mensajes de enlace descendente y borrar mensajes individuales o toda la cola, según sea necesario.

**Poner en cola los mensajes de enlace descendente**  
Para crear una cola de mensajes de enlace descendente, utilice la operación de 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 el comando de CLI [cli/latest/reference/iotwireless/send-data-to-wireless-device.html](cli/latest/reference/iotwireless/send-data-to-wireless-device.html).

```
aws iotwireless send-data-to-wireless-device \
    --id "11aa5eae-2f56-4b8e-a023-b28d98494e49" \
    --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. En algunos casos, incluso si recibe el `MessageId`, los paquetes pueden descartarse. Para obtener más información acerca de cómo resolver este error, consulte [Solucionar los errores de la cola de mensajes del enlace descendente](#lorawan-downlink-queue-troubleshoot).

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

**Enumerar los mensajes de enlace descendente de la cola**  
Para enumerar todos los mensajes de enlace descendente de la cola, utilice la operación de API [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListQueuedMessages.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListQueuedMessages.html) o el comando de CLI [https://docs.aws.amazon.com/cli/latest/reference/iotwireless/list-queued-messages.html](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/list-queued-messages.html).

```
aws iotwireless list-queued-messages
```

De forma predeterminada, se muestran un máximo de 10 mensajes de enlace descendente al ejecutar este comando.

**Eliminar los mensajes de enlace descendente individuales o borrar toda la cola**  
Para eliminar mensajes individuales de la cola o para borrar toda la cola, utilice la operación de API [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteQueuedMessages.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteQueuedMessages.html) o el comando de CLI [https://docs.aws.amazon.com/cli/latest/reference/iotwireless/delete-queued-messages.html](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/delete-queued-messages.html).
+ Para eliminar mensajes individuales, introduzca el `messageID` de los mensajes que desee eliminar de su dispositivo inalámbrico, especificados por el `wirelessDeviceId`.
+ Para borrar toda la cola de enlaces descendentes, especifique `messageID` como `*` para su dispositivo inalámbrico, según el `wirelessDeviceId`.

## Solucionar los errores de la cola de mensajes del enlace descendente
<a name="lorawan-downlink-queue-troubleshoot"></a>

Estas son algunas cosas que debe comprobar si no ve los resultados esperados:
+ 

**Los mensajes de enlace descendente no aparecen en la consola de AWS IoT**  
Si el mensaje de enlace descendente no aparece en la cola después de agregarlo tal y como se describe en [Realizar operaciones de cola de enlace descendente mediante la consola](#lorawan-downlink-queue-console), es posible que el dispositivo no haya completado un proceso denominado *procedimiento de activación * o *unión*. Este procedimiento se completará cuando el dispositivo se incorpore con AWS IoT Core para LoRaWAN. Para obtener más información, consulte [Agregar las especificaciones de un dispositivo inalámbrico a AWS IoT Core para LoRaWAN con la consola](lorawan-end-devices-add.md#lorawan-end-device-spec-console).

  Tras incorporar el dispositivo a AWS IoT Core para LoRaWAN, puede supervisarlo para comprobar si la conexión y la reconexión se han realizado correctamente mediante el analizador de redes o Amazon CloudWatch. Para obtener más información, consulte [Herramientas de monitoreo](monitoring-cloudwatch.md#monitoring-tools).
+ 

**Faltan paquetes de mensajes de enlace descendente al utilizar la API**  
Cuando utiliza la operación de API `SendDataToWirelessDevice`, la API devuelve un valor `MessageId` único. Sin embargo, no puede confirmar si su dispositivo LoRaWAN ha recibido el mensaje de enlace descendente. Los paquetes de enlace descendente pueden descartarse en casos como cuando el dispositivo no ha completado el procedimiento de unión. Para obtener más información acerca de cómo resolver este error, consulte la sección anterior.
+ 

**Falta el error de ARN al enviar un mensaje de enlace descendente**  
Al enviar un mensaje de enlace descendente a su dispositivo desde la cola, puede recibir un error de que falta el nombre de recurso de Amazon (ARN). Este error puede deberse a que no se especificó correctamente el destino del dispositivo que recibe el mensaje de enlace descendente. Para corregir este error, compruebe los detalles del destino del dispositivo.

# Gestionar el tráfico LoRaWAN desde redes de dispositivos LoRaWAN públicas (Everynet)
<a name="iot-lorawan-roaming"></a>

Puede conectar sus dispositivos LoRaWAN a la nube en cuestión de minutos mediante las redes LoRaWAN disponibles públicamente. AWS IoT Core para LoRaWAN ahora es compatible con la cobertura de red de Everynet en EE. UU. y el Reino Unido. Cuando utilice la red pública, se le cobrará un cargo de conectividad a la red pública por cada dispositivo cada mes. El precio se aplica a todas las Regiones de AWS en las que se ofrezca conectividad a redes públicas. Para obtener más información acerca de esta característica, consulte la [página de precios de AWS IoT Core](https://aws.amazon.com/iot-core/pricing/).

**importante**  
La red pública es operada y suministrada como un servicio directamente por Everynet. Antes de usar esta característica, consulte los [Términos del servicio de AWS](https://aws.amazon.com/service-terms/). Además, si utiliza una red pública a través de AWS IoT Core para LoRaWAN, determinada información del dispositivo LoRaWAN como `DevEUI` y `JoinEUI` se replicará en todas las regiones donde AWS IoT Core para LoRaWAN esté disponible.

AWS IoT Core para LoRaWAN es compatible con la red pública LoRaWAN según la especificación de LoRa Alliance para la itinerancia, tal y como se describe en [LoRaWAN Backend Interfaces 1,0 Specification](https://lora-alliance.org/wp-content/uploads/2020/11/lorawantm-backend-interfaces-v1.0.pdf). La capacidad de red pública se puede utilizar para conectar sus dispositivos finales que se encuentran fuera de la red doméstica. Para respaldar esta capacidad, AWS IoT Core para LoRaWAN se asocia con Everynet para ofrecer una cobertura de radio extendida.

## Ventajas de utilizar una red LoRaWAN pública
<a name="lorawan-roaming-benefits"></a>

Sus dispositivos LoRaWAN pueden usar una red pública para conectarse a la nube, lo que reduce el tiempo de implementación, así como el tiempo y el coste necesarios para mantener una red LoRaWAN privada.

Al utilizar una red LoRaWAN pública, obtendrá ventajas como la amplitud de cobertura, el funcionamiento del núcleo sin red de radio y la densificación de la cobertura. Esta característica se puede utilizar para:
+ Proporcionar cobertura a los dispositivos cuando saltan de su red doméstica, como el *dispositivo A* en la figura que se muestra en la sección [Arquitectura de compatibilidad de red LoRaWAN pública](lorawan-roaming-works.md#lorawan-roaming-architecture).
+ Ampliar la cobertura a los dispositivos que no tienen una puerta de enlace LoRa a la que conectarse, como el *dispositivo B* en la figura que se muestra en la sección [Arquitectura de compatibilidad de red LoRaWAN pública](lorawan-roaming-works.md#lorawan-roaming-architecture). El dispositivo puede entonces usar la puerta de enlace proporcionada por el socio para conectarse a la red doméstica.

Sus dispositivos LoRaWAN pueden usar una red pública para conectarse a la nube con la característica de itinerancia, lo que reduce el tiempo de implementación, así como el tiempo y el coste necesarios para mantener una red LoRaWAN privada.

En las siguientes secciones se describe la arquitectura de compatibilidad de la red pública, cómo funciona la compatibilidad con la red LoRaWAN pública y cómo utilizar esta característica.

**Topics**
+ [Ventajas de utilizar una red LoRaWAN pública](#lorawan-roaming-benefits)
+ [Cómo funciona la compatibilidad de la red pública LoRaWAN](lorawan-roaming-works.md)
+ [Cómo utilizar la compatibilidad de red pública](lorawan-roaming-use.md)

# Cómo funciona la compatibilidad de la red pública LoRaWAN
<a name="lorawan-roaming-works"></a>

AWS IoT Core para LoRaWAN admite la característica de itinerancia pasiva, de acuerdo con la especificación de LoRa Alliance. Con la itinerancia pasiva, el proceso de itinerancia es totalmente transparente para el dispositivo final. Los dispositivos finales que se desplazan fuera de la red doméstica pueden conectarse a las puertas de enlace de esa red e intercambiar datos de enlace ascendente y descendente mediante el servidor de aplicaciones. Los dispositivos permanecen conectados a la red doméstica durante todo el proceso de itinerancia.

**nota**  
AWS IoT Core para LoRaWAN solo admite la característica sin estado de itinerancia pasiva. No se admite el traslado de itinerancia. En el modo de traslado de itinerancia, el dispositivo cambiará a un operador diferente cuando salga fuera de la red doméstica.

**Topics**
+ [Conceptos de red LoRaWAN pública](#lorawan-roaming-concepts)
+ [Arquitectura de compatibilidad de red LoRaWAN pública](#lorawan-roaming-architecture)

## Conceptos de red LoRaWAN pública
<a name="lorawan-roaming-concepts"></a>

Los siguientes conceptos son utilizados por la característica de red pública compatible en AWS IoT Core para LoRaWAN.

**Servidor de red LoRaWAN (LNS)**  
Un LNS es un servidor privado independiente que puede ejecutarse localmente o puede ser un servicio basado en la nube. AWS IoT Core para LoRaWAN es un LNS que ofrece servicios en la nube.

**Servidor de red doméstica (hNS)**  
La red doméstica es la red a la que pertenece el dispositivo. El servidor de red doméstica (hNS) es un LNS en el que AWS IoT Core para LoRaWAN almacena los datos de aprovisionamiento del dispositivo, como las claves `DevEUI`, `AppEUI` y de sesión. 

**Servidor de red visitada (vNS)**  
La red visitada es la red desde la que proporciona cobertura al dispositivo cuando sale de la red doméstica. El servidor de red visitada (vNS) es un LNS que tiene un acuerdo comercial y técnico con el hNS para dar servicio al dispositivo final. Everynet, socio de AWS, actúa como la red visitada para proporcionar cobertura.

**Servidor de red de servicio (sNS)**  
El servidor de red de servicio (sNS) es un LNS que gestiona los comandos MAC del dispositivo. Solo puede haber un sNS para una sesión de LoRa.

**Servidor de red de reenvío (fNS)**  
El servidor de red de reenvío (fNS) es un LNS que administra las puertas de enlace de radio. Puede haber cero o más fNS involucrados en una sesión de LoRa. Este servidor de red gestiona el reenvío de los paquetes de datos que se reciben del dispositivo a la red doméstica.

## Arquitectura de compatibilidad de red LoRaWAN pública
<a name="lorawan-roaming-architecture"></a>

El siguiente diagrama de arquitectura muestra cómo AWS IoT Core para LoRaWAN se asocia con Everynet para proporcionar conectividad de red pública. En este caso, el *dispositivo A* está conectado al hNS (servidor de red doméstica) proporcionado por AWS IoT Core para LoRaWAN a través de una puerta de enlace LoRa. Cuando el dispositivo A sale de la red doméstica, entra en una red visitada y queda protegido por el servidor de red visitada (vNS) proporcionado por Everynet. El vNS también amplían la cobertura al *dispositivo B*, que no tiene una puerta de enlace LoRa a la que conectarse.

Puede ver la información de cobertura de la red pública en la consola de AWS IoT, tal y como se describe en la siguiente sección.

![\[Imagen en la que se ve la compatibilidad de AWS IoT Core para LoRaWAN con la itinerancia para conectar dispositivos que se mueven fuera de la red doméstica; también se observa cómo extender la cobertura a los dispositivos que no tienen una puerta de enlace a la que conectarse\]](http://docs.aws.amazon.com/es_es/iot-wireless/latest/developerguide/images/iot-lorawan-roaming-architecture.png)


 AWS IoT Core para LoRaWAN utiliza la funcionalidad de un hub de itinerancia, de acuerdo con la [Recomendación técnica del LoRa Alliance LoRaWAN Roaming Hub](https://lora-alliance.org/wp-content/uploads/2022/01/TR010-1.0.0-LoRaWAN-Roaming-Hub.pdf). El hub de itinerancia proporciona un punto de conexión para que Everynet enrute el tráfico recibido desde el dispositivo final. En este caso, Everynet actúa como un servidor de red de reenvío (fNS) para reenviar el tráfico recibido del dispositivo. Utiliza una API de HTTP RESTful, tal como se define en la especificación de LoRa Alliance.

**nota**  
Si el dispositivo se traslada de su red doméstica y entra en una ubicación en la que tanto la red doméstica como Everynet pueden ofrecer cobertura, utilizará la política de «primero en llegar, primero en ser servido» para determinar si debe conectarse a su puerta de enlace LoRa o a la puerta de enlace Everynet.

Al visitar una red pública, el hNS y el servidor de red de servicio (sNS) están separados. A continuación, los paquetes de enlace ascendente y descendente se intercambian entre el sNS y el hNS.

# Cómo utilizar la compatibilidad de red pública
<a name="lorawan-roaming-use"></a>

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.

**Topics**
+ [Parámetros de itinerancia](#lorawan-roaming-parameters)
+ [Habilitar la compatibilidad con redes públicas para dispositivos](#lorawan-roaming-enable)

## Parámetros de itinerancia
<a name="lorawan-roaming-parameters"></a>

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](https://console.aws.amazon.com/iot/home#/wireless/profiles) de la consola, con la operación API [https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateServiceProfile.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateServiceProfile.html) de AWS IoT Wireless o el comando [https://docs.aws.amazon.com/cli/latest/reference/create-service-profile.html](https://docs.aws.amazon.com/cli/latest/reference/create-service-profile.html) 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
<a name="lorawan-roaming-enable"></a>

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](https://console.aws.amazon.com/iot/home#/wireless/profiles) 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](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateServiceProfile.html) o el comando [https://docs.aws.amazon.com/cli/latest/reference/create-service-profile.html](https://docs.aws.amazon.com/cli/latest/reference/create-service-profile.html) 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"
     }
     ```

1. 

**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](https://console.aws.amazon.com/iot/home#/wireless/profiles) 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](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetServiceProfile.html) o el comando de CLI [https://docs.aws.amazon.com/cli/latest/reference/get-service-profile.html](https://docs.aws.amazon.com/cli/latest/reference/get-service-profile.html), 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
         }
     }
     ```

1. 

**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](lorawan-define-profiles.md#lorawan-device-profiles) y [Agregar destinos a AWS IoT Core para LoRaWAN](lorawan-create-destinations.md).
   + 

**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](lorawan-end-devices-add.md#lorawan-end-device-spec-console).

     ```
     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.

1. 

**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](lorawan-manage-end-devices.md#lorawan-activation-modes). 
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.

1. 

**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](lorawan-create-destinations.md#lorawan-create-destination-console).

     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](lorawan-uplink-metadata-format.md).
   + 

**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](lorawan-downlink-queue.md).

     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](lorawan-downlink-queue.md#lorawan-downlink-queue-troubleshoot).

     ```
     {
         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 [https://console.aws.amazon.com/iot/home#/wireless/network-coverage](https://console.aws.amazon.com/iot/home#/wireless/network-coverage) 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](https://aws.amazon.com/service-terms).