Downlink every after uplink with MIC: LinkADRReq

Dear Forum members

I face the following issue:

I use two devices that trigger a downlink from the server every after they make an uplink.
The downlink has a cid:“LinkADRReq” .
The problem is that if i schedule a downlink to this two devices , they seem to ignore my downlink command.
Other different LORA devices using the same gateway in the same NS and AS do not exhibit the same problem.

The devices have ADR=ON.
The gateway uses IMST’s gateway.

i attach the contenct of the downlink message

can anyone help with this ?


Could you also post the uplink frame content? That might help explaining why the NS sends a downlink every time your device sends an uplink.

thank you for the reply,

i attach the uplink content:


If that is a (consistent) reply after a downlink containing mac-commands, than this could mean that your device does not process mac-commands as the NS expects to receive an ACK (or nACK) on a LinkADRReq mac-command (and others).

thank you

The same device with an identical gateway, in a different place, DO NOT exhibit the same behaviour.
I just tested it.
Both Gateways use GSM to forward LoRa messages to the server.
Can we blame GSM connectivity conditions ?

Or how can we overcome the problem ? Server-side and from the device poin of view ?


It could be related to network latency. In this case increase your rx_delay=1 (chirpstack-network-server.toml) to a higher value (e.g. 3). You probably need to re-activate your devices.

thank you for your answer

I will try to change it, if this doesn’t work can you suggest any other solution ?
Can we deactivate these MAC commands totaly ?



we changed rx_delay=3 but still the same problem.
The downlink is sent from the server to the GW but not from the GW to the nodes.

This is a message that may help as shown in the GW’s packet forwarder:

INFO: Received pkt from mote: 00253E1D (fcnt=11891)
JSON up: {“rxpk”:[{“tmst”:136822812,“chan”:2,“rfch”:1,“freq”:868.500000,“stat”:1,“modu”:“LORA”,“datr”:“SF12BW125”,“codr”:“4/5”,“lsnr”:8.2,“rssi”:-69,“size”:23,“data”:“QB0+JQCAcy4Ey/pRv1EojmKhR7HWv3k=”}]}
INFO: [up] PUSH_ACK received in 5 ms
INFO: [down] PULL_RESP received - token[181:240] :slight_smile:
JSON down: {“txpk”:{“imme”:false,“tmst”:137822812,“freq”:868.5,“rfch”:0,“powe”:14,“modu”:“LORA”,“datr”:“SF12BW125”,“codr”:“4/5”,“ipol”:true,“size”:24,“data”:“YB0+JQCMcgEDUgcAAQUA0q2ECAHsxwdS”,“brd”:0,“ant”:0}}
src/jitqueue.c:251:jit_enqueue(): ERROR: Packet REJECTED, timestamp seems wrong, too much in advance (current=139858741, packet=137822812, type=0)
ERROR: Packet REJECTED (jit error=2)

any advise please ?

Did you ever happen to solve this? I seem to be seeing something similar.