qmk/qmk_firmware

[Bug] OLED does not time out when writing to last column

Open

#18,983 opened on Nov 7, 2022

View on GitHub
 (1 comment) (0 reactions) (0 assignees)C (43,867 forks)batch import
bughelp wanted

Repository metrics

Stars
 (20,368 stars)
PR merge metrics
 (Avg merge 20d 9h) (27 merged PRs in 30d)

Description

Describe the Bug

So I'm not entirely sure why this happens, but it seems like writing to the last row on my 128x32 OLED display prevents the OLED timeout from kicking in. I'm specifically talking about these lines.

Using oled_set_cursor(1, 13); instead of oled_set_cursor(1, 15); fixes the issue. The display times out correctly without any issues.

I've implemented a manual timeout, which fixes the issue for me, but I was curious if I'm doing something wrong or if there was an issue with QMK here.

One interesting thing I noticed is that writing with oled_write_P into the last row seems to also clip the top of the screen, so maybe the issue is with the "last row" not being a full row? I feel like that still shouldn't prevent the OLED timeout but at least it's an indication that I might be doing something wrong?

Keyboard Used

https://github.com/chrisduerr/qmk_firmware/tree/09bc1696a9410c021cf338708e2ec47912e93a68/keyboards/undeadsplit (updated to the latest QMK upstream like 1-2 weeks ago)

Contributor guide