forked from forks/qmk_firmware
Fix OLED timeout on recent qwiic migrations (#14775)
This commit is contained in:
parent
ff85eb8ee5
commit
f895e966b7
|
@ -39,6 +39,7 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) {
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void oled_task_user(void) {
|
void oled_task_user(void) {
|
||||||
oled_write_P(PSTR("BOSTON MK LAYER"), false);
|
oled_write_P(PSTR("BOSTON MK LAYER"), false);
|
||||||
|
oled_advance_char();
|
||||||
oled_write_char(get_highest_layer(layer_state) + 0x30, true);
|
oled_write_char(get_highest_layer(layer_state) + 0x30, true);
|
||||||
|
|
||||||
led_t led_state = host_keyboard_led_state();
|
led_t led_state = host_keyboard_led_state();
|
||||||
|
@ -68,6 +69,10 @@ void oled_task_user(void) {
|
||||||
for (uint8_t x = 0; x < MATRIX_ROWS; x++) {
|
for (uint8_t x = 0; x < MATRIX_ROWS; x++) {
|
||||||
for (uint8_t y = 0; y < MATRIX_COLS; y++) {
|
for (uint8_t y = 0; y < MATRIX_COLS; y++) {
|
||||||
bool on = (matrix_get_row(x) & (1 << y)) > 0;
|
bool on = (matrix_get_row(x) & (1 << y)) > 0;
|
||||||
|
|
||||||
|
// force on for oled location
|
||||||
|
if((x == 0) && (y >= (MATRIX_COLS - 2))) on = 1;
|
||||||
|
|
||||||
oled_write_pixel(MATRIX_DISPLAY_X + y + y + 2, MATRIX_DISPLAY_Y + x + x + 2, on);
|
oled_write_pixel(MATRIX_DISPLAY_X + y + y + 2, MATRIX_DISPLAY_Y + x + x + 2, on);
|
||||||
oled_write_pixel(MATRIX_DISPLAY_X + y + y + 3, MATRIX_DISPLAY_Y + x + x + 2, on);
|
oled_write_pixel(MATRIX_DISPLAY_X + y + y + 3, MATRIX_DISPLAY_Y + x + x + 2, on);
|
||||||
oled_write_pixel(MATRIX_DISPLAY_X + y + y + 2, MATRIX_DISPLAY_Y + x + x + 3, on);
|
oled_write_pixel(MATRIX_DISPLAY_X + y + y + 2, MATRIX_DISPLAY_Y + x + x + 3, on);
|
||||||
|
@ -85,12 +90,6 @@ void oled_task_user(void) {
|
||||||
oled_write_pixel(MATRIX_DISPLAY_X + 12, MATRIX_DISPLAY_Y+y, true);
|
oled_write_pixel(MATRIX_DISPLAY_X + 12, MATRIX_DISPLAY_Y+y, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
// oled location
|
|
||||||
for (uint8_t x = 0; x < 6; x++) {
|
|
||||||
oled_write_pixel(MATRIX_DISPLAY_X + 5 + x, MATRIX_DISPLAY_Y + 2, true);
|
|
||||||
oled_write_pixel(MATRIX_DISPLAY_X + 5 + x, MATRIX_DISPLAY_Y + 3, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
// bodge for layer number left hand side
|
// bodge for layer number left hand side
|
||||||
for (uint8_t y = 0; y < 8; y++) {
|
for (uint8_t y = 0; y < 8; y++) {
|
||||||
oled_write_pixel(95, 0 + y, true);
|
oled_write_pixel(95, 0 + y, true);
|
||||||
|
|
|
@ -42,6 +42,7 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) {
|
||||||
__attribute__ ((weak))
|
__attribute__ ((weak))
|
||||||
void oled_task_user(void) {
|
void oled_task_user(void) {
|
||||||
oled_write_P(PSTR("LAYER"), false);
|
oled_write_P(PSTR("LAYER"), false);
|
||||||
|
oled_advance_char();
|
||||||
oled_write_char(get_highest_layer(layer_state) + 0x30, true);
|
oled_write_char(get_highest_layer(layer_state) + 0x30, true);
|
||||||
|
|
||||||
led_t led_state = host_keyboard_led_state();
|
led_t led_state = host_keyboard_led_state();
|
||||||
|
@ -71,6 +72,10 @@ void oled_task_user(void) {
|
||||||
for (uint8_t x = 0; x < MATRIX_ROWS; x++) {
|
for (uint8_t x = 0; x < MATRIX_ROWS; x++) {
|
||||||
for (uint8_t y = 0; y < MATRIX_COLS; y++) {
|
for (uint8_t y = 0; y < MATRIX_COLS; y++) {
|
||||||
bool on = (matrix_get_row(x) & (1 << y)) > 0;
|
bool on = (matrix_get_row(x) & (1 << y)) > 0;
|
||||||
|
|
||||||
|
// force on for oled location
|
||||||
|
if((x == 0) && (y >= (MATRIX_COLS - 3))) on = 1;
|
||||||
|
|
||||||
oled_write_pixel(MATRIX_DISPLAY_X + y + 2, MATRIX_DISPLAY_Y + x + 2, on);
|
oled_write_pixel(MATRIX_DISPLAY_X + y + 2, MATRIX_DISPLAY_Y + x + 2, on);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -85,11 +90,6 @@ void oled_task_user(void) {
|
||||||
oled_write_pixel(MATRIX_DISPLAY_X + 19, MATRIX_DISPLAY_Y+y, true);
|
oled_write_pixel(MATRIX_DISPLAY_X + 19, MATRIX_DISPLAY_Y+y, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
// oled location
|
|
||||||
for (uint8_t x = 0; x < 3; x++) {
|
|
||||||
oled_write_pixel(MATRIX_DISPLAY_X + 14 + x, MATRIX_DISPLAY_Y + 2, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
// bodge for layer number left hand side
|
// bodge for layer number left hand side
|
||||||
for (uint8_t y = 0; y < 8; y++) {
|
for (uint8_t y = 0; y < 8; y++) {
|
||||||
oled_write_pixel(35, 0 + y, true);
|
oled_write_pixel(35, 0 + y, true);
|
||||||
|
|
Loading…
Reference in a new issue