set eui64 DWM1000 problem

Hello guys,

I have a little problem with DWM1000 modules. Every modules have 0xff ff ff ff 00 00 00 00 when i use dwt_geteui function but i must have different address.

So I use dwt_seteui function with an another address but it doesn’t communicate anymore correctly when I do that, i must disable the frame filtering to have the same that with 0xff ff ff ff 00 00 00 00 address and it communicates

Is it normal ?

Thanks :wink:

The EUI is not programmed in the factory … see UM 7.2.3 Register file: 0x01 – Extended Unique Identifier and OTP description. They are left to be programmed by the customer.

In your development/testing, you can program the EUI register after DW1000 initialisation and it will keep the value unless the device is reset/sleeping or powered off. EVKs and TREKs from Decawave have OTP memory programmed thus the EUI gets populated on reset.

Thanks for your quick reply

It helped me to understand why I’ve this address always.

I program now one time the new address in otp and it’s good with frame filter :slight_smile:

Does this mean i can rewrite the OTP everytime when DWM1000 is initialized?


I think that the OTP value (corresponding to eui64) is not programmed at Decawave, so you can program it once. I mean only once. Meanwhile you can write to the eui64 register the value you want. Also, if you write some value to the eui64 register in the OTP, then each time the dw1000 is reset, the value stored in the OTP is loaded in the eui64 register. This is how I suppose it works, although not 100% sure.