About DW1000 Frame filtering

When frame filtering is enabled, why do I still need to enter interrupts to handle frame filtering errors instead of processing them directly at the MAC layer?
If do not need to enter interrupt processing, which place did I do wrong?

Can anyone help me?I don’t know how to improve this problem。

Hello!

I’m trying to use this filtering feature too. I think that you’ve made it further, so I want to ask how do you set the destination address?

Datasheet (DW1000 USER MANUAL) has information about how to set source address (Reg 0x03). I’ve tried to find info in “Chapter 3 Message Transmission”, but but there is nothing about setting the destination address.

Thanl you!

You can view ‘dw1000’_ Software_ API_ Guide_ Rev2p7 'document found ‘dwt_enableframefilter’ function will help you.

Thank you!

Later I’ve found this topic - " [Github code for dwm1001-dev can’t change source and dest](Github code for dwm1001-dev can't change source and dest) "

and understand, that chip “MAC-level support” adressing functions is limited just to address comparison (for irq). And I must set MPDU myself in packet payload.

About IRQ error packets.
Have you tried setting the interrupt mask without handling bad packets?
“Register file: 0x0E – System Event Mask Register”

MRXFCG reg:0E:00 bit:14
Mask receiver FCS good event. When MRXFCG is 0 the RXFCG event status bit will not
generate an interrupt. When MRXFCG is 1 and the RXFCG event status bit is 1, the
hardware IRQ interrupt line will be asserted to generate an interrupt.

MRXFCE reg:0E:00 bit:15
Mask receiver FCS error event. When MRXFCE is 0 the RXFCE event status bit will not
generate an interrupt. When MRXFCE is 1 and the RXFCE event status bit is 1, the
hardware IRQ interrupt line will be asserted to generate an interrupt

I tried, but the result is, there will be errors, but not to deal with, resulting in the program does not continue!