XIAO BLE Sense, no IMU responce

Not getting a response from the IMU Arduino IDE 2.02 and 1.8.18.mbed or non-mbed. BTW 2.0.1 doesn’t seem to reliably call setup()… ??? 2.0.0 didn’t talk to the boar in monitor, but listened…

There seem to be 2 I2C channels in the nRF52840, and the IMU is on the internal channel. It did not show in a scan and I cold only get wire1 to “connect”. Error from the device in the high level example.

Has anyone gotten the IMU to work? THX.

Hi, Gregj888
The following combination will work.

Board library: Seeed nRF52 mbed-enabled Borads 2.7.2
Board : Seeed nRF52 mbed-enabled Borads / Seeed XIAO BLE Sense - nRF52840
IMU library: Seeed_Arduino_LSM6DS3

1 Like

I literally didn’t change anything. Re-complied to get the verbose output and ran to get the program output and it’s working??? Very strange, but I will take it. Running on the 1.8.18 IDE. I did close the 2.0.2 IDE that was running??? Perplexed, but Thank You…

Using board ‘xiaonRF52840Sense’ from platform in folder: C:\Users\gregj\AppData\Local\Arduino15\packages\Seeeduino\hardware\mbed\2.7.2

ResolveLibrary(LSM6DS3.h)
→ candidates: [Seeed_Arduino_LSM6DS3@2.0.3 Seeed_Arduino_LSM6DS3-master@2.0.3]

Hello.
xiao ble has some problems with 2.0 support for the time being, so use an older version of arduino ide first.

Hi, I struggled with the same. Apparently there is a difference in wire.h implementation between the mbed and the other nrf52 version (and initially it only worked in the mbed version for arduino). I ended up moving back and forth between both versions a wile, I just found that it -should- work, however, somehow the following define in the LSM6D3 library does not work:

#ifdef TARGET_SEEED_XIAO_NRF52840_SENSE
#define Wire Wire1
#endif

commenting the #ifdef out does the trick in my case. (so now I can still use the Adafruit Bluefruit goodies instead of the ArduinoBLE, jay)