-
-
Notifications
You must be signed in to change notification settings - Fork 19.5k
Add USE_LCD_DOUBLE_BUFFERING option #26713
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
Add USE_LCD_DOUBLE_BUFFERING option #26713
Conversation
9c65146
to
4f65466
Compare
After ~2 months of use, I haven't noted any issues with this, and the LCD is extremely snappy. |
Anything else pending? This allows using a new mode already merged in U8glib-HAL that improves refresh rate quite a bit. It is optional and disabled by default. |
95 other PRs and all kinds of work to fix up Please have some patience. |
Sorry for that, I wondered if I had missed something else. Thanks a lot for your continuous work in this amazing project! |
In case the utility of this got lostThe double buffered method this exposes drastically reduces cpu time spent talking to the LCD:
The end result is up to 95% faster/less data transferred to the display. Back then I made this quick demo where all pixels that don't need to be sent are white (inverted color to be precise): 285644705-6f61276f-8e69-4895-a4ba-63918e46da5b.mp4 |
c792921
to
37fb26b
Compare
37d77d6
to
aa44542
Compare
MarlinFirmware/Marlin#26713 Co-Authored-By: David Buezas <[email protected]>
Description
Adds an option to enable double buffering (plus only sending changed screen areas) for SSD1309 LCDs.
Follow up to: MarlinFirmware/U8glib-HAL#31
Requirements
Requires SSD1309 LCD
Benefits
Faster LCD updates (particularly noticeable when using software i2c)
Configurations
Related Issues