From 6dfd7ed46f3e11fa2db3c52bd128aa038c3d79a6 Mon Sep 17 00:00:00 2001 From: Yue Wu Date: Sat, 13 Jul 2024 20:43:52 +0800 Subject: [PATCH] Fix i2c received value in georgi and bajjak (#24113) --- keyboards/bajjak/matrix.c | 2 +- keyboards/gboards/georgi/matrix.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/keyboards/bajjak/matrix.c b/keyboards/bajjak/matrix.c index 5451bf787dc..3ec7cbd0774 100644 --- a/keyboards/bajjak/matrix.c +++ b/keyboards/bajjak/matrix.c @@ -146,7 +146,7 @@ static matrix_row_t read_cols(uint8_t row) { // reading GPIOB (column port) since in mcp23018's sequential mode // it is addressed directly after writing to GPIOA in select_row() mcp23018_status = i2c_receive(I2C_ADDR, &data, 1, BAJJAK_EZ_I2C_TIMEOUT); - return data; + return ~data; } } else { /* read from teensy diff --git a/keyboards/gboards/georgi/matrix.c b/keyboards/gboards/georgi/matrix.c index 00c17a3e443..9552518f766 100644 --- a/keyboards/gboards/georgi/matrix.c +++ b/keyboards/gboards/georgi/matrix.c @@ -255,6 +255,7 @@ static matrix_row_t read_cols(uint8_t row) } else { uint8_t data = 0; mcp23018_status = i2c_read_register(I2C_ADDR, GPIOB, &data, 1, ERGODOX_EZ_I2C_TIMEOUT); + data = ~data; #ifdef DEBUG_MATRIX if (data != 0x00) xprintf("I2C: %d\n", data);