NANO 33 IoT stopped work

Hello everyone,
I have a NANO 33 IoT since 2018 that now suddenly stopped work. When is connected on energy (computer or external) the Led green is on, but can't make an upload because don't be recognized. Someone can help me, please!
Thanks.
Wilson

1 Like

The tricky thing about the boards with native USB functionality like your board is that the USB code that creates the CDC serial port is running on the same microcontroller as your sketch. This means your sketch code can break the USB code, or stop it from running.

Fortunately, there is an easy way to recover from this situation:

  • Press and release 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 number may 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.

2 Likes

Hi,

Unfortunately do not worked "press and release" the reset button quickly. The issues continue the same.
When I provide energy the green Led on, but when I try make upload found the message that "cold not find a card on he selected port."
Do you have another suggestion?

Regards,

Wilson

Hi everyone,
I got have Arduino Nano 33 IoT that, when energized, put on green led, but can't be recognized any port. I tried using some examples pressing reset during upload, but don't work.
Would someone be a suggestion to fix these issues?

When you do the double reset, does the "L" LED start pulsing?

pert:
When you do the double reset, does the "L" LED start pulsing?

Not, happens nothing,

Hi Wilroberto.

I use the double tap reset frequently since I have my new 33 IOT. And first time it wasn't recognize by PC (win 10), I felt world crumble around me.

Quick search on web and I get familiar with double-tap reset and reloading. Note I may have to repeat it several times, sometimes need to upload the blink example to ensure proper core loading, and once, re-install Arduino IDE.
But it works.

My old clone-NANO has the same behavior you described: power led is ON but nothing else happened and I can't put new code on it. But I do know what happened as while setting up breabord a battery wire slightly touched the USB port. Sparkle light that came up from the USB port allows few hope for the future...

wish your 33 well.

Note: an alternative method is described at the end of the post.

Using an Arduino board as the programmer

You'll need

  • An extra Arduino board that runs at 3.3 V to use as the programmer.
    • Any of the SAMD architecture boards (e.g., MKR boards, Nano 33 IoT, Zero) will work fine.
    • The sketch is too large for the AVR architecture boards (e.g., Mega), so they can't be used.
    • The sketch doesn't compile for the Nano 33 BLE, so it can't be used.
  • A way to make the connections to the SWD pins on your target Arduino board.
    For the Nano 33 IoT and the MKR Boards other than MKR1000, I like to use a 0.1" pitch 2x3 POGO adapter.
    You could also solder wires to the test points if you prefer. On the MKR boards other than the MKR1000, the SWD header is on the bottom of the board and is the footprint for a 0.1" pitch 2x3 SMD header (e.g., https://www.digikey.com/short/z3dvdv). On the MKR1000, it is a 0.05" pitch 2x5 male header on the top of the board, which you will need an adapter and cable for.

Instructions

  1. Select Sketch > Include Library > Manage Libraries... from the Arduino IDE menus.

  2. Wait for the download to finish.

  3. In the "Filter your search..." field, type "Adafruit DAP library".

  4. Press Enter.

  5. Click on "Adafruit DAP library by Adafruit".

  6. Click the Install button.

  7. Wait for the installation to finish.

  8. Click the Close button.

  9. Select File > Examples > Adafruit DAP library > samd21 > flash_MKR_bootloaders from the Arduino IDE menus.
    (despite the "MKR" in the sketch name, this also supports the Nano 33 IoT)

  10. Select your programmer Arduino board from the Tools > Board from the Arduino IDE menus.

  11. Select the port of the programmer Arduino board from the Tools > Port from the Arduino IDE menus.

  12. Select Sketch > Upload from the Arduino IDE menus.

  13. Wait for the upload to finish successfully.

  14. Unplug the programmer Arduino board from your computer.

  15. Connect the programmer Arduino board to the target Arduino board as follows:

    Programmer Target
    VCC +3V3
    1 SWDIO
    2 SWCLK
    GND GND
    0 RESETN

    SWD pads on MKR boards other than MKR 1000:
    MKR SWD
    MKR1000 SWD header pinout:
    MKR1000 SWD
    Nano 33 IoT SWD pads:
    Nano 33 IoT SWD

  16. Plug the USB cable of the programmer Arduino board into your computer.

  17. Select Tools > Serial Monitor from the Arduino IDE menus.

  18. Select "No line ending" from the dropdown menu near the bottom right corner of the Serial Monitor window.

  19. You should see some instructions for using the sketch in the Serial Monitor output field.
    This includes a menu of the boards supported by the sketch:

    Select Arduino MKR board to erase and flash with bootloader:
    
    Z     -> Arduino Zero (6504 bytes)
    MZ    -> Arduino MKR Zero (6408 bytes)
    1000  -> Arduino MKR 1000 WIFI (6408 bytes)
    1010  -> Arduino MKR WIFI 1010 (7984 bytes)
    
    [...]
    

    Find your target Arduino board on the list and note the code written to the left of it on the list.

  20. Type the code for the target Arduino board in the Serial Monitor's input field.

  21. Click the Send button to the right of the Serial Monitor input field.

  22. The Serial Monitor output field should now show the board you selected and the progress of flashing the bootloader to the target Arduino board.
    Wait for it to show "Done!"

  23. Unplug the programmer Arduino board from your computer.

  24. Disconnect the programmer Arduino board from the target Arduino board.


