Problems with the LSM9DS0 IMU

I am using the LSM9DS0 library and simple example found here: https://github.com/sparkfun/LSM9DS0_Breakout

and followed the hook up guide listed on the sparkfun product page found here: https://learn.sparkfun.com/tutorials/ls … okup-guide

I followed the wiring diagram under the Basic Arduino Example tab in the hook up guide with a few small changes because I wanted to use an SPI configuration instead of the I2C example they listed. Firstly, I hooked up the CSG and CSXM pins to 9 and 10 pins(respectively)on the UNO as it said in the arduino example code and grounded them. Next, I hooked up the SDOXM and SDOG pins to the MISO pin on the arduino UNO.

On the first upload of the simple example I got a bunch of gibberish on the serial monitor so i tried different baud values saw that 9600 worked but that only revealed more problems.

The first being that on every upload, the LSM9DS0 WHO_AM_I returned a different response every run with no changes to the code

The second was the readings on the sensors all alternated between two values that never changed (example below).

LSM9DS0 WHO_AM_I’s returned: 0x8004

Should be 0x49D4

G: 99.56, 2.87, 6.79

A: -2.00, -1.81, 0.06

M: 0.02, 0.06, 0.81

Heading: 67.08

Pitch, Roll: -47.71, -42.17

G: -222.02, 7.68, -244.61

A: 0.06, 0.81, 0.02

M: 0.06, -2.00, -1.81

Heading: 1.80

Pitch, Roll: 3.90, 86.06

G: 99.56, 2.87, 6.79

A: -2.00, -1.81, 0.06

M: 0.02, 0.06, 0.81

Heading: 67.08

Pitch, Roll: -47.71, -42.17

G: -222.02, 7.68, -244.61

A: 0.06, 0.81, 0.02

M: 0.06, -2.00, -1.81

Heading: 1.80

Pitch, Roll: 3.90, 86.06

other examples of random WHO_AM_I values are

0x6031

0x6D2

0x1A01

All help is appreciated, thanks a bunch

See the thread …

https://forum.sparkfun.com/viewtopic.ph … S0#p170200

I’d contact SFE tech support.