Connecting Arduino Nano 33 BLE Sense to Edge Impulse

Hi,

I’m trying to connect my Arduino Nano 33 BLE Sense to Edge Impulse on my MacBook Pro.

I have been following the documentation and it still won’t recognise my board, so I’ll just go through everything I’ve done and hopefully someone can help me.

Firstly, to download the Edge Impulse CLI, I downloaded Python 3 and Node.js. That went well.

Then i executed this in terminal and got this error back

npm install -g edge-impulse-cli --force

EACCES: permission denied, mkdir ‘/usr/local/lib/node_modules/edge-impulse-cli’

I followed the trouble shooting and executed this before trying again with the installation.
% sudo chown -R $USER /usr/local/lib/node_modules.

EACCES: permission denied, symlink ‘…/lib/node_modules/edge-impulse-cli/build/cli/blocks.js’ -> ‘/usr/local/bin/edge-impulse-blocks’

Then I guessed a solution and executed this before trying again with the installation
% sudo chown -R $USER /usr/local/bin/
Then I think my computer asked me to install something, which I did and I tried again and it seemed to work. Below is what my terminal outputted.

npm WARN using --force Recommended protections disabled.
npm WARN deprecated @zeit/dockerignore@0.0.5: “@zeit/dockerignore” is no longer maintained
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated request-promise@4.2.4: request-promise has been deprecated because it extends the now deprecated request package, see
npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1.
npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1.
npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1.
npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1.
npm WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See
npm WARN deprecated request@2.88.0: request has been deprecated, see
added 385 packages, and audited 386 packages in 13s
12 packages are looking for funding
run npm fund for details
10 vulnerabilities (7 moderate, 1 high, 2 critical)
To address all issues (including breaking changes), run:
npm audit fix --force
Run npm audit for details.

Secondly, I installed the Arduino CLI. It’s unzipped and in my downloads folder.

Thirdly, I put my Arduino Nano 33 BLE Sense into bootloader mode and installed the latest Edge Impulse firmware. It’s in my downloads folder. I can’t unzip “arduino-nano-33-ble-sense.ino.bin” with Archive Utility or The Unarchiver on my Mac. This may be the issue.

Then I ran flash_mac.command and, as shown in the screenshot below, it thinks that I haven’t downloaded the Arduino CLI.

I can’t get much further than this…

I have tried manually dragging the arduino-cli into my usr/bin folder, so that it is in my path. That got me a bit further to the stage where you input your Edge impulse account, but it still couldn’t detect my board.

Please help me :slight_smile:

Hello @doyney,

Step 1: Great, it seems that you managed to install the Edge Impulse CLI.
Your terminal output only shows warning but no errors.

Step 2:
Here I think your installation was not successful.
To install Arduino CLI on your Macbook pro you can use brew, it will automatically add it to your PATH:

brew update
brew install arduino-cli

I haven’t tried the other installation methods, but there are all here, feel free to reach out to Arduino if something is unclear in their documentation: https://arduino.github.io/arduino-cli/0.20/installation/

Step 3: arduino-nano-33-ble-sense.ino.bin is a binary so you won’t be able to unzip it. The flash_mac.command will use this binary to flash it to your board.
And your issue from your terminal output comes from the Arduino CLI installation.

Let me know if you need further help.

Regards,

Louis

1 Like

Thanks Louis, I’ve installed the Arduino CLI with homebrew now.

But now my terminal says this. It can’t find my connected Arduino. I have double tapped the reset button so it is in the right mode.

Hello @doyney,

Can you try with another USB cable maybe?

Regards,

Louis

1 Like

Wow, that was it. Thanks Louis!

1 Like