DW1000 Periodical Transmission

I want to use DW1000 to broadcast a synchronisation frame with period of exact 100ms. Shall I use the delayed transmission feature of DW1000?

How exact does the period need to be?

Can you assume that the DW1000 clock is perfect? If so then delayed transmit should work fine.

If that clock isn’t your source of perfect time then you may want to look at using the sync pin input and One Shot Transmit Synchronisation Mode. That would allow you to use an external 10 Hz reference clock to control the transmit times.

Actually we want to evaluate a TDOA wireless synchronization algorithm proposed by us recently. We need to choose one anchor from four to act as the main anchor and send synchronization frame periodically. The period is typical tens of milli-seconds which is assumed to be accurate.

If use external 10Hz crystal, what is the accuracy (in ppm) needed for a typical TODA RTLS?

If that is the case then the accuracy of the 10Hz clock isn’t that critical, you may as well use the delayed transmit.
For this to work you will need to measure the clock speed error on each receiver anyway, all the clock source does is set where your zero error point is.

As a general guide there are no 10 Hz crystals, 32.768kHz is the lowest you’ll normally find, most are in the MHz region. Typical tolerances are around 50 ppm but you can get 20 ppm in most frequencies. To get under 10 ppm you are normally looking at a TCXO, to get under 1 ppm you normally need an OCXO.
What accuracy do you need for TDOA? It depends on the accuracy you want. Unless you are using a common clock for all receivers generally the clock speed corrections will have a bigger impact on accuracy than the absolute clock error.

I checked the circuit schematic, a 38.4MHz/10ppm external TCXO has been used. I think this is accurate enough for us.

Suppose one anchor has been chosen as the main anchor which will send synchronization frame periodically while ready to receiving any blink frame from Tags. And we use delayed transmission to send synchronization framer periodically, and use receive interrupts for receiving blink frames. I doubt if the anchor can go to receive interrupts while it in the delayed transmission time, because the dw1000 is in the IDLE state (power down) while it wait for the delay time.

Good point. So either you use the CPUs clock to warn you just before the timed transmit is due so that you are only scheduling it a short period before it will be transmitted or you use a separate anchor that’s only job is to generate your time sync broadcasts and isn’t used for position calculation. At that point the time sync source is in effect a tag in a fixed location.