[/Begin Disclaimer]
I recently received an XIAO BLE Sense board but have not tried to access the LSM6DS3 device.
[/End Disclaimer]
First, I note that the text on that wiki page says this:
Step 1. Download Seeed_Arduino_LSM6DS3 Library
But the link sends you to the Arduino_LSM6DS3 library, not the Seeed _Arduino_LSM6DS3 library.
This is, apparently, the original source from which a Seeed-specific library was derived.
A Seeed library can be found here:
Further narrative on the wiki page refers to examples that are found in the Seeed_Arduino_LSM6DS3 library, and not in the Arduino_LSM6DS3 distribution to which the wiki directs us.
I have a couple of “issues” with the XIAO BLE, and with other Seeed boards I have tested recently (XIAO RP2040, Wio RP2040).
First of all:
Many of the examples on various Seeed pages for these recent boards simply do not work. Also schematics don’t agree with what’s on the actual boards, and there are discrepancies in software (arduino_pins.h in the board-specific variants directories) that create additional problems.
Maybe “someone” (we have no way of knowing who) decided there were problems with the Seeed_Arduino_LSM6DS3 library and changed the link, without taking into account that NOTHING on the wiki page described how to use this library. Or, maybe something else.
Bottom line:
Good Luck.
Regards,
Dave
Footnote:
[/Begin Editorial Opinion]
My second “issue,” specific to the XIAO BLE software, is that the Seeed-developed version of that library uses the same class name and same library .h file name as the original, which makes it essentially impossible to use if both are installed in the Arduino library tree. I mean, maybe some of us have non-Seeed boards that use this device and need the other library to be installed. Do any of the Seeed developers have any real-world experience outside their little sandbox?
This is a VERY BAD thing. It would have been so simple to just use different names to avoid confusion by the users and to avoid system errors/warnings when the Arduino system tries to guess which one you intend to use when you include LSM6DS3.h in your sketch and instantiate an LSM6DS3 object. Very amateurish and near-sighted on the part of whoever did the actual transmogrification. And to whoever tested this mess. (They do test this stuff, right?)
[/End Editorial Opinion]