Arduino Nano 33 BLE Firmware Question

Hey, so I’m looking to build a project here.

I need to use Edge Impulse (well, because its so darn useful!) but I have a concern when we flash the firmware of the board, will that remove the capability of using Bluetooth? That may be a stupid question, but I’m not aware of everything included in the Firmware update.

Hi @DoitfortheLulz,

Thanks for your feedback! This is a good question. If you select the Arduino Nano BLE board firmware as Deployment option, this will not include Bluetooth functionality.
The best option would be to deploy as an Arduino library instead, and in your Arduino sketch you can then add BLE libraries.

Let me know if that helps,

Aurelien

@aurel

So, you are saying if I deploy as firmware, but include the BLE libraries in my sketch, they won’t work? I guess that is what you are saying.

Can you explain to me a bit more about why this is the case? Does the firmware created from the deployment option just overwrite the devices BLE capabilities?

Hi @DoitfortheLulz,

if you deploy as a firmware you directly get a binary file, you can’t use it to add additional (BLE) libraries.

You can include BLE libraries if you deploy as an Arduino library as you have access to the source code to compile your sketch.

An alternative is to clone our open-source firmware: https://github.com/edgeimpulse/firmware-arduino-nano-33-ble-sense. This is the code used to generate the binary within the studio. Here you can add BLE libraries and keep the data ingestion, remote management and inferencing features all at once.
If you go this route, you will need also to export your impulse as a C++ library and copy the content (tflite-model/, edge-impulse-sdk/, model-parameters/) into the src/ folder.

Aurelien

@DoitfortheLulz On the Nano 33 BLE Sense just use export as Arduino library, then select one of the examples that come with the library. You can mix in the ArduinoBLE library with no problem in your sketch.

Hi aurel

how can I get the “Arduino Nano 33 BLE” BLE library?
I used esp32 and it has a BLE library that inside have client, server, uart, ibeacon etc.
does Nano 33 have like that BLE library?

Best regards
fenyi

@fenyi, yes, use the ArduinoBLE library (you can find it via the Library Manager in Arduino). Has both central & peripheral examples: