You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have new ESP32-P4 v1.0 Silicon.
Before I had v0.1 Silicon. Working on a prototype that mirrors most of the hardware on ESP32-P4-eval board.
I am also using example project 'i2c_basic' in sdk (esp-idf/examples/peripherals/i2c/i2c_basic)
Since changing to ESP32-P4 v1.0 Silicon I have issues with i2c communications this new chip.
I get this error:
I (104) example: I2C initialized successfully
E (204) i2c.master: s_i2c_synchronous_transaction(924): I2C transaction failed
E (264) i2c.master: clear bus failed.
E (264) i2c.master: i2c_master_transmit_receive(1227): I2C transaction failed
ESP_ERROR_CHECK failed: esp_err_t 0x103 (ESP_ERR_INVALID_STATE) at 0x4000be60
--- 0x4000be60: app_main at /home/xxx/esp/esp-idf-master-xxx/examples/peripherals/i2c/i2c_basic/main/i2c_basic_example_main.c:84 (discriminator 1)
But ESP32-P4 v0.1 Silicon works fine?
I (94) main_task: Calling app_main()
I (94) example: I2C initialized successfully
I (94) example: WHO_AM_I = 0
I (94) example: I2C de-initialized successfully
Please look at my attached log files, old (p4_Silicon_v0.1_i2c_basic_debug_log.txt) vs new (p4_Silicon_v1.0_i2c_basic_debug_log.txt) silicon log, and sdkconfig below.
I (204) efuse_init: Chip rev: v1.0
...
I (299) example: WHO_AM_I = FF
I (299) example: I2C de-initialized successfully
I (299) main_task: Returned from app_main()
So more information would be helpful. 1). Did you try any other i2c devices? 2) Could I see any online logic wave on your i2c device on v1.0? (important) 3) Did pull-up be applied properly?
And I go through the code. The potential thing might cause this issue is the last parameter of i2c_master_transmit(dev_handle, write_buf, sizeof(write_buf), I2C_MASTER_TIMEOUT_MS / portTICK_PERIOD_MS); Try to increase it, just try to make it largest as -1 : i2c_master_transmit(.., .., .., -1) and see if the issue will gone. (Same for receive and transmit_receive function..).
@mythbuster5 I found the issue on our side. V1.0 Silicon and idf5.5 are good. Seems the 3.3V power on new board (P4 v1.0) vs old board (P4 v0.1) was not turned on correctly. Fixed it. So i2c working great! Thanks for confirming new v1.0 Silicon and idf5.5 i2c.
Answers checklist.
General issue report
ESP32-P4 v1.0 Silicon idf 5.5 (master) i2c communications issue.
General issue report
I am using esp-idf 5.5 via master branch (https://github.com/espressif/esp-idf.git).
I have new ESP32-P4 v1.0 Silicon.
Before I had v0.1 Silicon. Working on a prototype that mirrors most of the hardware on ESP32-P4-eval board.
I am also using example project 'i2c_basic' in sdk (esp-idf/examples/peripherals/i2c/i2c_basic)
Since changing to ESP32-P4 v1.0 Silicon I have issues with i2c communications this new chip.
I get this error:
I (104) example: I2C initialized successfully
E (204) i2c.master: s_i2c_synchronous_transaction(924): I2C transaction failed
E (264) i2c.master: clear bus failed.
E (264) i2c.master: i2c_master_transmit_receive(1227): I2C transaction failed
ESP_ERROR_CHECK failed: esp_err_t 0x103 (ESP_ERR_INVALID_STATE) at 0x4000be60
--- 0x4000be60: app_main at /home/xxx/esp/esp-idf-master-xxx/examples/peripherals/i2c/i2c_basic/main/i2c_basic_example_main.c:84 (discriminator 1)
But ESP32-P4 v0.1 Silicon works fine?
I (94) main_task: Calling app_main()
I (94) example: I2C initialized successfully
I (94) example: WHO_AM_I = 0
I (94) example: I2C de-initialized successfully
Please look at my attached log files, old (p4_Silicon_v0.1_i2c_basic_debug_log.txt) vs new (p4_Silicon_v1.0_i2c_basic_debug_log.txt) silicon log, and sdkconfig below.
Please advise.
p4_Silicon_v0.1_i2c_basic_debug_log.txt
p4_Silicon_v1.0_i2c_basic_debug_log.txt
sdkconfig.txt
The text was updated successfully, but these errors were encountered: