Nano RP2040 Connect won't connect to USB (most of the time)

I've been banging my head against the wall here and finally decided I should ask for help.

I've been using my Nano RP2040 Connect for several days with no issues, but since yesterday I've had lots of trouble uploading sketches to the board. Basically the USB port won't show up in the port list, most of the time. Sometimes with a certain amount of resetting and quitting I can get it show up, and even get a sketch to upload, but after that it will stop recognizing the board (I get a "port monitor error: … could not connect to serial port" error, full error below)

The odd thing is that "RPI-PR2" storage does connect and show up on my computer.

When I plug in my Elegoo Uno it is recognized and works completely fine.

The Connect was working normally with the current setup, so I don't think it's the USB cable or anything like that.

Here's most of what I've tried:
Reset button
Boot loader mode (occasionally this seems to get it into a state where it's recognized and can upload a sketch)
Unplugging and replugging the USB
Unplugging all other USB devices
Restarting the IDE
Restarting the computer
Uploading the BareMinimum sketch
Updated the FTDI drivers
Uninstalled and reinstalled the "Arduino Mbed OS Nano Boards" from the boards manager
Disconnecting everything from the board
Used the reset pin and uploaded blink sketch

I was able to drag the blink sketch to the mass storage and that worked, but the IDE still doesn't recognize the board.

Some additional info that might be helpful:

I'm on a Mac running MacOS Sequoia 15.0.1. and IDE Version 2.3.3.

System Information shows my 3 USB ports, and at least right now is showing the board as "RP2 Boot" (IDE still stays "not connected" though).

After I'm able to get it to connect and apparently successfully upload a sketch it will go into a state where the green power LED is lit, and the built in LED will repeatedly flash four times slowly, then four times quickly.

Here's the error message I get on the occasion that I can upload a sketch but it doesn't seem to actually run it (sometimes I'll get the "loading into flash" progress, but mostly not):

Port monitor error: command 'open' failed: no such file or directory. Could not connect to /dev/cu.usbmodem1101 serial port.

FQBN: arduino:mbed_nano:nanorp2040connect
Using board 'nanorp2040connect' from platform in folder: /Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5
Using core 'arduino' from platform in folder: /Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5

Detecting libraries used...
/Users/gmh/Library/Arduino15/packages/arduino/tools/arm-none-eabi-gcc/7-2017q4/bin/arm-none-eabi-g++ -c -w -g3 -nostdlib @/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/defines.txt @/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/cxxflags.txt -DARDUINO_ARCH_RP2040 -mcpu=cortex-m0plus -w -x c++ -E -CC -DARDUINO=10607 -DARDUINO_NANO_RP2040_CONNECT -DARDUINO_ARCH_MBED_NANO -DARDUINO_ARCH_MBED -DARDUINO_LIBRARY_DISCOVERY_PHASE=1 -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino/api/deprecated -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino/api/deprecated-avr-comp -iprefix/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino @/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/includes.txt /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/sketch/BareMinimum.ino.cpp -o /dev/null
Generating function prototypes...
/Users/gmh/Library/Arduino15/packages/arduino/tools/arm-none-eabi-gcc/7-2017q4/bin/arm-none-eabi-g++ -c -w -g3 -nostdlib @/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/defines.txt @/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/cxxflags.txt -DARDUINO_ARCH_RP2040 -mcpu=cortex-m0plus -w -x c++ -E -CC -DARDUINO=10607 -DARDUINO_NANO_RP2040_CONNECT -DARDUINO_ARCH_MBED_NANO -DARDUINO_ARCH_MBED -DARDUINO_LIBRARY_DISCOVERY_PHASE=1 -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino/api/deprecated -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino/api/deprecated-avr-comp -iprefix/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino @/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/includes.txt /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/sketch/BareMinimum.ino.cpp -o /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/2492687053/sketch_merged.cpp
/Users/gmh/Library/Arduino15/packages/builtin/tools/ctags/5.8-arduino11/ctags -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/2492687053/sketch_merged.cpp
Compiling sketch...
/Users/gmh/Library/Arduino15/packages/arduino/tools/arm-none-eabi-gcc/7-2017q4/bin/arm-none-eabi-g++ -c -w -g3 -nostdlib @/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/defines.txt @/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/cxxflags.txt -DARDUINO_ARCH_RP2040 -MMD -mcpu=cortex-m0plus -DARDUINO=10607 -DARDUINO_NANO_RP2040_CONNECT -DARDUINO_ARCH_MBED_NANO -DARDUINO_ARCH_MBED -DARDUINO_LIBRARY_DISCOVERY_PHASE=0 -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino/api/deprecated -I/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino/api/deprecated-avr-comp -iprefix/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/cores/arduino @/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/includes.txt /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/sketch/BareMinimum.ino.cpp -o /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/sketch/BareMinimum.ino.cpp.o
Compiling libraries...
Compiling core...
Using previously compiled file: /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/core/double_tap_usb_boot.cpp.o
Using previously compiled file: /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/core/nina_pins.cpp.o
Using previously compiled file: /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/core/variant.cpp.o
Using precompiled core: /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/cores/arduino_mbed_nano_nanorp2040connect_5e3c73f94ac98af5003ff5de8d3b3b62/core.a
Linking everything together...
/Users/gmh/Library/Arduino15/packages/arduino/tools/arm-none-eabi-gcc/7-2017q4/bin/arm-none-eabi-g++ -E -P -x c /Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/linker_script.ld -o /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/linker_script.ld
/Users/gmh/Library/Arduino15/packages/arduino/tools/arm-none-eabi-gcc/7-2017q4/bin/arm-none-eabi-g++ -L/private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553 -Wl,--gc-sections -w -Wl,--as-needed @/Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/ldflags.txt -T/private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/linker_script.ld -Wl,-Map,/private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/BareMinimum.ino.map --specs=nosys.specs -o /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/BareMinimum.ino.elf /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/sketch/BareMinimum.ino.cpp.o /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/core/double_tap_usb_boot.cpp.o /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/core/nina_pins.cpp.o /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/core/variant.cpp.o -Wl,--whole-archive /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/../../cores/arduino_mbed_nano_nanorp2040connect_5e3c73f94ac98af5003ff5de8d3b3b62/core.a /Users/gmh/Library/Arduino15/packages/arduino/hardware/mbed_nano/4.1.5/variants/NANO_RP2040_CONNECT/libs/libmbed.a -Wl,--no-whole-archive -Wl,--start-group -lstdc++ -lsupc++ -lm -lc -lgcc -lnosys -Wl,--end-group
/Users/gmh/Library/Arduino15/packages/arduino/tools/arm-none-eabi-gcc/7-2017q4/bin/arm-none-eabi-objcopy -O binary /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/BareMinimum.ino.elf /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/BareMinimum.ino.bin
/Users/gmh/Library/Arduino15/packages/arduino/tools/arm-none-eabi-gcc/7-2017q4/bin/arm-none-eabi-objcopy -O ihex -R .eeprom /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/BareMinimum.ino.elf /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/BareMinimum.ino.hex
/Users/gmh/Library/Arduino15/packages/arduino/tools/rp2040tools/1.0.6/elf2uf2 /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/BareMinimum.ino.elf /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/BareMinimum.ino.uf2

/Users/gmh/Library/Arduino15/packages/arduino/tools/arm-none-eabi-gcc/7-2017q4/bin/arm-none-eabi-size -A /private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/BareMinimum.ino.elf
Sketch uses 90231 bytes (0%) of program storage space. Maximum is 16777216 bytes.
Global variables use 43496 bytes (16%) of dynamic memory, leaving 226840 bytes for local variables. Maximum is 270336 bytes.
"/Users/gmh/Library/Arduino15/packages/arduino/tools/rp2040tools/1.0.6/rp2040load" -v -D "/private/var/folders/t7/p4v3b5x57h3b4341cnhjww9c0000gn/T/arduino/sketches/6C8CB8322F9235F5420E8AF4F1642553/BareMinimum.ino.elf"
rp2040load 1.0.6 - compiled with go1.16.2
.....................

Any help or ideas would be appreciated, I'm kind of at a dead end right now.

It happens often, it happens to me with the RP Pico boards, suddenly they "have an attack" and I have to press the button when uploading the code otherwise it goes to disk mode instead of serial port.
Supposedly this should be done only once and that's it, but as I said, sometimes they are stubborn as a mule. :wink:

Thanks for your reply!

That's interesting, I think I've had that, here it kind of hangs until you press the reset button. But I think what I have is a bit different, unless I do the "boot loader mode" by pressing the button twice, there's no way to even upload to the board. It doesn't even show up in the list of available ports.

image

It is my understanding that this can happen if the serial port is open. On IDE 2.3.3 it can be hard to see if it is open. Just look for the x on the bar under the bar between the code display and the compile messages. Then click it to remove the serial port and try again. You also might have to press the reset button as well to start the code off again.

Here's what my output area looks like. In the lower-right you can see that it says "not connected" even when the serial output window is closed. And that's after restarting the board and trying in "boot loader mode"

And I don't know exactly what I did but it seems to be working fine now.

I ended up purchasing another Connect, to try to see if it was the board or my computer, and it worked fine.

Then I reconnected the old board, and it needed the boot loader mode in order to write anything to it ( like MaximoEsfuerzo was suggesting, a reset while it was uploading kicked it into gear). And then after a few sketch uploads it didn't even need that anymore. Hoping it stays that way.

So, unfortunately I don't have any solution for anyone in the same situation. Maybe I had something in a sketch the borked something on the board, or maybe the second board unlocked something or other. No clue, just happy it's working again.

Thanks MaximoEsfuerzo and Grumpy_Mike for your suggestions!

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.