From 57842ab0aa2bee26847fff39c83eebb1e03d3f17 Mon Sep 17 00:00:00 2001 From: Dasky <32983009+daskygit@users.noreply.github.com> Date: Mon, 22 Jan 2024 21:25:00 +0000 Subject: [PATCH] crique zidle fix --- drivers/sensors/cirque_pinnacle.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/drivers/sensors/cirque_pinnacle.c b/drivers/sensors/cirque_pinnacle.c index 38e1fae3e323..9afc9df80444 100644 --- a/drivers/sensors/cirque_pinnacle.c +++ b/drivers/sensors/cirque_pinnacle.c @@ -218,9 +218,16 @@ void cirque_pinnacle_cursor_smoothing(bool enable) { // Check sensor is connected bool cirque_pinnacle_connected(void) { - uint8_t zidle = 0; - RAP_ReadBytes(HOSTREG__ZIDLE, &zidle, 1); - return zidle == HOSTREG__ZIDLE_DEFVAL; + uint8_t current_zidle = 0; + uint8_t temp_zidle = 0; + RAP_ReadBytes(HOSTREG__ZIDLE, ¤t_zidle, 1); + RAP_Write(HOSTREG__ZIDLE, HOSTREG__ZIDLE_DEFVAL); + RAP_ReadBytes(HOSTREG__ZIDLE, &temp_zidle, 1); + if (temp_zidle == HOSTREG__ZIDLE_DEFVAL) { + RAP_Write(HOSTREG__ZIDLE, current_zidle); + return true; + } + return false; } /* Pinnacle-based TM040040/TM035035/TM023023 Functions */