# "can't open device" when uploading, but Serial Monitor works

**URL:** <https://forum.arduino.cc/t/cant-open-device-when-uploading-but-serial-monitor-works/1127731>\
**Category:** IDE 2.x\
**Created:** [May 16, 2023, 8:10pm UTC](https://forum.arduino.cc/t/cant-open-device-when-uploading-but-serial-monitor-works/1127731 "2023-05-16T20:10:13Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![GoingForGold](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/goingforgold/32/1098623_2.png) [@GoingForGold](https://forum.arduino.cc/u/GoingForGold)\
**Post date:** [May 16, 2023, 8:10pm UTC](https://forum.arduino.cc/t/cant-open-device-when-uploading-but-serial-monitor-works/1127731/1 "2023-05-16T20:10:13Z")

</div>

Hi there!  
Just wanted to try something, downloaded the latest IDE and got my old Duemilanove out of the closet. Uploaded a sketch, which includes some Serial communication with 115200 baud, without problems.

Then I changed something in the script and wanted to upload again. I got

```arduino
avrdude: ser_open(): can't open device "\\.\COM3": Access denied

```

interestingly, when I switch over to the Serial Monitor, I receive messages without problem. I can even send messages to the Arduino. However, I can't seem to upload a sketch again. I tried rebooting a couple times, reinstalled the IDE. I also tried to reset the Arduino before the upload starts, without luck.

It seems like the Serial Monitor is using the Serial Port and doesn't release it to upload a sketch? Or am I misinterpreting this?

Thanks!

---

<div class="post-metadata">

**Author:** ![GoingForGold](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/goingforgold/32/1098623_2.png) [@GoingForGold](https://forum.arduino.cc/u/GoingForGold)\
**Post date:** [May 16, 2023, 8:32pm UTC](https://forum.arduino.cc/t/cant-open-device-when-uploading-but-serial-monitor-works/1127731/2 "2023-05-16T20:32:43Z")

</div>

Update: Managed to kill the Serial Monitor through the Task Manager. Upload worked again!

So I guess this is a bug report?

---

<div class="post-metadata">

**Author:** ![kolaha](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/kolaha/32/966427_2.png) [@kolaha](https://forum.arduino.cc/u/kolaha)\
**Post date:** [May 16, 2023, 10:52pm UTC](https://forum.arduino.cc/t/cant-open-device-when-uploading-but-serial-monitor-works/1127731/3 "2023-05-16T22:52:40Z")

</div>

it is normal. only one device can work at a time. stop it and other device will be able to connect.  
sometimes IDE greyout serial monitor while upload, sometimes not and it must be closed manually.

---

<div class="post-metadata">

**Author:** ![ptillisch](https://avatars.discourse-cdn.com/v4/letter/p/ad7895/32.png) [@ptillisch](https://forum.arduino.cc/u/ptillisch)\
**Post date:** [May 17, 2023, 6:19am UTC](https://forum.arduino.cc/t/cant-open-device-when-uploading-but-serial-monitor-works/1127731/4 "2023-05-17T06:19:18Z")

</div>

Hi @GoingForGold. The Arduino IDE developers are tracking this bug here:

> <https://github.com/arduino/arduino-ide/issues/1783>
>
> \### Describe the problem
> 
> In order to upload to an Arduino board via a serial …port, the upload tool (e.g., \[\*\*AVRDUDE\*\*\](https://github.com/avrdudes/avrdude)) must be able to open the port. This is not possible if another process already has control of the port.
> 
> Arduino IDE's "Serial Monitor" and and "Serial Plotter" components also use the serial port of the board. Arduino IDE handles this potential conflict of port usage automagically by closing the port in Serial Monitor/Plotter when an upload process is triggered, then opening it again after the upload is finished. This means no special action is needed from the user to upload while Serial Monitor/Plotter is open.
> 
> 🐛 The upload fails with an "\`Access is denied\`" error under the following conditions:
> 
> \- The board uses an FTDI FT232R USB chip
> \- Arduino IDE is running on a Windows machine
> \- Serial Monitor or Serial Plotter is open
> 
> I've been using Arduino IDE 2.0.3 with Nano without issues when uploading on Ubuntu. Now I've tried it on Windows 11, and most of the time, it gives me this error:
> 
> \`\`\`text
> avrdude: Version 6.3-20190619
> Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
> Copyright (c) 2007-2014 Joerg Wunsch
> 
> System wide configuration file is "C:\\Users\\macie\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avrdude\\6.3.0-arduino17/etc/avrdude.conf"
> 
> Using Port : COM5
> Using Programmer : arduino
> Overriding Baud Rate : 115200
> avrdude: ser\_open(): can't open device "\\\\.\\COM5": Access is denied.
> \`\`\`
> 
> But I can see logs from the serial monitor in Arduino IDE -\> serial monitor. 
> 
> \### To reproduce
> 
> \#### Equipment
> 
> A board or other device that has an \[FTDI FT232R USB chip\](https://ftdichip.com/products/ft232rl/)
> 
> The \[classic \*\*Arduino Nano\*\*\](https://docs.arduino.cc/hardware/nano) is a common board that uses this chip.
> 
> FT232R modules (\[example\](https://docs.arduino.cc/retired/other/usb-serial-converter)) or cables (\[example\](https://www.sparkfun.com/products/9717)) are also often used to upload to boards such as the \[\*\*Arduino Pro Mini\*\*\](https://www.sparkfun.com/products/11113) that don't have an integrated USB chip.
> 
> The fault can be reproduced even if the FT232R-based device is not an Arduino board. In this case, the upload is expected to fail, but it would fail with a "\`not in sync\`" error instead of "\`Access is denied\`".
> 
> \#### Steps
> 
> 1. Select \*\*File \> New Sketch\*\* from the Arduino IDE menus.
> 1. Connect the Arduino board to your computer.
> 1. Select the board and port from the Arduino IDE menus.
> 1. If the Serial Monitor view is not already open, select \*\*Tools \> Serial Monitor\*\* from the Arduino IDE menus to open it.
> 1. Select \*\*Sketch \> Upload\*\* from the Arduino IDE menus.
> 1. Wait for the upload process to finish.
> 🐛 The upload fails:
> \`\`\`text
> avrdude: Version 6.3-20190619
> Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
> Copyright (c) 2007-2014 Joerg Wunsch
>    
> System wide configuration file is "C:\\Users\\macie\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avrdude\\6.3.0-arduino17/etc/avrdude.conf"
>    
> Using Port : COM5
> Using Programmer : arduino
> Overriding Baud Rate : 115200
> avrdude: ser\_open(): can't open device "\\\\.\\COM5": Access is denied.
> \`\`\`
> 1. Click the \*\*X\*\* icon on the "\*\*Serial Monitor\*\*" view tab in the bottom panel.
> 1. Select \*\*Sketch \> Upload\*\* from the Arduino IDE menus.
> 1. Wait for the upload process to finish.
> 🙂 The upload is successful.
> 1. Select \*\*Tools \> Serial Plotter\*\* from the Arduino IDE menus.
> 1. Select \*\*Sketch \> Upload\*\* from the Arduino IDE menus.
> 1. Wait for the upload process to finish.
> 🐛 The upload fails:
> \`\`\`text
> avrdude: Version 6.3-20190619
> Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
> Copyright (c) 2007-2014 Joerg Wunsch
>    
> System wide configuration file is "C:\\Users\\macie\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avrdude\\6.3.0-arduino17/etc/avrdude.conf"
>    
> Using Port : COM5
> Using Programmer : arduino
> Overriding Baud Rate : 115200
> avrdude: ser\_open(): can't open device "\\\\.\\COM5": Access is denied.
> \`\`\`
> 1. Close the "\*\*Serial Plotter\*\*" window.
> 1. Select \*\*Sketch \> Upload\*\* from the Arduino IDE menus.
> 1. Wait for the upload process to finish.
> 🐛 The upload fails:
> \`\`\`text
> avrdude: Version 6.3-20190619
> Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
> Copyright (c) 2007-2014 Joerg Wunsch
>    
> System wide configuration file is "C:\\Users\\macie\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avrdude\\6.3.0-arduino17/etc/avrdude.conf"
>    
> Using Port : COM5
> Using Programmer : arduino
> Overriding Baud Rate : 115200
> avrdude: ser\_open(): can't open device "\\\\.\\COM5": Access is denied.
> \`\`\`
> \*\*ⓘ\*\* This unexpected result is caused by a separate bug: https://github.com/arduino/arduino-ide/issues/1423
> 
> \### Expected behavior
> 
> Serial Monitor and Serial Plotter do not interfere with upload process.
> 
> \### Arduino IDE version
> 
> \#### Original report
> 
> 2.0.3
> 
> \#### Last verified with
> 
> 692f29f
> 
> \### Operating system
> 
> Windows
> 
> \### Operating system version
> 
> Edition	Windows 11 Pro
> Version	22H2
> Installed on	07/11/2022
> OS build	22621.963
> Experience	Windows Feature Experience Pack 1000.22638.1000.0
> 
> \### Additional context
> 
> I bisected the introduction of the fault to df8658e
> 
> \---
> 
> I have no problems uploading sketches on Arduino IDE 1.8.19 from Microsoft Store on the same system. I can quit 2.0.3, start 1.8.19, and it's working immediately.
> 
> \---
> 
> I cannot reproduce the fault on Linux (Ubuntu 22.04) or macOS (Ventura).
> 
> \---
> 
> I cannot reproduce the fault when using native USB boards (e.g., \[\*\*Leonardo\*\*\](https://docs.arduino.cc/hardware/leonardo), \[\*\*MKR\*\*\](https://docs.arduino.cc/#mkr-family)) or boards that use other models of dedicated USB chip (e.g., ATmega16U2 on Uno and Mega, WCH CH340 on derivative boards).
> 
> \<a name="workaround"\>\</a\>
> 
> \#### Workaround
> 
> \<a name="serial-monitor"\>\</a\>
> 
> \##### Serial Monitor
> 
> 1. Click the \*\*X\*\* icon on the "\*\*Serial Monitor\*\*" tab in the bottom panel of the Arduino IDE window to close the tab:
> !\[image\](https://user-images.githubusercontent.com/8572152/215050213-e6c41c1a-0eae-448a-ae91-f2acefedf793.png)
> 1. Upload the sketch.
> 1. Open \*\*Serial Monitor\*\* again if needed (by clicking the icon on the IDE toolbar or the \*\*Tools \> Serial Monitor\*\* menu item) after the upload is finished.
> 
> \<a name="serial-plotter"\>\</a\>
> 
> \##### Serial Plotter
> 
> 1. Close the "\*\*Serial Plotter\*\*" window.
> 1. If the "\*\*Serial Monitor\*\*" view is not already open, select \*\*Tools \> Serial Monitor\*\* from the Arduino IDE menus to open it.
> \*\*ⓘ\*\* We must do an open/close cycle on \*\*Serial Monitor\*\* as a workaround for \[a bug\](https://github.com/arduino/arduino-ide/issues/1423) in \*\*Serial Plotter\*\*
> 1. Click the \*\*X\*\* icon on the "\*\*Serial Monitor\*\*" tab in the bottom panel of the Arduino IDE window to close the tab:
> !\[image\](https://user-images.githubusercontent.com/8572152/215050213-e6c41c1a-0eae-448a-ae91-f2acefedf793.png)
> 1. Upload the sketch.
> 1. Open \*\*Serial Monitor\*\* and/or \*\*Serial Plotter\*\* again if needed after the upload is finished.
> 
> \#### Additional reports
> 
> \- https://forum.arduino.cc/t/arduino-nano-not-able-to-upload-comx-port-access-denied/1081669/15
> \- https://forum.arduino.cc/t/elusive-uno-upload-error-access-is-denied/1067785/5
> \- https://forum.arduino.cc/t/port-issues-with-ide-2-0-3/1069090
> \- https://forum.arduino.cc/t/fdti-breakout-2-types-cause-usb-acess-denial/1088005
> \- https://forum.arduino.cc/t/port-access-is-denied/1089761
> \- https://forum.arduino.cc/t/cant-open-device-when-uploading-but-serial-monitor-works/1127731
> \- https://github.com/arduino/arduino-ide/issues/1937
> \- https://github.com/arduino/arduino-ide/issues/726#issuecomment-1464313325
> 
> \### Issue checklist
> 
> \- \[X\] I searched for previous reports in \[the issue tracker\](https://github.com/arduino/arduino-ide/issues?q=)
> \- \[X\] I verified the problem still occurs when using the latest \[nightly build\](https://www.arduino.cc/en/software#nightly-builds)
> \- \[X\] My report contains all necessary details

If you have a [**GitHub**](https://github.com/) account, you can subscribe to that issue to get notifications of any new developments related to this subject.

---

<div class="post-metadata">

**Author:** ![system](https://dub1.discourse-cdn.com/arduino/user_avatar/forum.arduino.cc/system/32/1140315_2.png) [@system](https://forum.arduino.cc/u/system)\
**Post date:** [November 13, 2023, 6:19am UTC](https://forum.arduino.cc/t/cant-open-device-when-uploading-but-serial-monitor-works/1127731/5 "2023-11-13T06:19:46Z")

</div>

Closed on November 13, 2023, 6:19am UTC

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