[SOLVED] Arduino Nano 33 IoT not recognized by Windows 10

Hi,

I was trying to upload a project to my Arduino Nano IoT, which have been working fine always. But then it stop working. Windows 10 doesn't recognized it anymore. What I think it happened, is that I try to upload the sketch like it was an Arduino Uno. I don't know if maybe is a bug from the 1.8.10 IDE, but it didn't show up any warning. Tried to upload it again as the board it should be and didn't work either, even using an Arduino UNO as ISP with a level shifter. Does it means my micro-controller died even if it has both of its LEDs on?

Try this:

  • Press the reset button on your board quickly twice. You should now see the LED on the board pulsing, which means the bootloader is running. The double press causes the bootloader to run indefinitely (until the board is reset, powered off, or an upload is done), which means you don't need to get the timing of the reset just right.
  • Select the port of your board from the Tools > Port menu. The port will be different when the bootloader is running so don't assume you already have the correct port selected.
  • Start an upload in the Arduino IDE.

The upload should now finish successfully. After this, you should be able to go back to doing normal uploads without needing to press the reset button. If you still need to do the reset trick to do uploads after this, the problem may be caused by your code. You can verify this by uploading a simple sketch like File > Examples > 01.Basics > BareMinimum.

Swagseneyer:
even using an Arduino UNO as ISP with a level shifter.

The "Arduino as ISP" only works for the Arduino boards that have an AVR-based microcontroller. The Nano IoT has a SAMD architecture based microcontroller and so you would need to use a different type of programmer. However, hopefully the "double tap" technique I described above will work and so it won't be necessary to go to those lengths.

Hi pert, thanks for taking your time. Didn't realized that about the new NANO's, that they are SAMD based. I made a wrong move there. Your solution is absolutely right. Seems not to be my code, because is now running normally. I think it glitched out when I forgot to pick the type of board in the IDE.

Also, I'm curious. Where did you found that information? I tried to find some documentation about it, but not found any solution to my problem. Seems to be very easy if there were a troubleshooting section or some kind of documentation. I hope this case just works for the future.

Thanks again!

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

Unfortunately, the double reset trick doesn't seem to be well documented. I do see that it's mentioned in the Nano 33 BLE documentation:

NOTE: If the board does not enter the upload mode, please do a double press on the reset button before the upload process is initiated; the orange LED should slowly fade in and out to show that the board is waiting for the upload.

but the same text is not provided on the Getting Started page for the Nano 33 IoT.

There is an official troubleshooting page, but it is quite outdated and so it doesn't document this feature, which was added only to the more modern Arduino boards with the native bootloader (for example, the Leonardo does not have it, though you can do a similar fix by doing a single press of the reset button at just the right time during the upload with that board).

I agree that it would be a good idea to more thoroughly document this, as it can definitely be a life saver in certain rare cases where the board is "bricked".

pert:
Try this:

  • Press the reset button on your board quickly twice. You should now see the LED on the board pulsing, which means the bootloader is running. The double press causes the bootloader to run indefinitely (until the board is reset, powered off, or an upload is done), which means you don’t need to get the timing of the reset just right.
  • Select the port of your board from the Tools > Port menu. The port will be different when the bootloader is running so don’t assume you already have the correct port selected.
  • Start an upload in the Arduino IDE.

The upload should now finish successfully. After this, you should be able to go back to doing normal uploads without needing to press the reset button. If you still need to do the reset trick to do uploads after this, the problem may be caused by your code. You can verify this by uploading a simple sketch like File > Examples > 01.Basics > BareMinimum.
The “Arduino as ISP” only works for the Arduino boards that have an AVR-based microcontroller. The Nano IoT has a SAMD architecture based microcontroller and so you would need to use a different type of programmer. However, hopefully the “double tap” technique I described above will work and so it won’t be necessary to go to those lengths.

this worked, thanks very much! can’t believe this isn’t better documented

You're welcome. I'm glad if I was able to be of assistance. Enjoy!
Per

Thank You very much. I have a nano 33 IoT and a BLE Sense board. Some how they both stopped uploading just like this. The double tap made my day!! This issue should be better documented!!

Hi everyone,
I ve recently bought the Arduino Nano-33-IoT and I tested an sketch of Arduino's BLE . I uploaded the file
at the bigining I saw both lights blinking and actually the microcontroller was recognized but later on as I was trying to check a graph based on this post :
Get started with machine learning on Arduino | Arduino Blog.
Two things happened:
1.There was an increased delay of the response on the microcontroller graph.
2. My arduino IDE stop responding, so I decided to unplug the microcontroller and since then my Nano-33-IoT doesn't turn on...

P.S I already tried with the reset button.
You can find the picture of the photo below of how my arduino looks like nowadays.

Greetings.