I ran into issues making my newly purchased XIAO BLE and XIAO BLE Sense devices work with the XIAO Expansion Board display, so I am sharing my findings here.
In a nutshell, the various code examples on the XIAO BLE and Expansion Board wiki pages did not work for me: some constants used by the code have not been defined in the version of the Board Manager that I have, and the function call for setting up the connection with the display does not work with both my XIAO BLE and XIAO BLE Sense devices.
Hi jegweb - great you found this oops and thanks for sharing
The Xiao BLE looks like a nice little board. Just wondering, have you used the BLE functionality? From what I see (without a Xiao in hand) the Xiao uses the ArduinoBLE.h library as default. For my use, I really need the Adafruit bluefruit.h or SandeepMisty NRF library, but no point going down that path unless the BT of this module works well. Be very interested in your experience on this once you get to it
We have been working hard on XIAO RP2040 and XIAO BLE compatible XIAO expansion board. But because of the Spring Festival holiday some time ago, the process was delayed. Thank you so much for your hard work on this project.
Hi Brendan,
I have not yet played with the BLE functionality, but I intend to do so next week.
I will then check the libraries that you mention and keep you posted.
Adafruit_nRF52_Arduino is a fork from SandeepMisty NRF library. However, BLE support is packaged within the board manager in Arduino IDE, and not as a separate library. Integration with the XIAO BLE is therefore less trivial for me.
Adafruit nRF52 relies on Nordicās S140 SoftDevice, which is already flashed into the XIAO BLE by default (version 7.3.0). However, the S140 API is not present in the board manager of the XIAO BLE, which seems a bit odd to me.
I believe an integration of the XIAO BLE with either the Adafruit nRF52 or SandeepMisty NRF library is possible for someone willing to spend some time on that.
Is there a specific reason why you need to use Adafruit nRF52 or SandeepMisty NRF library?
Hello @jegweb,
I need to make a purchase decision on the Xiao BLE, but I would like to understand the BLE communication programming first.
I canāt find example code. It seems you got the examples in the Arduino IDE to work. Is that correct?
Thanks,
P
PS: I wanted to IM you, but I might not have that forum privilege yet. Just joined!
Hi @pescatore,
Indeed the Arduino BLE library is working fine with the XIAO BLE devices.
You can find programming examples in the git repository (check the āexamplesā folder).
You will notice that the Arduino BLE library is quite low level: it does not provide much helper functions to develop standard services. With that library you have to build your BLE services from scratch.
Integration with a higher level library (like SandeepMisty NRF) would be more than welcome.
But for simple BLE interactions this is doing the job.
HTH
In case there still people scanning this thread to check whether Adafruitās bluefruit API can be used with the Xiao BLE, the answer is YES.
I recently experimented that successfully, BUT it requires using the non-MBED version of the board manager => āSeeed nRF52 Boards by Seeed Studioā v1.x.x.
Note that the v1.x.x does not seem to support the extra sensors of the XIAO BLE āSenseā board.