What is the different calculation of TdoaV1 and TdoaV2?

All discussions related to the Loco Positioning system
Post Reply
Posts: 12
Joined: Fri Jan 19, 2018 6:28 am

What is the different calculation of TdoaV1 and TdoaV2?

Post by EgeYlcn » Tue May 15, 2018 6:24 am

Hi everyone,

This question's answer is very important for me. Because I'm working on positioning only DWM( not use MPU ) .

When I worked on the TdoaV1, I'm create a calculation algorithm with only DWM data. This algortihm take 3 different packet from our Tag and it was starting the calculation the position of tag. This packets consist of distance difference between anchors. For instance , 1. packet has 3 value like [ 0 , 1 , 1.5172 ]. It means that '' The distance difference of anchor 0 and anchor 1 to Tag is 1.5172 '' . I had these kinds of 3 packages when i used the TdoaV1.

When I look at calculation of TdoaV2 ( https://www.bitcraze.io/2017/12/new-tdo ... to-master/ )
you use the TWR with Tdoa. But i did not understand why are you use the TWR in your TDOA algorithm.

Could you please explain to me why you are using TWR and how do you manage to calculate the position ? :))

Thank you,


Posts: 2031
Joined: Tue Feb 06, 2007 12:36 pm

Re: What is the different calculation of TdoaV1 and TdoaV2?

Post by arnaud » Mon Jun 11, 2018 1:52 pm


TWR is used between anchor to calculate the time for a packet to travel from one anchor to another, this allows to synchronize the anchors clock in the tag to calculate TDoA.

TDoA1 was also calculating the distance/time of travel between anchor using the TWR scheme but it was done by the tag, in TDoA2 it is possible to do it in the tag but it is also part of the anchor information which simplifies the tag calculation and makes it more resilient to packet loss (one assumption is that the anchor system has more reliable radio than the tag).

Post Reply