We have a custom board for TWR ranging with DW1000 and we require an accuracy of 10cm for our localization system. According to our understanding, we will have to do antenna delay calibration to achieve this accuracy level. We have refered to APS014. Is it possible to use (TREK1000) as a reference device with known delay to calibrate the rest of our devices using the method specified in Section 2.3.2 of APS014 ?
I can’t think of any reason why that wouldn’t work as long as you are confident in the calibration of the TREK1000.
After calibrating two of your new units that way I would verify that you get the expected value measuring between those two units.
Personally when unsure I much prefer setting up 3 units in a triangle and calibrating all 3 at once. It avoids the assumption that any of them are correct. But it does require a lot more space.
Sorry, no firmware I can share, it’s all our own code for a commercial product.
All you need in terms of unit firmware is the ability to range between any pair of radios. The rest is just calculations that you can do on a PC. The decawave application notes give details of the maths.
On my system I did add an extra command I called RemoteRangeRequest, this allowed unit A to send a request to unit B that it measures its range to unit C a fixed number of times and then return the average result to unit A. By implementing that I can collect calibration information from any number of units while only connecting directly to one (assuming thigs are in range obviously).
By “It’s all our own code” I mean it’s not PANS, the protocol and packet structure is entirely custom and there isn’t a single line of decawave sample code anywhere in the project.
So to answer your questions:
No.
Via a UWB packet with the appropriate structure as defined by our protocol
Yes. Every node in the system is able to both initiate and respond to requests. The only difference between tags and anchors in our code base is that a tag in normal operating mode initiates ranges, an anchor doesn’t.
No idea, I have never used PANS.
To answer your next question, why did we do it that way rather than use PANS? So that I can get 2400 two way range measurements per second.
Hi Andy. You mentioned that you can get 2400 two-way ranging measurements per second. Is this for one node or for a bunch of nodes? Also, I understand you didn’t use PANS, but are you not using DecaDriver API either? Thanks in advance.
That is a single tag to multiple anchors. We currently run either 8 anchors at 300 Hz or 12 at 200 Hz depending on the use case.
An older version of our protocol ran 800 Hz point to point, if I applied some of the tricks we used for the updated system I could probably get that up to around 1500 Hz.
No decawave code anywhere in the system, the device driver and all of the protocol layers were written from scratch.