Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -6,29 +6,106 @@ Learn what to do if your board does not appear in the port selection menu in Ard

---

## Check connectivity
## Check if the computer is detecting a device on the port

* One or more LEDs should be lit when the board is powered.
* The board needs to be connected to your computer with a data USB cable. A charge-only cable will not work.
* Make sure the USB cable is not damaged. Test your cable with a different device, or try using a different cable.
* Remove any connections to digital pins **0 (RX)** and **1 (TX)**.
* Check that no other pins are unintentionally getting current.
Two cases should be separated:

* The computer recognizes the board as a device, but not as an Arduino board. The port is listed in the port menu, but the board name is not displayed, and sketches cannot be uploaded ([read this if using the classic Nano](#nano)).
* The board is not being registered by the computer at all.

To check whether the board is being recognized as a device, follow these steps:

1. Disconnect your board from your computer.

2. Open the port list `Tools > Port`. Some ports may still be listed. Take note of this, and close the menu.

3. Connect your board to your computer.

4. Open `Tools > Port`. The port your board is connected to should now appear as a new port in the list.

Continue with the following steps depending on the result:

* [No device was detected](no-device-recognized)
* [Incorrect device detected](device-recognized)

---

<h2 id="no-device-recognized">If no device is detected</h2>

### Check board connections

> **Note:** If the port menu is open, you need to close and re-open it for the list to refresh.

The most common reason for the board not being displayed on a port are a failing USB connection.

1. The board needs to be connected to your computer with a data USB cable.
2. Make sure the USB cable is not damaged. Test your cable with a different device, or try using a different cable.
3. Try using a different USB port on your computer.
4. If possible, connect the board directly to your computer instead of a through a hub.
5. Remove all connections to the board pins, especially to **0(RX)** and **1(TX)**.

### Reset the board

The board may be stuck in a state where it cannot communicate on the port.

1. Find the reset button on the board.

2. Click the button two times in succession.

![The reset button on an Arduino UNO](img/UNO-reset-button.png)

3. Check the port menu again.

> **Note:** If the port menu is open, you need to close and re-open it for the list to refresh.

## USB-to-Serial firmware
---

<h2 id="device-recognized">If a device is detected incorrectly</h2>

### Check the USB-to-Serial firmware

If your board is an **Arduino Uno** (Rev1 or Rev3) or an **Arduino Mega**, the USB-to-Serial firmware may be corrupted.

**Windows:**

1. Open the Device Manager.
2. Check the _Other Devices_ section.

**macOS:**

1. Open the _System Information_ app.
2. Check the _Hardware > USB_ section.

Missing or corrupted USB-to-Serial firmware can cause UNO and Mega boards to be recognized as any of the following:
**Linux:** Use a device manager of your choice, such as **hardinfo** To install hardinfo, open Terminal and run `sudo apt install hardinfo`. Then run `hardinfo` to open and look in _Devices > USB Devices_).

* Unknown Device (Uno, missing on Windows 10)
* Unknown USB Device (Invalid Device Descriptor) (Uno, corrupted on Windows 10)
* Composite Device (Uno, missing on macOS)
* USB Device (Uno, corrupted on macOS)
<!-- sudo apt-get install hardinfo? -->

Missing or corrupted USB-to-Serial firmware can cause Uno and Mega boards to be recognized as any of the following:

* Unknown Device
* Unknown USB Device
* Composite Device
* USB Device
* ATmega16u2 DFU
* Atmega8U2 DFU

Resolve the issue by [flashing the USB-to-Serial firmware in DFU mode](https://support.arduino.cc/hc/en-us/articles/4408887452434-Flash-USB-to-serial-firmware-in-DFU-mode).
If your board is listed with one of these names you can resolve the issue by [flashing the USB-to-serial firmware in DFU mode](https://support.arduino.cc/hc/en-us/articles/4408887452434-Flash-USB-to-serial-firmware-in-DFU-mode).

<h3 id="nano">If you're using the classic Nano</h3>

Unlike most other boards, the board name will not be displayed for a port where an Arduino Nano is connected.

1. Disconnect your board from your computer.

2. Open the port list `Tools > Port`. Some ports may still be listed. Take note of this, and close the menu.

3. Connect your board to your computer.

4. Open `Tools > Port`. The port your board is connected to should now appear as a new port in the list.

---

## Check the FTDI drivers (Arduino Nano)
## Still need help?

If you're using the original Arduino Nano, make sure [the FTDI drivers are installed](https://support.arduino.cc/hc/en-us/articles/4411305694610).
* Visit the [Installation & Troubleshooting category](https://forum.arduino.cc/c/18) in the Arduino forum.
* [Contact us](https://www.arduino.cc/en/contact-us/)
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
---
title: "Select board and port in Arduino IDE"
---

Learn how to select the right board and port in Arduino IDE.

---

## Select board

1. Click on _Tools_ in the menu bar.

2. Find the _Board_ row. The currently selected board will be selected.

![The tools menu with the Board row highlighted.](img/tools_menu_highlight_board.png)

3. Hover over the _Board_ row to reveal the installed board packages. These packages contain some popular boards:

| Package | Boards |
|----------------------------------------------|-----------------------------------------------------------------------------|
| Arduino AVR boards | Arduino Uno, Arduino Mega, Arduino Nano |
| Arduino SAMD (32-bits ARM Cortex-M0+) Boards | MKR Zero, MKR WiFi 1000, MKR WiFi 1010 |
| Arduino SAM (32-bits ARM Cortex-M3) Boards | Arduino Due |
| Mbed OS Nano boards | Arduino Nano 33 BLE, Arduino Nano 33 BLE Sense, Arduino Nano RP2040 Connect |

If you don't know which package to use, or if it's missing from the list, see [Find and install the board core in Arduino IDE](https://support.arduino.cc/hc/en-us/articles/360016119519-How-to-add-boards-in-the-board-manager).

4. Click on a board to select it.

![Selecting a board in Arduino IDE.](img/tools_menu_board_select.png)

> **Note:** If you don't know which package to use, or if it's missing from the list, see Find and install the board core in Arduino IDE.
<!-- TODO: Add links to article -->

---

## Select port

1. Click on _Tools_ in the menu bar.

2. Find the _Port_ row. The currently selected board will be selected.

![The tools menu with the Port row highlighted.](img/tools_menu_highlight_port.png)

3. Hover over the _Port_ to reveal all ports. For Arduino devices, the board name will typically be displayed after the port.

Port naming varies by system:

* Windows: `COM3 (Arduino Uno)`
* macOS: `/dev/cu.usbmodem14101 (Arduino Uno)`
* Linux: `/dev/ttyACM0 (Arduino Uno)`

4. Click on a port to select it.

![Selecting a port in Arduino IDE.](img/tools_menu_port_select.png)

If you don't see your board in the list, see [If your board does not appear in the port menu](https://support.arduino.cc/hc/en-us/articles/4412955149586-If-your-board-does-not-appear-in-the-port-menu).
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.