Don't see any downlink messages in console

Hi there,

I’m having a strange issue where I cannot see any downlink messages to my device appear on any of the console logs, not in device live frames or device data and not in my gateway console either.

My end device is receiving the downlink messages ok, for example join is successful, but all I see are the uplink messages on the console. So for join, I only see join request.

I then thought maybe I could see more if I was to use the debug REST API for device frames/events on /api/devices/{euid}/frames && /api/devices/{euid}/events and likewise for the gateway.
However these also only show me uplink traffic.

Can anyone help me, is this just some simple option I have missed somewhere, or a config item?

Whilst I am receiving downlink messages, I’m definitely not getting all of them and I really need to debug where things are breaking down, but with them not showing up anywhere, I’m a bit stuck.

Many thanks
David

I suspect the problem in the chirpstack event handler from the gateway packet-forwarder.
When I change multi packet forwarder binary to simple semtec packet forwarder all the downlink events appeared in the device/gateway live frames.

Hi @eugenev,

thanks for getting back.

Do you mean that you just changed the gateway application only, no changes in the Chirpstack configuration?

Thanks

Yes,
I changed packet forwarder in the LoRa gateway, without any changes at the ChirpStack’s side.

Some background info on this: ChirpStack expects a Tx Ack from the gateway (after which it will log the downlink, retry using a different RX window or log an error). Not all packet-forwarder versions provide this ack information:

### 5.5. TX_ACK packet ###

That packet type is used by the gateway to send a feedback to the server
to inform if a downlink request has been accepted or rejected by the gateway.
The datagram may optionnaly contain a JSON string to give more details on
acknoledge. If no JSON is present (empty string), this means than no error
occured.

 Bytes  | Function
:------:|---------------------------------------------------------------------
 0      | protocol version = 2
 1-2    | same token as the PULL_RESP packet to acknowledge
 3      | TX_ACK identifier 0x05
 4-11   | Gateway unique identifier (MAC address)
 12-end | [optional] JSON object, starting with {, ending with }, see section 6