workaround for some bugs: issue #216 (first ADC read is always corrupt), some busywait/atomic bug