MPU9250 magnetometer did not work

I hope this helps someone else.
I was trying to get a component out of my miscellaneous components box to work. It was labeled MPU-9250/6500/9255.

I installed the MPU9250_WE library and tried to run the MPU9250_all_data sketch from the examples folder.

The sketch reported that:

MPU9250 does not respond
Magnetometer does not respond

However, it then proceeded to run, reporting Acceleration changes and Gyroscope changes when I rotated the device.

Magnetometer values were all zero.

I spent quite some time rewiring and surfing the internet, trying to determine what the problem was.

Then I read the readme.md file for the MPU9250_WE library. It said:

There are various modules with different MPUxxxx ICs out there. Sometimes it's not clearly defined in online-shops what you will really get if you buy an MPU9250/MPU6500 module. It might be an MPU9250, it might be an MPU6500 or it might be something else, although the modules look the same.

You can also run the example sketch MPU9250_who_am_I.ino to find out which device you have.

I ran the MPU9250_who_am_I sketch and sure enough, it reponded:

WhoAmI Register: 0x70
Your device is an MPU6500
The MPU6500 does not have a magnetometer.

I then ran the MPU6500_all_data example. It worked perfectly omitting magnetometer readings.

Moral:

Don't trust all component labels
Always Read The Friendly readme.md.

Hi! Welcome to the Forum.

What you describe is actually not a mislabelling. MPU9250 and MPU6500 have the same breakout board. The chip on the board is what makes the difference.

OTOH, yes, there are counterfeits and there are people selling a pig in a poke…

I like the “who am I” approach.

Thanks, Brazilino.

The readme.md agreed with you, but at least on my chip, the markings are totally illegible.

Jim