-
-
Thank you! I just saw the commit fixing the arbitration error, and tried 2v06.122. The flicker is mostly gone (as is the broken behavior of the previous cutting edge build that was apparently related to arbitration error). However, if I call setLCDBrightness() enough times, the flicker does come back eventually, and stays until (a) the next call to setLCDBrightness(), or (b) the next time the screen turns off and back on.
-
I am not sure whether I should post here or on GitHub issues, and apologies if this has already been discussed.
I have uploaded 2v06 onto my watch, and noticed that the screen flickers very badly with any LCD brightness level that is less than 1. I understand that, in principle, this is due to accel/gyro polling that interferes with software PWM, because doing Bangle.setPollInterval(4000) does remove the flickering.
What confuses me, though, is that on firmware 2v05.1 there was absolutely no noticeable flickering with any level of brightness > 0.1. I switched between 2v05.1 and 2v06 several times to make sure that this is reproducible, and it is. Also, this behavior doesn't seem to depend on the app that is currently running. It does happen when the watch is idle.
I've also noticed that on 2v06, if I execute Bangle.setLCDBrightness(), every once in a while the screen will stop flickering - until the next call to Bangle.setLCDBrightness(), with the same argument, which brings the flickering back. There seems to be no pattern. I can call Bangle.setLCDBrightness() ten times in a row, with the same argument, and one of these calls will remove the flickering.
I wonder if there might be an issue with 2v06 that is causing this behavior?
In case this might be useful for someone else, I found by trial and error that M1.5 x 5mm screws work the best for a replacement.