thotro / arduino-dw1000

A library that offers functionality to use Decawave's DW1000 chips/modules with Arduino.
Apache License 2.0
516 stars 288 forks source link

DW1000Ranging.cpp : may deadlock #37

Closed greymfm closed 9 years ago

greymfm commented 9 years ago

When setting '_replyDelayTimeUS' (via setReplyTime) to a small value (e.g. 3000) , an inactive device is deleted, but the state machine on the Tag/Anchor seem to be in an deadlock state (not running/sending further - I assume it should recover from this situation?). The same happens if the default 'replyTime' is used. It just takes longer to get to the deadlock situation.

PS: For my tests I have modified console output code to output information (TAG/ANCHOR, time, range, power) only every 500ms. dw1000_deadlock

greymfm commented 9 years ago

UPDATE: actually, this also happens with the 'RangingTag/RangingAnchor' examples. After a while, Tag is still polling, but in Anchor main loop is not called anymore.

Probably an abnormal (e.g. division by zero) error that causes the program to halt? dw1000_deadlock2

greymfm commented 9 years ago

Does NOT happen with the 0.6 release (I should have started with and not the master branch :)).

greymfm commented 9 years ago

Problem gone. After changing back from Channel 4 to the default channel (Channel 5), the problem is gone.