MPU6050_tockn
MPU6050_tockn copied to clipboard
I2C Read Issue
Ciao,
First o fall many thanks for your good work - Make handling of MPU6050 really easy ;o)
After Updating to new version of ESP32-HAL-I2C I realized that READ from MPU6050 did not work any more. (got only NULL values) After research and comparision with different other includes like I2C-EEPROM, I2C-Display, etc. I realized that your access seems wrong designed and worked until now only by accident.
Real Bugfix is the wrong parameter in "endTransmission", further I added e rought "error detection/handling".
Simple Bugfix in MPU6050_tockn.cpp: Change Line 71 in MPU6050::calcGyroOffsets from: wire->endTransmission(false) to: byte rxStatus = wire->endTransmission(true); if (rxStatus != 0) Serial.println("MPU6050::update EC: " + String(rxStatus));
Same Bugfix in MPU6050_tockn.cpp: Change Line 105 in MPU6050::update from: wire->endTransmission(false) to: byte rxStatus = wire->endTransmission(true); if (rxStatus != 0) Serial.println("MPU6050::update EC: " + String(rxStatus));
Afterwards it worked really fine.... :o)
Kind regards Michi
This fix worked also fine for me on my ESP32 DOIT Devkit V1. The Serial.print didn't worked for me. Without it it works.
Works well, but my GY-521 board is powered with 5V and gives an output of 3.6 V on SDA/SLA. This is not working with my ESP32 devkit board, even though I2C scan shows the address of the module. Quick solution is to add a 10K resistor between each line (SDA/SDL) and GROUND. Have fun. Damian
thank you Damian
https://github.com/netpipe/HappyHands/tree/main/gyroArduino/MPU6050_tockn-swire