Processing LinkADRReq MAC Command

Respond with LinkADRAns

The end device must respond to a LinkADRReq command by sending the Link ADR Answer (LinkADRAns) command back to the network server. The LinkADRAns consists of two octets, as shown in Figure 1. The first octet contains the CID, which indicates the MAC command type. The second is a status octet that indicates which of the requested changes were accepted in the PowerACK, DataRateACK and ChannelMaskACK bit fields.

Diagram showing the structure of the LinkADRAns MAC Command

Figure 1: Structure of the LinkADRAns MAC command

The response sent in the LinkADRAns command varies depending on whether the end device is implementing ADR or not.

When ADR Is Being Implemented

If the end device is implementing ADR, then either none or all of the changes requested will have been applied, as described in the previous section Apply Changes.

If all the changes were applied, the LinkADRAns must be sent with all the status bit fields (PowerACK, DataRateACK and ChannelMaskACK) set to 1. The end device must now begin to operate the ADR backoff procedure, described in the section ADR Backoff.

If none of the changes were applied, the LinkADRAns must be sent with all the status bit fields (PowerACK, DataRateACK and ChannelMaskACK) set to 0.

When ADR Is Not Being Implemented

If the end device is not implementing ADR, then respond as follows:

  • ChannelMaskACK: If the channel mask changes in the request were applied, respond with the ChannelMaskACK status bit set to 1. If the channel mask changes were not applied, respond with the ChannelMaskACK status bit set to 0.

  • DataRateACK: Respond with the DataRateACK bit set to 0.

  • PowerACK: Respond with the PowerACK bit set to 0.

If the channel mask changes in the request were applied, the end device must now begin to operate the ADR backoff procedure, described in the section ADR Backoff.