| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
The inter-packet intervals in the packet trains are too long resulting in missed transmissions as the channel probing often happens between two packets when the channel is empty. This fix resolves the problem by shortening CC2420_ACK_WAIT_DELAY from 256 (7.8ms) to 50 (1.5ms). Lower values break software acknowledgements, larger may result in too long intervals. The fix was tested both in Cooja and real TMotes increasing the reliability of packet delivery significantly. Note that only acknowledged unicast transmissions are affected because broadcasts are sent much more densely (no need to wait for the ACK).
|
Could you describe the test a bit more on the hardware Tmotes? |
Sorry, something went wrong.
|
I use a modified TestLpl with one node sending 300 packets and the other one receiving. I attach the receiving node to the PC to log the serial output and put the sender right next to it. Without the fix, the PDR is around 80%, with the fix it is 100%. You can find the modified TestLpl here: |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
A fix for the issue #338 .
I tested it using the TestLpl application (which I had to fix as well) in both Cooja and real TMotes.
I've found the suitable value for CC2420_ACK_WAIT_DELAY = 50 (by trial and error), it works for both HW and SW acknowledgements.
According to my observations it increases the chances of successful packet delivery significantly.