1
\$\begingroup\$

I have a custom PCBA (nano shield) with the MPU-6050 accelerometer. The schematic is shown below.

I am able to see the device on I2C, but am not able to communicate with the device whatever library I use.

I'm aware that VCC should be at 3.3V, which I have corrected manually (on a fresh unused MPU6050).

I've also tried pulling AD0 high (3.3V) to no avail.

I'm not sure why it isn't working. Perhaps AUX_DA or AUX_CL need to be connected? I haven't been able to discern what to do with these pins since I'm not utilising them for peripheral I2C devices.

I'm using a standard Arduino Nano, and not the Every.

Link to MPU-6050 datasheet

enter image description here

Relevant MPU6050 datasheet section on auxiliary AUX_DA & AUX_CL

relevant MPU6050 datasheet section on auxiliary AUX_DA & AUX_CL

\$\endgroup\$
4
  • \$\begingroup\$ Perhaps AUX_DA or AUX_CL need to be connected <--Try reading the data sheet. \$\endgroup\$
    – Andy aka
    Commented Apr 18 at 17:36
  • \$\begingroup\$ I have read the datasheet, but I can't discern what to do with AUX_DA and AUX_CL when they're not being used for additional peripheral i2c components. Is there something on the datasheet I'm missing? \$\endgroup\$
    – Newbie
    Commented Apr 18 at 17:41
  • 1
    \$\begingroup\$ If you see the device on bus, you can communicate with it already. How are you detecting/seeing it? What do you mean you are unable to use libraries with it? What libraries and how do they work? What have you done to debug the situation, if the problem is hardware or the libraries? Have you thought about posting the code? \$\endgroup\$
    – Justme
    Commented Apr 18 at 17:49
  • \$\begingroup\$ Hi Justme, thanks for the information on i2c detection and communication. I believe since I have left Ad0 floating this caused problems communicating on i2c as it would change address. I think it was improperly pulled high before. \$\endgroup\$
    – Newbie
    Commented Apr 18 at 18:22

1 Answer 1

0
\$\begingroup\$

AD0 needed to be pulled high as it made the i2c address ambigous.

\$\endgroup\$
1
  • 1
    \$\begingroup\$ In the question you've stated "I've also tried pulling AD0 high (3.3V) to no avail.". If this is the correct answer, you should probably remove that statement from the question, because it's contradictory. \$\endgroup\$
    – Velvet
    Commented Jul 10 at 13:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.