Arduino IDE 2.0 Not Showing Ports

Hello,
My Arduino IDE can not find my Arduino Nano. The Arduino board is a Chinese board and I set the old bootloader option. my cable is ok because IDE 1.8.13 works just fine. but in IDE 2.0 there is no board connected in the board manager window.

@Setrik_aZ, your topic was moved to a more suitable section of the forum.

Thanks, didn't know this section exists.

This has happened to me a few times.

At first I thought it was due to having V1.8 open at the same time as V2. Closing V1.8 did "sometimes" resolve this, the other times I had to reboot and then open V2

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

The problem with recognizing ports is being tracked by the IDE developers here:

1 Like

Apologies if I'm violating protocol.
Nothing on this thread since Oct-2021.
Nothing on github #573 "intermittent failure" since Jul-2022

I'm having the same problem, "No ports discovered" on my Linux Mint 21 machine.
This is not intermittent. Fresh install of Mint 21, IDE-2.0.0 installed (first arduino installed on this machine). IDE runs fine except won't upload for "no upload port provided". Restarts, changing cables, etc. no joy.

If I start the IDE with terminal ./arduino-ide, but with no arduino connected...
then I plug in an arduino board to USB,
these lines are added to the terminal readout (note highlighted):

daemon INFO {"level":"info","msg":"from discovery builtin:serial-discovery received message type: add, port: /dev/ttyUSB0","time":"2022-09-20T14:06:55-07:00"}

daemon INFO {"level":"info","msg":"from discovery builtin:serial-discovery received message type: add, port: /dev/ttyUSB0","time":"2022-09-20T14:06:55-07:00"}

discovery-log INFO {"eventType":"add","port":{"matchingBoardsList":[],"port":{"address":"/dev/ttyUSB0","label":"/dev/ttyUSB0","protocol":"serial","protocolLabel":"Serial Port (USB)","propertiesMap":[["pid","0x7523"],["serialNumber",""],["vid","0x1a86"]]}},"error":""}

root INFO Attached boards and available ports changed:

root INFO - New port is available on /dev/ttyUSB0 Serial Port (USB)

root INFO ------------------------------------------

daemon INFO {"level":"info","msg":"from discovery builtin:serial-discovery received message type: remove, port: /dev/ttyUSB0","time":"2022-09-20T14:06:56-07:00"}

daemon INFO {"level":"info","msg":"from discovery builtin:serial-discovery received message type: remove, port: /dev/ttyUSB0","time":"2022-09-20T14:06:56-07:00"}

discovery-log INFO {"eventType":"remove","port":{"matchingBoardsList":[],"port":{"address":"/dev/ttyUSB0","label":"","protocol":"serial","protocolLabel":"","propertiesMap":[]}},"error":""}

root INFO Attached boards and available ports changed:

root INFO - Port is no longer available on /dev/ttyUSB0 Serial Port (USB)

root INFO ------------------------------------------

When I plug in the board, it is at first recognized, but then immediately removed.

Please help.

Hi @jayrabe. In order to gather more information that might help us to troubleshoot your problem, I'm going to ask you to run the lsusb command from the command line and share the output.

  1. Open a terminal.
  2. If it is not already connect the USB cable of your Arduino board to your computer.
  3. Type lsusb
  4. Press Enter
  5. Click and drag the mouse to select all the output in the terminal window.
  6. Press Ctrl+C.
    This will copy the selected text to the clipboard.
  7. Open a forum reply here by clicking the Reply button.
  8. Click the </> icon on the post composer toolbar.
    This will add the forum's code block markup (```) to your reply to make sure the output is correctly formatted.
    Code block
  9. Press Ctrl+V.
    This will paste the output into the code block.
  10. Move the cursor outside of the code block markup before you add any additional text to your reply.
  11. Click the Reply button to post the output.

Please let me know if you have any questions or problems while following those instructions.

Thanks ptillisch.

jayrabe@jayrabe-XPS-8700:~$ lsusb
Bus 002 Device 002: ID 8087:8000 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 008: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
Bus 003 Device 007: ID 0bda:0182 Realtek Semiconductor Corp. USB2.0-CRW
Bus 003 Device 006: ID 413c:2112 Dell Computer Corp. Dell USB Wired Multimedia Keyboard
Bus 003 Device 011: ID 0a5c:21d7 Broadcom Corp. BCM43142 Bluetooth 4.0

NOTE: following line is from my nano V3 clone
Bus 003 Device 038: ID 1a86:7523 QinHeng Electronics CH340 serial converter
Bus 003 Device 009: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Does the terminal output regarding serial-discovery not give you any relevant info?

followed instructions this time so formatting is better. LOL

jayrabe@jayrabe-XPS-8700:~$ lsusb
Bus 002 Device 002: ID 8087:8000 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 008: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
Bus 003 Device 007: ID 0bda:0182 Realtek Semiconductor Corp. USB2.0-CRW
Bus 003 Device 006: ID 413c:2112 Dell Computer Corp. Dell USB Wired Multimedia Keyboard
Bus 003 Device 011: ID 0a5c:21d7 Broadcom Corp. BCM43142 Bluetooth 4.0
Bus 003 Device 038: ID 1a86:7523 QinHeng Electronics CH340 serial converter
Bus 003 Device 009: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
jayrabe@jayrabe-XPS-8700:~$ 

