What are the top factors that influences the precision of single-sided , TWR?

My current implementation managed to get the accuracy down to 30 ~ 50 cm range, a bit of a far cry from DW1000’s claim of 10cm.

I’m wondering what are the factors that influences the ranging accuracy?

I made a list below, ranked top to bottom by what I believe to be the greatest factor:

TX-RX antenna delay offset value
Clock accuracy/synchronization
ranging method (double-sided or single-sided)
Calculation formula (there’s a constant C that may needs some adjustment to make things more accurate)
algorithm (multiple ranging then find the average distance)

What do you think? Did I miss anything? I understand this is a rather open-ended question.

What is the nature of the error and the inputs?

If it’s a constant error at all ranges then that pointes to antenna delay.
If the error is correlated with the clock difference estimate then that’s likely the issue.
If it’s range dependent then signal strength corrections are probably the issue.

I have also seen 10-15cm variation depending on antenna orientation and 5cm caused by a lose SMA connector on an antenna.

We use double sided TWR, while I expect that to be better than single sided I don’t have a good feel for the difference it would make. It’s on the list of things to investigate. I wouldn’t however expect this to give a 30-40cm accuracy hit.

To give you an idea of what is possible looking at individual ranges while static the measurement noise has a standard deviation of around 3cm. That is fairly constant for any range up until you get close to the maximum at which point it starts to increase a little.
Mean error varies by about 4cm in an non-linear way with distance meaning if you dial in the antenna delays correctly you can get +/-2cm mean error over the usable range. Factoring in the SD means +/-8 cm 68% confidence for any individual measurement.

We have however spent a great deal of time tracking down and eliminating error sources. By far the biggest single improvement was moving to custom hardware that gave us more control over the antenna and the surrounding environment.