I want to use decawave 1000 or 1001 @ 6.5 GHz. I will use about 3/4 Mbps of throughput to carry (point to point) serial data (UART). Reading the documentation, I see that the minimum latency is about 8 ms (due to csma/ca). It is possible to optimize it and reduce the latency to 1 ms or less?My distance between the two sensors will be very shor (30 cm), like for example wifi latency…It is possible to eliminate CSMA/CA and drive the tx/rx using a gpio or API?this could reduce the latency…what do you think.
I have used a DW1000 to do a two way range in under 1 ms. That requires the exchange of 4 packets within that time.
Any latencies due to things like CSMA are a feature of the protocol layer used to share the airtime, if you create your own protocol you can ignore that. It just requires more firmware work since you can’t necessarily use the systems supplied by decawave.
Aside from firmware created delays the largest impact in latency is the packet duration, this is a function of the data rate selected and the amount of data being sent. Preamble length can also have a significant impact on packet duration.
There are tools that will calculate the duration of a packet for a given set of settings.
The second largest impact in latency will normally be the user CPU processing time setting up the transfer on the sending side and then handling the interrupt and then reading the data on the receiving side.
Distance between the two ends is only a factor in terms of signal strength, at 300 m (well over the maximum range) the RF travel time will be 1 us, insignificant in comparison to the other factors.
Keep in mind that these radios are designed for ranging not data transfer. While they can transfer small amounts of data with reasonable latencies other systems will do it better, especially for larger amounts of data.