Getting started with Arduino Nano 33 BLE Sense

Using MacOS 10.15.6
Used brew to install node.
Used brew to install arduino-cli
$ node -v returns v14.10.1
$ arduino-cli board list returns
Port Type Board Name FQBN Core
/dev/cu.Bluetooth-Incoming-Port Serial Port Unknown
/dev/cu.RonaldsiPad-WirelessiAP Serial Port Unknown
/dev/cu.usbmodem14201 Serial Port (USB) Arduino Nano 33 BLE arduino-beta:mbed:nano33ble arduino-beta:mbed

My problem is when I run:
$ npm install -g edge-impulse-cli

npm WARN deprecated request-promise@4.2.6: request-promise has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142

npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142

npm WARN deprecated har-validator@5.1.5: this library is no longer supported

/usr/local/bin/edge-impulse-uploader -> /usr/local/lib/node_modules/edge-impulse-cli/build/cli/uploader.js

/usr/local/bin/edge-impulse-data-forwarder -> /usr/local/lib/node_modules/edge-impulse-cli/build/cli/data-forwarder.js

/usr/local/bin/edge-impulse-daemon -> /usr/local/lib/node_modules/edge-impulse-cli/build/cli/daemon.js

/usr/local/bin/edge-impulse-run-impulse -> /usr/local/lib/node_modules/edge-impulse-cli/build/cli/run-impulse.js

/usr/local/bin/eta-flash-tool -> /usr/local/lib/node_modules/edge-impulse-cli/build/cli/eta-flash-tool/flashtool.js

@serialport/bindings@8.0.8 install /usr/local/lib/node_modules/edge-impulse-cli/node_modules/@serialport/bindings

prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild

prebuild-install WARN install No prebuilt binaries found (target=14.10.1 runtime=node arch=x64 libc= platform=darwin)

No receipt for ‘com.apple.pkg.CLTools_Executables’ found at ‘/’.

No receipt for ‘com.apple.pkg.DeveloperToolsCLILeo’ found at ‘/’.

No receipt for ‘com.apple.pkg.DeveloperToolsCLI’ found at ‘/’.

gyp: No Xcode or CLT version detected!

gyp ERR! configure error

gyp ERR! stack Error: gyp failed with exit code: 1

gyp ERR! stack at ChildProcess.onCpExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:351:16)

gyp ERR! stack at ChildProcess.emit (events.js:314:20)

gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:276:12)

gyp ERR! System Darwin 19.6.0

gyp ERR! command “/usr/local/Cellar/node/14.10.1/bin/node” “/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js” “rebuild”

gyp ERR! cwd /usr/local/lib/node_modules/edge-impulse-cli/node_modules/@serialport/bindings

gyp ERR! node -v v14.10.1

gyp ERR! node-gyp -v v5.1.0

gyp ERR! not ok

npm WARN tsargs@1.4.0 requires a peer of typescript@^3.1.6 but none is installed. You must install peer dependencies yourself.

npm ERR! code ELIFECYCLE

npm ERR! errno 1

npm ERR! @serialport/bindings@8.0.8 install: prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild

npm ERR! Exit status 1

npm ERR!

npm ERR! Failed at the @serialport/bindings@8.0.8 install script.

npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:

npm ERR! /Users/ronald/.npm/_logs/2020-09-16T17_24_02_027Z-debug.log

Ronalds-MBP:~ ronald$ edge-impulse-daemon

-bash: edge-impulse-daemon: command not found

I would appreciate any suggestions.

Hi @ron333, the CLI builds some native tools to talk over the serial port, which require a compiler on your system.

Based on https://medium.com/flawless-app-stories/gyp-no-xcode-or-clt-version-detected-macos-catalina-anansewaa-38b536389e8d I suspect that:

xcode-select --install

And then reinstalling again should work. Let me know if that helps.

1 Like

I did this:
Ronalds-MBP:~ ronald$ sudo xcode-select --install

Password:

xcode-select: error: command line tools are already installed, use “Software Update” to install updates

What to do now?
Thanks,
Ron

Hi Ron, hard to say… https://github.com/schnerd/d3-scale-cluster/issues/7 indicates that similar issues were resolved via:

sudo xcode-select -r

Then:

sudo xcodebuild -license

But I’ve never seen this error unfortunately.

The Xcode license goes on and on and on. I do not understand it.

Can I specify another compiler?

I did
$ gcc --version

Ronalds-MBP:~ ronald$ gcc --version

Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/4.2.1

Apple clang version 11.0.3 (clang-1103.0.32.62)

Target: x86_64-apple-darwin19.6.0

Thread model: posix

InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

Thanks again.
Ron

I made a mistake in my first attempt. You said to reinstall (arduino-cli).

Now I did the following:
$ brew remove arduino-cli
$brew install arduino-cli

Now when doing:
$ npm install -g edge-impulse-cli

It works:

Thank you for using serialport!
If you rely on this package, please consider supporting our open collective:

https://opencollective.com/serialport/donate
npm WARN tsargs@1.4.0 requires a peer of typescript@^3.1.6 but none is installed. You must install peer dependencies yourself.

  • edge-impulse-cli@1.8.2
    added 262 packages from 212 contributors in 40.004s

Jan,
Thank you very much for helping.

Ron

@ron333 :rocket: Thanks for reporting back!