xtimer_drift and the cc26x0


I am using the cc26x0 CPU with a custom board, and am getting very poor performance with xtimer: Sleep times are not always what I expect them to be, xtimer_now() calls are not monotonic, etc. The xtimer_usleep test occasionally fails, and xtimer_drift fails every time, with extremely large drifts and jitters. It is clear that it’s some issue with a missed rollover, because the jitter will jump up all of a sudden and then slowly decrease, leaving the drift very large.

What is confusing to me, is that although I’m using a custom board, my timer and xtimer configuration is identical to the cc2650stk (and it’s the same CPU). I see that there was an issue in 2017 with xtimer tests passing on this board, and that the issue was resolved. So I just wanted to see if anyone with experience on the cc2650stk could confirm to me that xtimer_drift still works with that configuration, or if they had any general debug advice for me.

I know that there are many open issues and PRs for xtimer, but I think the frequency that I’m seeing errors at indicates that there is something more fundamental going wrong. The periph_timer test passes for me, but I’m wondering if I’m somehow configuring the HW timers wrong or something like that.

Thank You, Ben Postman