Arduino MKR 1010 Firmware update failing, maybe bricked?

OS: Windows 10
IDE: 1.8.13
Board: Arduino MKR 1010
SAMD 1.8.10
The original firmware was 1.2.3 IIRC.

Recently acquired a MKR 1010, it was working great, connected to the internet just fine, and as part of troubleshooting a different issue with WIFI.gettime (or something along getting current time I've been so stuck on this issue that I sort of forgot what the initial issue was) I was trying to update the firmware on the board.

Plugged it in, uploaded the firmware updater, selected the board, tested the programmer,(this is the part where I think things messed up) and saw that there were non nina versions of firmware available, which at the time I thought wasn't an issue and I went ahead and selected the 1.3.0 version for the MKR 1010. I attempted to update the firmware, it got past the erasing the flash part, but gave me an error at writing to it.
Since then I haven't been able to access any wifi functions (including checking the current firmware version) any attempt at updating the firmware leads to some issue, the main one being "Error while writing flash memory" but also sometimes "Error while erasing flash memory".

java.lang.Exception: Error while erasing flash memory.
	at cc.arduino.plugins.wifi101.flashers.java.FlasherSerialClient.eraseFlash(FlasherSerialClient.java:152)
	at cc.arduino.plugins.wifi101.flashers.java.NinaFlasher.updateFirmware(NinaFlasher.java:83)
	at cc.arduino.plugins.wifi101.UpdaterImpl$2.run(UpdaterImpl.java:214)
java.lang.Exception: Error while writing flash memory.
	at cc.arduino.plugins.wifi101.flashers.java.FlasherSerialClient.writeFlash(FlasherSerialClient.java:146)
	at cc.arduino.plugins.wifi101.flashers.java.NinaFlasher.updateFirmware(NinaFlasher.java:91)
	at cc.arduino.plugins.wifi101.UpdaterImpl$2.run(UpdaterImpl.java:214)

I've tried two different computers, tried to upload a blank sketch while marking the board as a MKR 1010, tried updating to different versions of the firmware, but no such luck on anything.

Any help or advice would be greatly appreciated. Thanks!

errorerasingflash.jpg

errorerasingflash.jpg

Hi, I have the same problem on a Mac Big Sur.
Same Board, same IDE (1.8.13) , same SAMD (1.8.10)

I saw that, restarting the IDE, the "error while erasing" disappear, but I cannot update the firmware....

I believe there is a bug in the new release of Arduino SAMD Boards that causes this:

Arduino's developers are already working on a fix. Until the next release comes out wiith that fix, the workaround is to install Arduino SAMD Boards 1.8.9:

  • Tools > Board > Boards Manager
  • Wait for the updates to finish.
  • From the list of boards platforms, click on "Arduino SAMD Boards"
  • From the "Select version" dropdown menu, click on "1.8.9".
  • Click the "Install" button.
  • Wait for the installation to finish.
  • Click the "Close" button.

Now you should be able to update your firmware without getting the error.

Since you likely only need to update the firmware once, after doing so, you can upgrade back to 1.8.10 by repeating the instructions above, but this time updating to Arduino SAMD Boards 1.8.10 again.

Ok, thanks.

That did the trick.

I Updated the Firmware at 1.3.0, but when I run the CheckFirmwareVersion the Serial Monitor says that the latest version is 1.4.2

The WiFiNINA library installed is 1.8.0

I know I'm a noob, but I don't understand... In the firmware panel, 1.3.0 is the latest I see....

Thanks for the support

FabioG

The reason for this is the firmware is distributed with the Arduino IDE. There have been several releases of the firmware since the release of the Arduino IDE you're using.

The easiest way to get the latest firmware is by using the hourly build of the Arduino IDE:

The hourly build is primarily intended to be used for beta testing, so I'm not necessarily recommending that you permanently switch to using the hourly build for your IDE, so you can just use the hourly for the firmware update, then switch back to the release version of the IDE for your normal usage.

An alternative is to use the command line updater tool that's in beta development stage:

Hi,

I just downloaded the hourly build 1.8.14 Hourly Build 2020/12/15 11:34, i guess this is the last one....

I checked the Firmware, as before I see rel 1.3.0 on the board, but the latest - it says - it's 1.4.2

Something is wrong, I guess, maybe I'm working in a sort of "limbo" between releases... In the Hourly Build I see I can install the 1.4.1 as the latest.

Should I wait the next Hourly Build ? Or am I doing something wrong ?

Just use 1.4.1. That will work fine. I don't even see a 1.4.2 release in the repository, so I think that message is in anticipation of an upcoming firmware release that hasn't happened yet.

Thanks a LOT !!!! It works !!!!

I also tried the sample sketch, connecting to my home network, and I can confirm that everytihing is ok.

I installed back the SAMD 1.8.10

Thanks again for Your precious support
FabioG

You're welcome. I'm glad to hear it's working. Enjoy!
Per

Super.
Solution worked perfectly.
Thanks a lot !!!

Hi,

Where can I find v 1.4.2
In the NinA FW Updater I see 1.3.0 as highest level and this is what sw replies when I ask for WiFi FW version

String fv = WiFi.firmwareVersion()
Serial.println (fv);

WiFi Firmware Version is : 1.3.0
FW version required is : 1.4.2

Please upgrade the firmware

I Use the Arduino IDE Windows Store 1.8.42.0
WiFiNINA 1.8.0
SAMD v1.8.9

I don't know what the story with that "1.4.2" version is. It's either an error or else it was done in anticipation of a release that hasn't come yet. You can see here that the latest release is 1.4.1:

The firmware is distributed along with the Arduino IDE. The reason you are seeing an version of the firmware older than the latest 1.4.1 available is that there have been new firmware releases since the time of the last Arduino IDE release. However, there as an hourly build of the Arduino IDE available that provides the latest version of the firmware. You can get it here:

The hourly build is primarily intended to be used for beta testing, so I don't necessarily recommend that you use it for your regular IDE, but it's an easy way to get the latest version of the firmware. After you've installed the firmware, you are welcome to go back to using your Windows Store version of the Arduino IDE.

If you prefer, there is also a beta stage command line tool for updating the firmware:

Thanks for your reply.

Higher versions have strange release dates.

Eearlier then 1.3

Do you mean the nina-fw release dates? For me, they are listed at the link I provided above in cronological order:
1.4.1 … on 17 Aug
1.4.0 … on 12 Jul
1.3.0 … on 23 Dec 2019
1.1.0 … on 4 Oct 2018
1.0.0 … on 28 Jun 2018

pert:
I believe there is a bug in the new release of Arduino SAMD Boards that causes this:
Error while writing flash memory - Arduino Nano 33 IoT · Issue #580 · arduino/ArduinoCore-samd · GitHub
Arduino's developers are already working on a fix. Until the next release comes out wiith that fix, the workaround is to install Arduino SAMD Boards 1.8.9:

  • Tools > Board > Boards Manager
  • Wait for the updates to finish.
  • From the list of boards platforms, click on "Arduino SAMD Boards"
  • From the "Select version" dropdown menu, click on "1.8.9".
  • Click the "Install" button.
  • Wait for the installation to finish.
  • Click the "Close" button.

Now you should be able to update your firmware without getting the error.

Since you likely only need to update the firmware once, after doing so, you can upgrade back to 1.8.10 by repeating the instructions above, but this time updating to Arduino SAMD Boards 1.8.10 again.

I forgot to thank you earlier. I did exactly what you said and everything worked perfectly. Thanks so much!

You're welcome. I'm glad to hear it!