1 Like

3 posts were split to a new topic: IDE 2.x doesn't recognize port of Mega 2560, IDE 1.x does

Only the obvious: that the port is discovered, but then detected as having been removed only a second later.

This might be caused by a software problem in the serial-discovery tool, or it might be a hardware problem with the board, USB cable, USB port on your computer. That is the reason why I asked you to run lsusb. If the port also did not show in the lsusb output, then we would know that the problem is not in the serial-discovery tool and could focus our attention elsewhere.

Thanks. This result certainly does not acquit the serial-discovery tool . I'm not 100% certain that it proves serial-discovery is where the problem is. The reason is that serial-discovery was also able to detect the port initially. lsusb only provides us with a snapshot of the connected USB devices at the moment the command was executed, so if the CH340 disappeared one second later we would not know.

For this reason, I'm going to ask you to run the dmesg command from the command line and share the output. This command has an option to monitor events over time similar to how serial-discovery works.

  1. Open a terminal.
  2. Disconnect the USB cable of your Arduino board to your computer.
  3. Type this command:
    dmesg -w
    
  4. Press Enter
  5. Connect the USB cable of your Arduino board to your computer.

You should now see some new lines printed in the terminal that look something like this:

[23472.183004] usb 3-3: new full-speed USB device number 17 using xhci_hcd
[23472.332143] usb 3-3: New USB device found, idVendor=1a86, idProduct=7523, bcdDevice= 2.54
[23472.332148] usb 3-3: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[23472.332150] usb 3-3: Product: USB2.0-Serial
[23472.333138] ch341 3-3:1.0: ch341-uart converter detected
[23472.333587] usb 3-3: ch341-uart converter now attached to ttyUSB0

This is just telling us that the device was connected, the equivalent to this:

The question is whether this will be followed by some additional output from dmesg that indicates the device was disconnected. So wait a little while, leaving your board connected to your computer, to see whether any more output will be printed to the terminal. Please let me know what you find.

Once you are finished, press the Ctrl+C keyboard shortcut to terminate the dmesg process and return to the command prompt.

Thanks ptillisch. Here's the output from dmesg -w after plugging in the board:

[87549.899233] usb 3-11: new full-speed USB device number 40 using xhci_hcd
[87550.048382] usb 3-11: New USB device found, idVendor=1a86, idProduct=7523, bcdDevice= 2.54
[87550.048386] usb 3-11: New USB device strings: Mfr=0, Product=2, SerialNumber=0
[87550.048388] usb 3-11: Product: USB2.0-Serial
[87550.049853] ch341 3-11:1.0: ch341-uart converter detected
[87550.050223] usb 3-11: ch341-uart converter now attached to ttyUSB0
[87550.580296] input: BRLTTY 6.4 Linux Screen Driver Keyboard as /devices/virtual/input/input57
[87550.759800] usb 3-11: usbfs: interface 0 claimed by ch341 while 'brltty' sets config #1
[87550.760311] ch341-uart ttyUSB0: ch341-uart converter now disconnected from ttyUSB0
[87550.760345] ch341 3-11:1.0: device disconnected

Excellent! Now we found the culprit. BRLTTY is a program that interfaces the Linux console with a refreshable braille display to provide accessibility for those with vision impairments. Unfortunately this program does not play nicely with other USB to serial devices like the CH340 chip on your Arduino board.

It seems there are several possible solutions to this, some of which are fairly complex. The most simple seems to be to simply uninstall BRLTTY, as described in this Adafruit tutorial:

https://learn.adafruit.com/ladyadas-learn-arduino-lesson-number-0/install-software-linux#:~:text=uninstall%20brltty%20if%20it%20is%20installed

Obviously this solution will be unacceptable if you use a braille display. Some other solutions are described here which should resolve the conflict between BRLTTY and your Arduino board without the loss of support for braille displays:

Excellent indeed!

Followed one of the solutions in stackexchange:

Specifically:
found the rules file on my system:

/usr/lib/udev/rules.d/85-brltty.rules

changed permissions to allow editing:

cd to rules.d

$ sudo chmod o+w 85-brltty.rules

found line with my device ID: 1a86

ENV{PRODUCT}=="1a86/7523/*", ENV{BRLTTY_BRAILLE_DRIVER}="bm", GOTO="brltty_usb_run"

commented it out with:

# ENV{PRODUCT}== ...

restarted computer
SUCCESS!
"port" is now showing in Tools, with /dev/ttyUSB0

running out of time this morning so must postpone further testing,
but for now it looks like the problem is solved.

THANKS SO MUCH ptillisch.

1 Like

apologies for my incompetence with the forum editing.

commenting out the line in the rules file was done by adding a "#" ie hash in front of the ENV{PRODUCT}== ... line

You are welcome. I'm glad it is working now.

Regards,
Per

Thank you man, I was trying to solve this error for hours and removing BRLTTY is worked!

You are welcome.

1 Like