the detection algorithms are a bit buggy, but calls may fail if they aren't answered fast enough, or things are done in the wrong order.