I am testing a project on Arduino Nano. I copy-paste the code on the Arduino IDE and click "Upload". I see:

No device found on cu.usbserial-<unique id>
An error occurred while uploading the sketch

The computer sees the board: when I disconnect the board from the USB socket, the list of ports in Tools > Port no longer shows this port.

The error thing happens:

  • if I press the reset button first, then click "Upload"
  • if I change the USB cable (I tried 5 different ones, one of which worked a few years ago, the last time I used this same board)
  • if I use a simple blink code
  • if I connect to a different USB port
  • if I upgrade the Arduino IDE to the latest software from arduino.cc .

The Get board info command shows that the computer can read the VID and the PID, but not the serial number or the board type. If I connect an Arduino Uno to the same socket, I can see the serial number and the board type, but I get the same error message (just with a different port ID). Neither boards show signs of degradation.

The Boards Manager shows that the Arduino AVR Boards, which include Arduino Uno and Arduino Nano, are installed.

When I click "Upload", the IDE compiles the program, then the Nano's L LED blinks, then the TX blinks, then a pause, then the L, then the RX, then the L, then the RX, and then the IDE shows the error. So I suspect that the error is not what the IDE says.

Furthermore, the connection between the Arduino and the IDE is working because the Serial Monitor shows the output of the previous program (at 9600 baud).

Some Arduinos can reset by connecting RX to GROUND and uploading code, but this one does not have an RX pin.

How can I debug this error?

  • then how did you solve the problem?
    – Juraj
    Commented Nov 11, 2021 at 15:11
  • @Juraj: By chance, I was poking around the menus and found Tools > Board, just above Processor, as I wrote in the answer (which I wrote at the same time as you wrote your first comment).
    – emonigma
    Commented Nov 11, 2021 at 15:16
  • so you say you didn't have the board selected at all?
    – Juraj
    Commented Nov 11, 2021 at 15:17
  • It was showing Board: "Arduino Nano", left over from the last time I used it a few years ago. But when I dove into the sub-menus, Arduino Nano did not have a tick on it. Clicking it solved the issue. It may be a bug in the IDE...
    – emonigma
    Commented Nov 11, 2021 at 15:28
  • 2
    The structure of the boards changed from having multiple copies of the same board with different processors to one board with multiple processor options within it. The same goes for bootloader variants for some boards. If your preferences file contained the settings for the old style of boards from before you upgraded the IDE (at some point) then it won't necessarily map those settings across to the new way of doing it - hence you get an error because the settings don't match your board.
    – Majenko
    Commented Nov 11, 2021 at 17:23

1 Answer 1


It seems that everything is working as it should and the computer and the board can see each other. The only thing left to do is to select the board type so the IDE knows how to send the code in a way that the board can interpret.

Select Tools > Board > Arduino AVR Boards > Arduino Nano.

If you have an old or non-Arduino board, try the old bootloader in the processor, as in CH340 Nano avrdude: stk500_getsync() not in sync resp=0xa4 .

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.