3 - Receiving Messages

Messages sent from a network server to an end device are referred to as downlinks. These are sent to the end device via a single gateway. If there are multiple gateways near a device, the network server will select the most suitable gateway to broadcast from. This means the end device does not need to consider de-duping.

Devices operating in Class A mode only receive downlinks during the receive windows opened following an uplink, as described in the section Opening Receive Windows of the Sending Messages Book.

Devices that support Class B mode as well as Class A can receive additional downlinks in receive windows opened at fixed time slots. Read more about Class B mode in the Class B Book.

Devices that support Class C mode as well as Class A can receive additional downlinks at any time. Read more in the Class C: Continuously Listening for Downlinks book.

Todo

Fix link

In this book, you learn how to receive and handle downlink packets using the LoRaWAN® 1.0.4 specification.

Handling MAC Commands

Modify Downlink Channel Frequency Request (DlChannelReq

The network server requests a modification to the frequency used to send downlinks in the first reception slot (RX1) using the DlChannelReq command. The request contains the index of the channel to modify with the new frequency that the channel will use for downlinks.

Note

This command is only to be handled by end devices operating in a region with a dynamic channel plan. Check the channel plan type for a given region in Section 1.3, ‘Regional Parameters Summary Tables’ (page 24) of the RP002-1.0.4 LoRaWAN® Regional Parameters specification.

If the command is not supported in the region the end device operates in, the end device must not send an answer. If the command is supported, the end device must modify the channel if it is able and respond with a DlChannelAns command, as described in section Modify Downlink Channel Frequency Answer of the Sending Messages Book. The DlChannelAns indicates whether or not the channel was modified.

Learn more in Section 5.6, ‘Creation / Modification of a Channel’ (page 36) of the LoRaWAN Link Layer Specification v1.0.4.

Warning

If the DlChannelAns command needs sending, it must be sent with every single uplink until a Class A downlink is received back from the network server to avoid connectivity loss.

If your device uses Activation by Personalization (ABP), the settings updated by this command must not be altered when the device is reset, and therefore should be stored in non-volatile memory (NVM).

Read more in section Handling Commands That Modify Downlink Parameters.