OTA on Wifi1010 = board stuck at boot? (no longer functioning?)

Hi all,

I'm using the > 6 Wifi1010's to do my home automation.
This is still a work in progress, so I'm using OTA (OverTheAir) to do firmware updates.

All was working great until some weeks ago. The board library and ArduinoOTA library was updated.
Now, I get the following behavior (100% repeatable):

  1. compile and flash an OTA sketch via USB (ArduinoOTA demo , or my own code, doesn't matter)
  2. All is working! (LED's working, connecting to network, ...)
  3. flash the same code as step 1 via the network port (OTA)
  4. I get teh responce "OK, software flashed succesfully'
  5. Board is stuck: no code boots. (no bootlader LED, nothing)
    I can recover by doublepressing the reset button -> force bootloader -> re-flash via USB (back to 1.)

The things I tried so far:

  • I've browsed a lot of fora & discussion groups. Yes, OTA is a bit unstable, but no one has the same bricking issue?
  • I tried a new WIFI1010 out-of-the-box. Same issue.
  • tried down- and upgrading WIFI firmware, libraries, re-install Arduino, ... NOP Issue still present. :frowning:

--> Can someone confirm that they can perform an OTA flash on MKR WIFI1010, where the board still boots afterwards?

(I'm using Nina FW 1.3.0, ArduinoOTA 1.0.5, WifiNINA 1.7.1 and SAM board 1.6.12)

Hi. you could try the Arduino WiFi101OTA library, only replace WiFi101 includes to WiFiNINA.
or if you could try the previous version of ArduinoOTA the 1.0.4. maybe a broke something in 1.0.5.
2 or 3 days ago I tested upload to my M0 over Ethernet and it worked without problems.
sorry, I don't have any of the NINA boards so to test WiFiNINA I would have to make the complicated wiring of ESP32 dev board to my MKR Zero, which I try to avoid for now

@tdegussem, some results?

Hi Juraj,

Thanks for the response!
I tried downgrading library versions, re-installing Arduino IDE, ... but no success.
Even the Arduino_OTA examples (with NINA) fails, so there is probably an error on my side.

The flashing itself seems to be okay (I get the 'OK' response after successfully flashing)
But the fact that the board is unresponsive after that flashing, make me suspect that the flashed binary image itself is corrupt.
The image transfer is handled by Python on my PC, so I'll now try to completely reinstall python.
I don't have any error messages during building, nor flashing, so there is no other debug means as trial & error.
I'll keep you updated.

tdegussem:
Hi Juraj,

Thanks for the response!
I tried downgrading library versions, re-installing Arduino IDE, ... but no success.
Even the Arduino_OTA examples (with NINA) fails, so there is probably an error on my side.

The flashing itself seems to be okay (I get the 'OK' response after successfully flashing)
But the fact that the board is unresponsive after that flashing, make me suspect that the flashed binary image itself is corrupt.
The image transfer is handled by Python on my PC, so I'll now try to completely reinstall python.
I don't have any error messages during building, nor flashing, so there is no other debug means as trial & error.
I'll keep you updated.

did you try to upload from Arduino IDE?

Do you mean serial port upload?
that's what I did initially, and to 'un-stuck' a board after an OTA attempt.
(after OTA flash, board is unresponsive, no Com port, nothing)

Are there other means to initiate an OTA upload via IP?

tdegussem:
Do you mean serial port upload?
that's what I did initially, and to 'un-stuck' a board after an OTA attempt.
(after OTA flash, board is unresponsive, no Com port, nothing)

Are there other means to initiate an OTA upload via IP?

OKAY , finally got the time to work on this issue..
So, I used a complete new PC, latest Arduino, latest libaries, latest python.
Still the same issue..

  1. The Arduino_OTA example compiles fine
  2. I upload the code via COM port
  3. The Arduino Wifi1010 restarts (USB connection cycle)
  4. the Arduino_OTA example runs, the ethernet port shows up in the IDE
  5. I select the port. Upload .. Upload succesfull.. Arduino restarts and ..
    Arduino does nothing (no longer COM port detected, no thernet port, device is bricked)

So it's not my PC, only original libraries and latest IDE..
I'm about to give up (and move over to another HW setup)

ota screen.JPG

ota screen.JPG

Juraj:
Hi. you could try the Arduino WiFi101OTA library, only replace WiFi101 includes to WiFiNINA.
or if you could try the previous version of ArduinoOTA the 1.0.4. maybe a broke something in 1.0.5.
2 or 3 days ago I tested upload to my M0 over Ethernet and it worked without problems.
sorry, I don’t have any of the NINA boards so to test WiFiNINA I would have to make the complicated wiring of ESP32 dev board to my MKR Zero, which I try to avoid for now

:stuck_out_tongue_closed_eyes: :smiley: FINALLY got it!!
I had to downgrade the ‘Arduino SAMD Boards ARM M0’ in Board manager
Version 1.8.8 will not work for OTA programming.
When using 1.8.7, the board reboots successfully after an OTA update.

tdegussem:
:stuck_out_tongue_closed_eyes: :smiley: FINALLY got it!!
I had to downgrade the 'Arduino SAMD Boards ARM M0' in Board manager
Version 1.8.8 will not work for OTA programming.
When using 1.8.7, the board reboots successfully after an OTA update.

are you sure that not only the com port behavior changed? after reset the board can change port

Yes, before the board was stuck:
no hotplug event, nothing on USB device manager, no Com port at all.
With the previous board definition files, the board cycles as normal (reset and then back a Com port)

in 1.8.8 MKR1010 has a new OTA parameter. it causes the upload tool to act as a server and the nina-fw and library then can download the update. but the tool still does upload, but the file is corrupted I suspect because it is read by the serving part too.

so remove in boards.txt
mkrwifi1010.arduinoota.extraflags=-d
to use the ArduinoOTA library

Okay, thanks for the info!
I'll test this in the coming days.

so that was fast. fixed 1.8.9 is released

wow indeed :o
I wish my daytime-job's software dev's would be that fast :slight_smile: