Nano RP2040 Connect not showing as a device under ports

Ahh found it. Okay I connected both pins using the tweezer and pressed the reset button. But nothing happened. Do I have to plug it in with both pressing the button and connecting REC to GND?

Aha okay tried it again on Windows. Got the Arduino mounted

OMG it works again!!! Thank you so much! I think it would be awesome to have this in FAQ.

1 Like

Okay now every time I upload the Arduino disconnects and re-connects, according to the Windows connect and disconnect sounds and Windows Explorer popping up, showing the RPI-RP2 device folder. The upload works nonetheless.

Did you remove the Short circuit after the mass storage shows up?

The same here, (IDE 2.0 but still the same on IDE 1.8.xx) when i try to send the sketch to my nano 2040 connect i obtain this:
Sketch uses 78840 bytes (0%) of program storage space. Maximum is 16777216 bytes.

Compilation complete.
Upload error: Error: 2 UNKNOWN: uploading error: uploading error: exit status 1
It open the 2040 folder but it don't send the code to the board.

seems i have resolved pretty all after reading this:
New Arduino cores for Pico and Nano RP2040 Connect! - #5 by alranel

1 Like

You mean REC to GND? Yes I did that.

I get this sometimes as well. What I do then is to double click the RESET button which should open up the RP2040/RPI-PI2 folder (and thus hopefully re-connect the Arduino) and then try to upload the sketch again. This assumes you got the fix (i.e. REC to GND with RESET button pressed) working.

would you please also share the code of the factory blink?
I'm totally new to this and would like to have a look at the code also.
Thank you in advance!


#include <WiFiNINA.h>

void setup() {
  pinMode(LEDG, OUTPUT);
  pinMode(LEDB, OUTPUT);
  pinMode(LEDR, OUTPUT);

int ledState = LOW;
int rgb = 0;

unsigned long previousMillis = 0, interval = 1000;

void loop() {
  unsigned long currentMillis = millis();
  if (currentMillis - previousMillis >= interval) {
    previousMillis = currentMillis;

    rgb += 1;
    if (rgb == 3) {
      rgb = 0;

    if (ledState == LOW) {
      ledState = HIGH;
    } else {
      ledState = LOW;

  digitalWrite(LED_BUILTIN, ledState);

  switch (rgb) {
      digitalWrite(LEDR, LOW);
      digitalWrite(LEDG, HIGH);
      digitalWrite(LEDB, HIGH);
    case 1:
      digitalWrite(LEDR, HIGH);
      digitalWrite(LEDG, LOW);
      digitalWrite(LEDB, HIGH);

    case 2:
      digitalWrite(LEDR, HIGH);
      digitalWrite(LEDG, HIGH);
      digitalWrite(LEDB, LOW);


Thank you very much!

public service announcement arduino rp2040 cant be used with micropython. pi pico, sparkfuns and adafruits can.

your trapped in the land of slow spi. its still 16 mhz max speed. it so sad. adafruit pretending their spi speeds mean anything for rp2040 boards. its slower that due

Please can you dra a circle around the Pin :slight_smile:

@michaeljohannes this one:

1 Like

:smiley:Steps I did to get it run again!

  1. Disconnect the NANO RP2040 from USB
  2. Ground the REC- Pin
  3. Connect the NANO RP2040 to USB
  4. Mounted RPI-RP2-folder is available on file tool
  5. Disconnect the REC-Pin from GND while powered from USB! (Without this step my Mac said something went wrong for copy step No.6)
  6. Copy the Blink.ino.elf.uf2 - file to RPI-RP2-folder
  7. Disconnect the NANO RP2040 from USB and connect it again
  8. From Now it works again!



I'm also on Mac and that step is crucial, it would not work for me without doing this, and I tried all sorts, it should go into the official documentation @a_guadalupi

1 Like

Hi @a_guadalupi, when I got my Nano RP2040, it got detected as COM15. Then I was trying to upload a sketch:

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin LED_BUILTIN as an output.

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(50);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(50);                       // wait for a second

after which the COM15 as well as RPI-RP2 mass storage disappeared. Then I followed the reset method mentioned above. The reset works fine and the RPI-RP2 mass storage does show up, but COM port is still not showing up. Also, when I try to copy the uf2 file to the same (or if I press the RESET button), it disappears and have to do the REC-GND reset process over again. So, the uf2 upload is also not working!
What should I do to get the COM port working? Please help me fix it.

1 Like

Hello from India!

I received two Arduino Nano RP2040 Connect boards today. But the excitement didn't last long. As soon as I tried uploading the example Blink sketch, the boards become unusable.

I tried grounding the pins and copying Blink.ino.elf.uf2 through the mass storage. Nothing happens except the green, power LED lights up.

Please help me recover the boards. I need to start working on a project immediately.


Hey @bennythebomb did you face anything like this? I'm stuck. With no COM port or code upload working!

Hi @michaeljohannes for me , during step 7, the Nano RP2040 disconnects itself. Reconnecting it again goes to a non-responsive state and have to redo the REC-GND reset for RPI-PR2 folder to show up again (as mentioned here)! Any idea why?