Alternatives

These are some alternatives to the "Adafruit DAP" method I described above. I'll share one here:

Using a CMSIS-DAP debug probe as the programmer

If you have a CMSIS-DAP compliant debug probe, you can just do this instead:

  1. Connect the debug probe to your Arduino board.
  2. Select Tools > Programmer > Atmel EDBG from the Arduino IDE menus.
  3. Select Tools > Burn Bootloader from the Arduino IDE menus.

The "Burn Bootloader" process should now finish successfully.

I use this little open source debugger.

pert:
There is also the possibility that the bootloader on the board was corrupted (the most common cause is trying to upload to the Nano 33 IoT with the Nano 33 BLE board selected in the Arduino IDE).

Oh boy. now considerating purchase a dedicated computer to each of my board!

Haha, that's one way to avoid that method of bricking your board for sure!

I learned of this thing by bricking my ~$100 MKR Vidor 4000 board. It would have been an expensive lesson if I hadn't managed to revive it!

Good to hear.

I unsuccessfully tried to override USB port with "headers pin" on my poor NANO after reading "boot loader last chance" topic, but Alas! the 3,5A/h LI-Ion battery pack I spared for driving DC motors had ruined any hope.
Now I put physical interrupt on my power lines...

Self-tricked me once, shame on me...

#ifndef ARDUINO_ARCH_SAMD
#error "Select a SAMD board"
#endif

Hi!
I think that with your help, maybe I can rescue my device.
Thank you very much!

You're welcome. I'm glad if I was able to be of assistance. I'm sending you best wishes for a resurrection of your Arduino board!
Per

Hello Everybody,

It seems like a lot of people have com issues with the 33 Iot. I purchased a genuine Nano 33 Iot to make a neat mood light project I found on line. The LED's are individually addressable using WS2812b protocol. I downloaded the SAMD core (Arduino SAMD 32-bits ARM cortex-mo+). I then selected Arduino board as Nano 33 Iot, com4 port, and did a board check. It responded with the board s/n and some other info I didn't understand. I then went to "FastLED" and downloaded the sketch's. I put the folder in "Libraries" and selected "Color Pallet" to upload to the Arduino. Every thing compiled and uploaded with out errors. I then powered the LED strip and Arduino with 5v and all my 152 LED's lit up with really cool color patterns. How cool!

I then tried to upload another sketch that came from FastLED . While it was working on the upload my win10 computer beeped and received an error, unrecognized com port. I unplugged the USB, plugged back in and get the same error in device manager. What happened?? I tried pushing the reset button twice on Arduino several times with no luck. I also tried three other USB cables.

I then installed Arduino IDE on my laptop and went through all the same setup. Plugged in USB and device manager in Windows 10 said "Arduino 33 Iot on Com3" Then I tried to upload Color Pallet again, Compiled fine, then errored out saying Com3 not responding. I'm Lost. I need some advice.

Thanks, Carl Chrzan

Does the same problem persist if you try connecting just the Nano 33 IoT alone to your computer, without any LEDs, etc. attached?

cjsolar:
I tried pushing the reset button twice on Arduino several times with no luck.

I read this, but the details aren't clear to me. After you press and release the reset button twice quickly, do you see the "L" led on the Nano 33 IoT pulsing?

I've had the same issue. New Eng Kit R2 in December.

The board worked initially, then started developing a comms problem where it wasnt recognised. Now when connected the power light comes on but the board is not detected by the computer. Tried on multiple computers and have checked my uno still works (no problems there).

After a few weeks back and forth with tech support I've been told that my option is 'buy a new one...'

telix001:
Now when connected the power light comes on but the board is not detected by the computer.

After you press and release the reset button twice quickly, do you see the "L" led on the Nano 33 IoT pulsing?

Nope, nothing happens at all... Not detected, no L leds or anything else.

I've ordered another nano and won't be impressed if I get the same issue.

telix001:
Nope, nothing happens at all... Not detected, no L leds or anything else.

I've ordered another nano and won't be impressed if I get the same issue.

did you upload with Nano 33 BLE selected in Tools menu?