Hi,
Does the DWM1000 support Frame Filtering for a 64-bit address broadcast?
DWM1000 User Manual says:
The Destination Address if present must:
o Be the (short 16-bit) broadcast address (0xFFFF)
o Or be a short (16-bit) address matching the SHORT_ADDR programmed in Register file: 0x03
– PAN Identifier and Short Address
o Or be a long (64-bit) address matching the Register file: 0x01 –Extended Unique Identifier.
It doesn’t mention anything about 64-bit broadcast address, and tests using 0xFFFFFFFFFFFFFFFF don’t work either.
Our frame format looks like this:
static uint8 tx_msg = {0x61, 0xDC, 0, 0xCA, 0xDE, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0x01, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0xBB, 0x02, 0xAF, 0, 0};
where 0xAAAAAAAAAAAAAA01 is the receivers ID (and it works). replacing that with F’s doesn’t work.
Sorry for the late response, it took me some time to reproduce this.
Using a long (64-bit) broadcast address for frame filtering does indeed not seem to work, as the documentation suggests. Only the short 16-bit broadcast address is supported. When using an extended address only the address configured in Register file: 0x01 –Extended Unique Identifier will pass the frame filter.
The DW1000 UM does not explicitly state this. Using a broadcast long (extended) address does not seem to be supported by the IEE 802.15.4 (-2020) specification. It only mentions short broadcast addresses.
Thanks for taking the time to check the problem out. Luckily, we found a workaround!
DWM1000 UM(2.11), page 49/242:
If the frame is a beacon frame then the Source PAN ID must match the PAN_ID programmed in Register file: 0x03 – PAN Identifier and Short Address, (or be 0xFFFF)
So: Beacon frames don’t need a destination address to pass through the frame filtering. To send a broadcast, set the frame control bits (11-10) so the packet doesn’t use destination address.
This worked for us, extended address devices receive and FF normally: