LSM6DSO SPI Connection

Hi all, this is my first post here!

I’m trying to get the LSM6DSO to connect to an Arduino UNO via SPI. I’ve double and triple checked the connections (it’s going through a level shifter). When running it I get the “Could not connect to IMU” message. Here is the setup part of my code:

#include “SparkFunLSM6DSO.h”

#include “Wire.h”

#include “SPI.h”

const int CS = 10;

LSM6DSO myIMU; //Default constructor is I2C, addr 0x6B

void setup() {

SPI.begin();

pinMode(CS, OUTPUT);

Serial.begin(115200);

delay(500);

delay(10);

if( myIMU.beginSPI(CS, 8000000, SPI) )

Serial.println(“Ready.”);

else {

Serial.println(“Could not connect to IMU.”);

Serial.println(“Freezing”);

}

Any idea what could be causing this?

How’s it wired? A schematic + photo would help us to help you. :wink:

Some photos, I followed the same pinout from the sparkfun diagram

And a few more

It looks looks like one of the address jumpers are soldered closed. Both need to be open for spi to work.

Sorry I meant to mention that I had soldered them together, but now they are cut (using a utility blade), I tested for continuity after the fact to verify.

Any other thoughts on this? I have actually used an adafruit library for an LSM6DSOx with SPI and exactly the same wiring configuration on this sensor, and am able to connect and read data, so it appears that the issue lies in the code, not the software. Has anyone been able to successfully connect to one of these via SPI?