This is a known deficiency, which is being tracked here;
For now, if you need to update your firmware, you have three options:
Use the classic Arduino IDE (but note that it doesn't have the latest NINA firmware)
Use Arduino IoT Cloud. If you upload a sketch via the Arduino IoT Cloud editor (but not the "Full Editor"), the outdated firmware is automatically updated with the latest one.
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'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
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!!)
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:
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
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.