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.
