No way to update firmware

I've just got a new Nano 33 IoT and am getting a "Firmware needs updating" message running a proven working sketch.

In IDE 1.8.15 there is a helpful menu option in 'Tools' called:

'WiFi101 / WiFiNINA Firmware Updater'

but this is missing in IDE 2.0 beta 7.

This is a known deficiency, which is being tracked here;

For now, if you need to update your firmware, you have three options:

Thanks for the reply.
I had tried the "arduino-fw-uploader" command line tool but am unable to make it work.
The documentation is a bit vague but eventually I got it running but I get an error message that the 'bossac' programmer can't be found - but it is certainly available on my system at:
~/Library/Arduino15/packages/arduino/tools/bossac/1.7.0-arduino3/bossac

I agree. There has been a lot of work on improving that situation in the last couple weeks and the next release will have better documentation.

Please share the command line you're using.

I've not got a lot of experience of running command lines, so....
I downloaded 'FirmwareUploader_0.1.10_macOS_64bit' and unzip it.
I open Terminal and drag the 'FirmwareUploader' executable in, followed by:
-flasher firmwares/NINA/FirmwareUpdater.nano_33_iot.ino.bin -firmware firmwares/NINA/1.4.7/NINA_W102.bin -port /dev/cu.usbmodem101 -address arduino.cc:443 -programmer {runtime.tools.bossac}/1.7.0-arduino3/bossac

I tried leaving out the '-programmer' but I get an error:
ERROR: You must specify a programmer!
I've tried variations for the bossac programmer but still get the same message that it can't be found.

On my system, the bossac programmer is here:
~/Library/Arduino15/packages/arduino/tools/bossac/1.7.0-arduino3/bossac

Thanks for your continued help!

I also tried to create 'FirmwareUploader' from the latest sources using Task but couldn't get that to compile either (I think a lack of documentation and my understanding again!!)

Here is the problem:

This {runtime.tools.bossac} is a very confusing way of saying "the folder that contains your bossac installations" (this is the syntax used in Arduino boards platform configuration files, but nobody other than platform developers would know that).

So you should replace that with ~/Library/Arduino15/packages/arduino/tools/bossac:

FirmwareUploader -flasher firmwares/NINA/FirmwareUpdater.nano_33_iot.ino.bin -firmware firmwares/NINA/1.4.7/NINA_W102.bin -port /dev/cu.usbmodem101 -address arduino.cc:443 -programmer ~/Library/Arduino15/packages/arduino/tools/bossac/1.7.0-arduino3/bossac

Even though the documentation has been improved, this part is still not well documented.

However, there is a release candidate with pre-build binaries for every operating system available for download here:

That works!!

In case anyone else has the same issue, I used the release candidate with the following command line:
firmware flash --fqbn arduino:samd:nano_33_iot -a /dev/cu.usbmodem101

Thank you so much for the help you've given.

You're welcome. I'm glad to hear it's working now.

I'm hoping the new interface we're changing to in the 1.0.0 release will make the tool easier to use. The command you ended up with after switching to 1.0.0-rc3 looks a lot cleaner to me than the equivalent one for the 0.1.10 interface.

Regards,
Per

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.