For those beta testers of Copter-3.6.0-rc11 (and older) using DShot, we have found a race condition that can cause the flight controller to lock-up. Although there has only been one reported case and it happened on the bench, it is possible that it could happen at any time.
We have a fix for this issue that will be released in the next day or two as part of Copter-3.6.0-rc12.
What is a race condition?
A lot less fun than the name implies.
Basically, in a multithreaded program you can have multiple things happening in parallel and/or series. A race condition occurs when Loop A needs something from Loop B at TIme X, and Loop B doesn’t have it yet, or Loop B has a different answer than Loop A wants because it was preparing something for Loop C when Loop A asked for the answer.
Or, that’s how I understand it with the programming ability of a wet paper bag.