IoT Core LoraWAN ADR setup

0

Hello,

ADR does not seem to be working in AWS IoT Core for US915 at least. It always default to DR3 and never change to adapt for better or worse signal.

How can I make sure automatic ADR setting is setup ? Where can I see the configs related to ADR ?

Currently we have to manually turn off ADR and set DR=0 for devices with bad signals and it's very inconvenient compared to the automatic ADR we had with other providers previously.

Thank you,

asked a year ago452 views
3 Answers
1

Hi. The LNS is required to support ADR. AWS IoT Core for LoRaWAN will perform ADR if the device sets the ADR bit in the frame header. There is nothing for you to do to enable it on the cloud side. You just need your device to set the ADR bit in the frame header of uplinks. However, you can use DrMin and DrMax in the service profile to limit the data rates that ADR can select.

You can use the network analyzer to inspect the frames and frame headers. The network analyzer will also log ADR operations if any are happening. So please use that to get greater visibility into what's going on.

profile pictureAWS
EXPERT
Greg_B
answered a year ago
  • Hi thanks that's exactly what I was looking for. However there is no DR choice when creating from console so it will have to be from API, I'm not used to use the API yet so will have to experiment. However I see a DrMax set to 15 but not DrMin is set. Probably the Default value is 3.

0
Accepted Answer

Ok so the official answer is actually AWS doesn't support ADR it just will try to change TX_power of the device and always stays in DR3.

Would've prefered to know before going production on this... Anyway as pointed out by Greg you can set device profiles with custom DrMin DrMax which are usless because DrMin always equal DrMax to be usefull but it allows you to set manually the data rate of certain devices via ADR.

Quote from official answer from AWS team:

If the device's signal is turning bad, AWS will try to let the device tune the TX power up or transmit more times. For our current ADR algorithm, if signal turns bad, DR will not decrease but instead we request the devices to increase the TX power.

answered a year ago
  • Hi. I think you've somewhat misunderstood that response. AWS IoT Core for LoRaWAN does support ADR and it does modify the data rate. Per the standard, the LNS can modify the DR and the TX power using the LinkADRReq MAC command. AWS IoT Core for LoRaWAN does modify the DR, based on the SNR of uplinks. In particular, it will ask the device to increase DR if the SNR of uplinks is strong.

  • "For our current ADR algorithm, if signal turns bad, DR will not decrease but instead we request the devices to increase the TX power." This means that if the DR raises too high, and uplinks are not received, AWS IoT Core for LoRaWAN will not automatically request a reduction in DR. Per the standard the device "periodically needs to validate that the network still receives the uplink frames". If the device does not receive an ack after ADR_ACK_LIMIT uplinks, it should send an ADRACKReq. And eventually lower DR itself if no downlinks are received from the LNS. Does your device do this?

0

Hi, we are making improvements to our ADR algorithm, and will allow customers to take more control over how ADR works for their specific use cases. Can you please reach out to me and i can share more details.

Andrew
answered 6 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions