-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Finer grained, per port tick locking #3546
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Fixes micropython#3504 hopefully.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just tested it with PewPew10 and it seems to fix the issue #3504, there is no flickering visible anymore.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested on the SAMD21 boards; Pulsein works fine and didn't see any other issues. I tested without setting RTC_READREQ_RREQ in rtc_set_continuous(), and it looks like it works fine without that bit set.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Glad we had the Discord discussion about this, it helped me follow what was going on better. Thanks @tannewt
The key is, this reduces the length of time that interrupts are disabled when reading the RTC. This is especially important on SAMD21 but fixes were applied to each port that potentially required them.
Confirmed, the flickering is much improved on a PewPew 10.2 with the binary from CI, though not totally gone. Interestingly, the influence of the USB connection is reversed now: With a USB connection, I never get any flickering. Without a USB connection, I still get some flickering when CPU usage is low (much time spent in |
Fixes #3504 hopefully.
cc @deshipu and @cwalther