Class B downlink TX aborted no mandatory "txpk.tmst"

Hi All,

I’m trying to set up LoRaWAN class B multicast using the LoRaMac-node repo. Joining the network and receiving beacons from the gateway all work fine. However, when I want to send a downlink using the Chirpstack Application server the gateway gives the following error (or actually a warning):

JSON down: {"txpk":{"imme":false,"rfch":0,"powe":14,"ant":0,"brd":0,"tmms":1294649730750,"freq":869.525,"modu":"LORA","datr":"SF12BW125","codr":"4/5","ipol":true,"size":13,"data":"YEvrFwCABgACLNaSjw=="}}
WARNING: [down] no mandatory "txpk.tmst" or "txpk.time" objects in JSON, TX aborted

The result is that the downlink is never send. Sending the same data using Class A works perfectly.

The gateway I’m using is the Kerlink Wirnet Station with the Chirpstack Gateway and the Semtech packet forwarder installed. For the packet forwarder I use this configuration file.

Any ideas what this could be? If more information is needed please let me know.

Thanks in advance,
Stan

Are you sure you are using a recent version of the Semtech UDP Packet Forwarder?

ChirpStack uses the tmms (which is the time since GPS epoch) for scheduling Class-B downlinks. This field is documented here:

However, it seems that your packet-forwarder version does not consider this field forthe downlink timing.

Thanks for you’re answer. Your right, Semtech has changed to protocol a bit since version 4.0.0, while I installed version 3.1.0.

The Chripstack gateway documentation for the Kerlink IoT Station tells to install version 3.1.0, maybe a good idea to update this. Or maybe state that the Kerlink IoT Station has reached it EOL and might not function as expected.

I ended up building my own gateway out of a Raspberry Pi because compiling for the Kerlink can be a bit tricky, and because the IoT Station has reached its EOL.

1 Like