Issues with new I2C driver.
Posted: Tue Nov 12, 2024 2:54 pm
Hello, I'm experiencing issues while migrating to the new ESP-IDF I2C driver (in ESP-IDF 5.3.1). The problem arises when I try to use the bus in asynchronous mode. Due to limited documentation and the recent implementation of the new driver, I found only one example indicating that to enable async mode, you need to set the "trans_queue_depth" parameter (in the bus config structure of type i2c_master_bus_config_t) to a value other than zero.
When I set this parameter, I can see the bus operating in async mode. However, after some time, the ESP resets with a "Guru Meditation Error."
Another issue is that I’m not entirely sure what value to set for "trans_queue_depth" or exactly how this buffer (assuming it is a buffer) operates, especially since the amount of data I send over the bus varies with each transmission.
I would appreciate any examples or documentation on how to use the I2C driver in asynchronous mode. For context, I'm using the bus to send data to an OLED screen.
Regards.
When I set this parameter, I can see the bus operating in async mode. However, after some time, the ESP resets with a "Guru Meditation Error."
Another issue is that I’m not entirely sure what value to set for "trans_queue_depth" or exactly how this buffer (assuming it is a buffer) operates, especially since the amount of data I send over the bus varies with each transmission.
I would appreciate any examples or documentation on how to use the I2C driver in asynchronous mode. For context, I'm using the bus to send data to an OLED screen.
Regards.