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
WeAct ESP32-C3FH4 with only BMI160 sensor wired in. WeAct board is very basic containing just ESP32C3FH4 chip, voltage regulator USB port and some buttons.
Hardware Configuration
BMI160 IMU wired using i2c to ESP32C3 4 and 5 pin.
Version
v2.0.6
IDE Name
PlatformIO
Operating System
Manjaro Linux
Flash frequency
Default
PSRAM enabled
no
Upload speed
Default
Description
Scenario is the following:
I'm writing 0 bytes (only address) to device 0x68 to check if it's available. It responds with ACK and I get success status, all good here.
I'm writing address to device 0x69 to check if it's available. It's not, I have NACK status, all good.
I'm writing again 0 bytes to device 0x68 expecting it to succeed. However it fails with timeout.
On screenshot I'm showing overview of first 3 transfers on i2c bus:
successful write to 0x68 (only address written, then ACK). Transfer reported as successful.
failed write to 0x69 (no ACK after address, as expected). This transfer returns failure, as expected.
successful write to 0x68 (with ACK) with SCL line stuck low for one second! This transfer returns timeout error.
BMI160 doesn't support clock stretching, so SCL stuck low is probably ESP fault.
Zoom in to last transfer:
And recovery after one second (I'm starting another transfer to 0x69):
Sketch
byte status;
while(1) {
Wire.beginTransmission(0x68);
status = Wire.endTransmission();
Serial.printf("Address 0x68 status %d\n", status);
Wire.beginTransmission(0x69);
status = Wire.endTransmission();
Serial.printf("Address 0x69 status %d\n", status);
}
Debug Message
Address 0x68 status 0 [OK]
Address 0x69 status 2 [NACK, OK]
Address 0x68 status 5 [timeout, not ok, should be 0]
Address 0x69 status 2 [NACK, OK]
...
Other Steps to Reproduce
No response
I have checked existing issues, online documentation and the Troubleshooting Guide
I confirm I have checked existing issues, online documentation and Troubleshooting guide.
The text was updated successfully, but these errors were encountered:
I looked around and now I'm wondering, is that not related to espressif/esp-idf#9777 ?
I looked at files I have locally and it seems like my sources doesn't have that patch included.
Board
WeAct ESP32-C3FH4
Device Description
WeAct ESP32-C3FH4 with only BMI160 sensor wired in. WeAct board is very basic containing just ESP32C3FH4 chip, voltage regulator USB port and some buttons.
Hardware Configuration
BMI160 IMU wired using i2c to ESP32C3 4 and 5 pin.
Version
v2.0.6
IDE Name
PlatformIO
Operating System
Manjaro Linux
Flash frequency
Default
PSRAM enabled
no
Upload speed
Default
Description
Scenario is the following:
On screenshot I'm showing overview of first 3 transfers on i2c bus:
BMI160 doesn't support clock stretching, so SCL stuck low is probably ESP fault.
Zoom in to last transfer:
And recovery after one second (I'm starting another transfer to 0x69):
Sketch
Debug Message
Other Steps to Reproduce
No response
I have checked existing issues, online documentation and the Troubleshooting Guide
The text was updated successfully, but these errors were encountered: