I think, that is because You allways call that code with the default timeout, which is 1000 ms (correct me if i am wrong) and never with 5 ms, like tvh. I could "avoid" this behaviour in pvr.ths by setting the timeout from 5 to 500 ms. Setting it to 50 ms still gave the fault, but with lower frequency.