Custom ADR outside from LoRaServer


#1

Hi,

I would like to start to implement my own ADR Algorithm (using metrics that are not provided to LoRaServer).
Any idea about a start point ?
As a first thing, I will have to disable LoRa Server ADR : how to proceed ?
Then I have to find gRPC modules that I can use to use my own ADR : is there documentation on ADR architecture some where ?

Thanks,

Nop


#2

You can implement the network-controller interface https://github.com/brocaar/loraserver/blob/master/api/nc/nc.proto to receive uplink mac-commands and meta-data. For downlink mac-commands you can call this method: https://github.com/brocaar/loraserver/blob/master/api/ns/ns.proto#L87.


#3

@brocaar

Thanks a lot for these information. How can I disable LoRaSERVER ADR to disable its mac-commands ?
I do not want 2 ADR MAC commands to be sent simultneously.

Nicolas


#4

Please see the loraserver.toml configuration file :slight_smile:


#5

I have just read loraserver.toml
The only section that deals with dr is :
[[network_server.network_settings.extra_channels]]
frequency=867100000
min_dr=0
max_dr=5

So I guess that I have to set min_dr and max_dr for all frequencies to the same value ?
That’s correct ?

Nop Micro


#6

I think he means these parameters:

  # Disable mac-commands
  #
  # When set to true, LoRa Server will not handle and / or schedule any
  # mac-commands. However, it is still possible for an external controller
  # to handle and / or schedule mac-commands. This is intended for testing
  # only.
  disable_mac_commands=false

  # Disable ADR
  #
  # When set, this globally disables ADR.
  disable_adr=false