XIAO BLE SENSE cannot communicate with IMU sensor

Is there a trick to getting the 2.7.2 board release installed. I keep getting an error 127, and it fails to configure the platform = can’t compile.

I’m getting the same problem, did you manage to find a solution to this? I’m trying to have sleep mode and IMU working together. However it seems that I need version 1.0.0 for sleep, but version 2.6.1/2.7.2 for IMU to work.

Hi Rhys3logy,

It may not be the right way, but I am using the IMU implemented in “Seeed XIAO nRF52840 Sense” on “Seeed nRF52 Borads 1.0.0” (non mbed) in the following way

Board library: Seeed nRF52 Borads 1.0.0 (non mbed)
Board : Seeed nRF52 Borads / Seeed XIAO nRF52840 Sense
IMU library: Seeed_Arduino_LSM6DS3
–>Replace “Wire” in LSM6DS3.cpp with “Wire1”.
#define Wire Wire1” does not work as expected, so I rewrote Wire to Wire1.

2 Likes

Works great! Thank you :smile:

Xiao BLE Sense IMU Activity Demo on Dev Board
Quick Video of the IMU activity Demo Running on the Xiao Development board. After Resetting the display shows “Grab Me Demo” if touched moved or vibrated (1.5 G) Sensitivity is set, Beeps, and displays “moved” whenever it’s disturbed…

HTH
AMA
GL :slight_smile:

Hi Dave,
I followed your steps and tried the HighLevelExample sketch but I get a device error and static values for the accelerometer and gyroscope. The only differences are that I’m on Mac OS and Arduino IDE version 2.0.3. Have you tried it on the latest Arduino IDE version or IDE version doesn’t matter?

The LED blink example works fine though.

Thanks for your help.
Hardeep.

Screenshots:

@ aovestdipaperino

I tried that library but no response in Serial Monitor. I even tried uninstalling Seeed Studio LSM6DS3 library. No luck.

Could it be the faulty chip? I bought this board just for the IMU application in my project. :frowning:

I ended up forking the Arduino library for Nano Sense and made it work with Xiao in RTOS world.

When using “Seeed nRF52 Boards 1.0.0”,
#include <Arduino.h>
#include <Adafruit_TinyUSB.h>
may be required.

Please also refer to the following

It may not be the right way, but I am using the IMU implemented in “Seeed XIAO nRF52840 Sense” on “Seeed nRF52 Borads 1.0.0” (non mbed) in the following way
Board library: Seeed nRF52 Borads 1.0.0 (non mbed)
Board : Seeed nRF52 Borads / Seeed XIAO nRF52840 Sense
IMU library: Seeed_Arduino_LSM6DS3
–>Replace “Wire” in LSM6DS3.cpp with “Wire1”.
#define Wire Wire1” does not work as expected, so I rewrote Wire to Wire1.

Or if you use “Seeed nRF52 mbed-enabled Boards 2.8.1”, IMU will work without any problem.

Thanks for your response. I tried using “Seeed nRF52 mbed-enabled Boards 2.8.1” but get this error:

Error: 13 INTERNAL: Cannot install platform: installing platform Seeeduino:mbed@2.8.1: searching package root dir: no unique root dir in archive, found ‘/Users/a2530/Library/Arduino15/tmp/package-3768760097/.github’ and ‘/Users/a2530/Library/Arduino15/tmp/package-3768760097/bootloaders’

I was able to specifically install the “Seeed nRF52 mbed-enabled Boards” version 2.7.2, but I get the same error as Hardeep_Singh when I try to update it to 2.8.1 - it’s clear that something is broken in the Board JSON file provided by Seeed. I hope Seeed can see and fix this! @msfujino - the 2.8.1 version doesn’t install on the Arduino IDE (I use version 2.0.3, which is the current download).

I installed on IDE 1.8.19 and am using it with IDE 2.0.3.
For problems with IDE2.0, you can post in the following forum, which will confirm and solve your problem in a very short time.When using mbed2.8.1, please also refer to the following link.

Are you suggesting using IDE 1.8 to make BLE sensor work until Arduino fixes 2.0.3 issues?

If you install mbed2.8.1 using the board manager of IDE1.8.19, it will be installed in the following directory This can also be used from IDE2.0.3.

\Arduino15\packages\Seeeduino\hardware\mbed\2.8.1

For your information

Hi everyone,
I am working with xiao ble in mbed version. I could not make the lsm6ds3 and mlx90614 work together(at same time). But it was possible for me to work the lsm6ds3 with max30100 and get the imu values and spo2. When i work with mlx90614, it is not printing any imu values or temperature and also it did not pop any error when i compile.

Hi,
sounds like an address issue? if you ask me?
HTH
GL :slight_smile:

Hi PJ_Glasso,

Thank you for your quick reply. I will try to look into it

Thanks

Sure, Post up your code, I can look . Be sure to use the code tags.
HTH
GL:-p
5A :grin:
6A