Incorrect FQBN error installing EI firmware for Arduino Nano 33BLE Sense

Hi,
I am doing the Coursera Intro to ML course with Shawn Hymel. I am following the Edge Impulse instructions to add my Arduino Nano 33 BLE Sense device to my EI project. I am using Windows 10 Home 64 bit, fully updated on my Asus T100HA notebook.

I am following the instructions on the Edge Impulse Arduino page at the 2. Update the firmware. I followed the instructions ok to download the latest Edge Impulse firmware, unzipped it and ran flash_windows.bat as Administrator. I told Defender SmartScreen to run it anyway. The process started and then I got this output -

You’re using an untested version of Arduino CLI, this might cause issues (found: 0.16.1, expected: 0.13.x
Finding Arduino Mbed core…
Installing Arduino Mbed core…
Updating index: package_index.json downloaded
Updating index: package_index.json.sig downloaded
Downloading packages…
Error during install: Get “http://downloads.arduino.cc/tools/openocd-0.10.0-arduino9-static-i686-w64-mingw32.zip”: dial tcp 104.18.29.45:80: connectex: An attempt was made to access a socket in a way forbidden by its access permissions.
Installing Arduino Mbed core OK
Finding Arduino Mbed core OK
Finding Arduino Nano 33 BLE…
Finding Arduino Nano 33 BLE OK at COM4
Error during Upload: incorrect FQBN: platform arduino:mbed is not installed
Press any key to continue . . .

How can I resolve this error please?
Thanks

Hi @EldotCampbell it still looks like your firewall is blocking a tools download from Arduino…

Error during install: Get “http://downloads.arduino.cc/tools/openocd-0.10.0-arduino9-static-i686-w64-mingw32.zip”: dial tcp 104.18.29.45:80: connectex: An attempt was made to access a socket in a way forbidden by its access permissions.

Could you check that your firewall allows the script to make outgoing connections? This has to be done once, afterwards no internet is required anymore.

Alternatively you can install the Arduino Mbed core from the Arduino IDE via Tools > Board > Board manager and finding

Hi @janjongboom, thanks for helping me. I don’t know how to check my firewall allows the script to make outgoing connections, so I tried the alternative you offered. I clicked on the link on Arduino.cc to install the Arduino IDE for Windows 10 and it installed it from the Microsoft Store. When I ran it, it showed it had remembered that I last used Arduino IDE on an Uno board (on a different PC!). So I changed the board to Arduino Nano. Then I chose Boards Manager and clicked Install on Arduino mbed-enabled Boards v1.3.2. But it showed this error in red at the bottom of the dialog > Error downloading http://downloads.arduino.cc/cores/core-ArduinoCore-mbed-1.3.2.tar.bz2.

This PC has a ethernet cable connection to a slave router off the main one. I’ll connect the PC direct to the main router and retry the download to see if that improves things.

I will reply when I’ve tried that, which will be tomorrow

Hi @EldotCampbell yeah that looks like it’s being blocked as well… I’m not too well versed here, cross-posting this on the Arduino forum might help, and I’ll point the Arduino CLI team there if you do so.

I connected my pc to the primary router and tried the original link on the Edge Impulse Ardino Nano 33 Ble Sense page … and it just worked. So I’ll have to check my router. Thanks for your help.

1 Like

Hi @janjongboom,
in my new MacMini M1 (Big Sur v11.2.3) I get this (strange) similar error:

You’re using an untested version of Arduino CLI, this might cause issues (found: 0.18.1, expected: 0.13.x)
Finding Arduino Mbed core…
Finding Arduino Mbed OK
Finding Arduino Nano 33 BLE…
Finding Arduino Nano 33 BLE OK
Flashing board…
Error during Upload: incorrect FQBN: platform arduino:mbed is not installed

Mbed library is installed, I have both Arduino IDE and Arduino IDE beta installed and they work with my Arduino Nano BLE 33 Sense.

Could you suggest what I can check?
Maybe is edge impulse not supported on Arm M1?

Trying to build it from scratch from your repository


I get another error (already posted as issue)

Thanks!
Luigino

Hi @lewix,

Could you run the following arduino-cli command and paste the output?
arduino-cli core list

Thanks,
Aurelien

Yes, this is the output:

ID Installed Latest Name
arduino:avr 1.8.3 1.8.3 Arduino AVR Boards
arduino:mbed_nano 2.0.0 2.0.0 Arduino Mbed OS Nano Boards
arduino:mbed_rp2040 2.0.0 2.0.0 Arduino Mbed OS RP2040 Boards

Hi @aurel,
with your request I found out I had two boards installed, with suspected same name (I think Arduino is updating mbed os to manage Pi Pico too).

I uninstalled both board e I relaunched

./arduino-build.sh --build

Build and so Flash worked!
Your script flash_mac.command works too!

Thank you for your help!
Luigino

1 Like

Hi, I facing a similar issue.

(loom) arduino-nano-33-ble-sense $ ./flash_mac.command
You’re using an untested version of Arduino CLI, this might cause issues (found: 0.18.1, expected: 0.13.x)
Finding Arduino Mbed core…
Finding Arduino Mbed OK
Finding Arduino Nano 33 BLE…
Finding Arduino Nano 33 BLE OK
Flashing board…
Error during Upload: incorrect FQBN: platform arduino:mbed is not installed
(loom) arduino-nano-33-ble-sense $

The output of the following commands is as follows:

(loom) arduino-nano-33-ble-sense $ arduino-cli board list
Port Type Board Name FQBN Core
/dev/cu.Bluetooth-Incoming-Port Serial Port Unknown
/dev/cu.usbmodem14201 Serial Port (USB) Arduino Nano 33 BLE arduino:mbed_nano:nano33ble arduino:mbed_nano

(loom) arduino-nano-33-ble-sense $ arduino-cli core list
ID Installed Latest Name
arduino:mbed_nano 2.0.0 2.0.0 Arduino Mbed OS Nano Boards
esp32:esp32 1.0.4 1.0.4 ESP32 Arduino

I am unclear how to proceed to rectify the FQBN. The script says “Finding Arduino Mbed OK” at the same time it also says “arduino:mbed is not installed” indicating something is missing and that isn’t very clear to me.

Grateful for any pointers.

Does the error relating to FQBN have anything to do with CLI version?

FYI : I tried to compile a sketch that uses the --fqbn switch to verifiy if there was any issues with the fqbn I was using.

(loom) arduino-nano-33-ble-sense $ arduino-cli compile --fqbn arduino:mbed_nano:nano33ble cliblink
Sketch uses 85248 bytes (8%) of program storage space. Maximum is 983040 bytes.
Global variables use 44184 bytes (16%) of dynamic memory, leaving 217960 bytes for local variables. Maximum is 262144 bytes.

Did not get any compile errors.

(loom) arduino-nano-33-ble-sense $ arduino-cli upload -p /dev/cu.usbmodem14201 --fqbn arduino:mbed_nano:nano33ble cliblink
Device : nRF52840-QIAA
Version : Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]
Address : 0x0
Pages : 256
Page Size : 4096 bytes
Total Size : 1024KB
Planes : 1
Lock Regions : 0
Locked : none
Security : false
Erase flash

