Ignore Uplink Events with specific fport

Hi everyone

I’m new to ChirpStack and right now I need to add data handling for multiple lora devices from different device providers. I already manged to receive data.
The thing is that these devices send events containing no data in different intervals. These events are always on a different fPort than the actual event (e.g fPort = 0).
I want to stop receiving or fully ignore these events, so that they wont get forwarded to the MQTT subscribers.

I’m trying to “ignore” these messages through the device profile codec’s but couldn’t manage to do that. Is it even possible to fully block these messages through the codec or is there a better way for that?

Packets with fport=0 are MAC commands.
Packets with fport>0 contains your sensor data.

1 Like

Thanks for your information

Yes one of my devices also sends fport 0 events, but others send additional events on fport 100 or 6 etc (next to the actual useful uplink).

I’ve heard that it’s not possible to filter/ignore specific fport’s (like 0) through device profile codec’s. I guess I need to implement a new feature or service for that.

Packets with fport=0 will not reach device profile codec at all.
Your devices must send packets with fport > 0.
Packets with fport=0 are internal LoRaWAN MAC commands.

Weird, my MQTT never has packets with fport=0.
If there are (unlikely), you can filter them out in your code.

What MQTT topic are you subscribing?

2 Likes

I have a client that subscribes to all uplinks from all devices: “application/device/event/up”.

Right now it seems like no “wrong” event is received. I will post a screenshot if i find one.

But like I said, there are also devices that send events e.g. on fPort=6 while I only need the events on fPort=8. Those are special events from the device manufacturer that I cant stop on the device itself.

To keep packets with fport=6 and ignore packets with fport=8, you need to use external program (your own code or NodeRed…) to read all packets and only forward those packet with fport=6.

1 Like

Thanks for your help

I’m probably going to use Node-RED and add some event handling there.
That would be the solution for me.