From d6162c4a7830dbaf6c345d0f46b6b49f615c54b1 Mon Sep 17 00:00:00 2001 From: "C.S.M" Date: Mon, 8 Jul 2024 15:10:59 +0800 Subject: [PATCH] fix(i2c): Fix i2c not release semaphore in command send loop, Closes https://github.com/espressif/esp-idf/issues/13962 --- components/esp_driver_i2c/i2c_master.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/components/esp_driver_i2c/i2c_master.c b/components/esp_driver_i2c/i2c_master.c index 4ee7c2b409..34a7106ef9 100644 --- a/components/esp_driver_i2c/i2c_master.c +++ b/components/esp_driver_i2c/i2c_master.c @@ -425,6 +425,8 @@ static void s_i2c_send_commands(i2c_master_bus_handle_t i2c_master, TickType_t t i2c_master->cmd_idx = 0; i2c_master->trans_idx = 0; atomic_store(&i2c_master->status, I2C_STATUS_TIMEOUT); + ESP_LOGE(TAG, "I2C software timeout"); + xSemaphoreGive(i2c_master->cmd_semphr); return; }