Done in 0.001 seconds
Write 85256 bytes to flash (21 pages)
[==============================] 100% (21/21 pages)
Done in 3.345 seconds

Neither did i get any upload errors

The above promoted me to critically re-examine the error message “Error during Upload: incorrect FQBN: platform arduino:mbed is not installed”

So here is what I did:

install arduino:mbed

(loom) firmware-arduino-nano-33-ble-sense $ arduino-cli core install arduino:mbed
Tool arduino:openocd@0.11.0-arduino1 already installed
Tool arduino:arm-none-eabi-gcc@7-2017q4 already installed
Tool arduino:bossac@1.9.1-arduino2 already installed
Tool arduino:dfu-util@0.10.0-arduino1 already installed
Tool arduino:rp2040tools@1.0.2 already installed
Downloading packages…
arduino:mbed@2.0.0 downloaded
Installing arduino:mbed@2.0.0…
Configuring platform…
arduino:mbed@2.0.0 installed

and then ./flash_mac.command

(loom) arduino-nano-33-ble-sense $ ./flash_mac.command
You’re using an untested version of Arduino CLI, this might cause issues (found: 0.18.1, expected: 0.13.x)
Finding Arduino Mbed core…
Finding Arduino Mbed OK
Finding Arduino Nano 33 BLE…
Finding Arduino Nano 33 BLE OK
Flashing board…
Device : nRF52840-QIAA
Version : Arduino Bootloader (SAM-BA extended) 2.0 [Arduino:IKXYZ]
Address : 0x0
Pages : 256
Page Size : 4096 bytes
Total Size : 1024KB
Planes : 1
Lock Regions : 0
Locked : none
Security : false
Erase flash

Done in 0.001 seconds
Write 525440 bytes to flash (129 pages)
[==============================] 100% (129/129 pages)
Done in 20.576 seconds

Everything went well after that - I could see my device on the edge-impulse dashboard
after running edge-impulse-daemon locally

In summary:

  1. The only thing needed to solve the problem was to install arduino:mbed using the arduino-cli
  2. The solution did not seem to depend on the arduino-cli version as the script made me believe that initially
  3. The solution has nothing to do with fire-wall settings.

Thanks to good article on arduino-cli that helped me solve this.

Hi @ugmurthy,

Arduino released a new mbed core version recently, renaming the core from mbed to mbed_nano. I’ll check with the engineering script to update the flashing scripts.

Aurelien

Thanks @aurel. I had adrduino:mbed_nano 2.0.0 but for some reason the ./flash_mac.command did not work for me.

thanks for initiating update.

My core list now shows arduino:mbed as deprecated (guess that was expected)

(loom) (master) websocket $ python edgeingest.py
Uploaded file to Edge Impulse 200 b’idle01.23h5he5h.json’
(loom) (master) websocket $ arduino-cli core list
ID Installed Latest Name
arduino:mbed 2.0.0 2.0.0 [DEPRECATED - Please install standalone packages] Arduino Mbed OS Boards
arduino:mbed_nano 2.0.0 2.0.0 Arduino Mbed OS Nano Boards
esp32:esp32 1.0.4 1.0.4 ESP32 Arduino

Hi all,

We have a patch for this which we’ll release tomorrow. It adds compatibility with both cores on Windows/Mac/Linux.

2 Likes