diff --git a/quantum/via.c b/quantum/via.c index b7e6c9523324..03e11fbb3d6c 100644 --- a/quantum/via.c +++ b/quantum/via.c @@ -256,8 +256,9 @@ void raw_hid_receive(uint8_t *data, uint8_t length) { } case id_switch_matrix_state: { #ifdef VIAL_ENABLE - /* We don't need this wannabe keylogger */ - goto skip; + /* Disable wannabe keylogger unless unlocked */ + if (!vial_unlocked) + goto skip; #endif #if ((MATRIX_COLS / 8 + 1) * MATRIX_ROWS <= 28) diff --git a/quantum/vial.h b/quantum/vial.h index 3015448ebfce..5f6df86a9080 100644 --- a/quantum/vial.h +++ b/quantum/vial.h @@ -19,7 +19,7 @@ #include #include -#define VIAL_PROTOCOL_VERSION ((uint32_t)0x00000002) +#define VIAL_PROTOCOL_VERSION ((uint32_t)0x00000003) void vial_handle_cmd(uint8_t *data, uint8_t length);