Ошибка открытия последовательного порта com11 port busy

grey-vsm аватар

Offline

Зарегистрирован: 01.12.2016

Приветствую всех.

У меня возникла возможно аппаратная неисправность платы Arduino UNO. Я написал программу и собрал на монтажной плате схему управления двигателем постоянного тока, по схеме представленой на рис.

Сначала все нормально работало, но потом возможно случайно каратнул кратковременно один из выводов двигателя на вывод базы транзистора (до или после резистора) потому что я замечал кратковременное срабатывание двигателя в тот момент когда он должен быть выключен. И после этого при попытке открыть «монитор порта» выходит сообщение «Ошибка открытия последовательного порта «COM3″ (Port busy)», и при попытке загрузить другую программу тоже ни чего не работает, выходит сообщение об ошибке. Подскажите что-то произошло с USB портом на плате arduino, хотя в диспечере устройств видно «Arduino Uno (COM3)». Неужели моя плата сломалась окончательно или чтото еще можно сделать и как мне провести проверку и поиск неисправности?

//——Полное сообщение об ошибке———

Arduino: 1.6.9 (Windows 7), Плата:»Arduino/Genuino Uno»

Скетч использует 2 298 байт (7%) памяти устройства. Всего доступно 32 256 байт.

Глобальные переменные используют 232 байт (11%) динамической памяти, оставляя 1 816 байт для локальных переменных. Максимум: 2 048 байт.

Ошибка открытия последовательного порта «COM3» (Port busy)

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x7b

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x7b

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x7b

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x7b

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x7b

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x7b

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x7b

avrdude: ser_send(): write error: sorry no info avail

processing.app.SerialException: Ошибка открытия последовательного порта «COM3»

at processing.app.Serial.<init>(Serial.java:125)

at processing.app.Serial.<init>(Serial.java:66)

at processing.app.SerialMonitor$3.<init>(SerialMonitor.java:93)

at processing.app.SerialMonitor.open(SerialMonitor.java:93)

at processing.app.AbstractMonitor.resume(AbstractMonitor.java:110)

at processing.app.Editor.resumeOrCloseSerialMonitor(Editor.java:2459)

at processing.app.Editor.access$2900(Editor.java:90)

at processing.app.Editor$DefaultExportHandler.run(Editor.java:2437)

at java.lang.Thread.run(Thread.java:745)

Caused by: jssc.SerialPortException: Port name — COM3; Method name — openPort(); Exception type — Port not found.

at jssc.SerialPort.openPort(SerialPort.java:167)

at processing.app.Serial.<init>(Serial.java:114)

… 8 more

Ошибка открытия последовательного порта «COM3»

//————————————————————————————————-

I’ve got an idea. Your board isn’t being recognized. Try unplugging the arduino and see if Com 1 is still there. Sometimes it can recognize mice and other devices as Com 1 or 2 instead of your arduino.

On some of my development machines after everything settled out my devices will show up on Com 4 and 5 when I am working on two at a time.

If this is not the case go into the device manager and see if you can see the board listed.

I would also wonder if you have your sensor hooked to digital pins 0 and 1. These pins are used for your serial line on usb. So if you have anything such as a sensor hooked to them it may be generating data keeping the line busy instead of it being able to negotiate.

I had this happen when setting up hc-05 for the first time. I realized I had to keep the chip off while flashing or I would end up with errors or Com busy.

Please provide your pinout and basic information about the Com ports available on the ide. Also consider that you will need to specify the correct board as it will default to an uno.

Programmer not in sync issues generally occur because the board is recognized but cannot be written to for one reason or another.

  • the board has something plugged into digital 1 and 0 which are serial i/o pins
  • the board programmer is busy running your last batch of code
  • usb error

So

  • try a different cord
  • try unplugging potential wiring issues and see if it can be written to without anything on it
  • try holding down reset on the board until the board when you try to write to it until just after it finishes compiling to clear any potential programing issues

In my experience mega have a tendency to suffer from the last one.

  1. 1.Скачал дрова http://www.arduino.cc/en/Main/Software
    ардуино стала определяться как устройство FT232R USB UART
    2.наткнулся на статью http://did5.ru/arduino/vosstanavlivaem-arduino-nano.html думал PID на 0000 поменялся
    проверил все ок
    3.Скачал дрова с этой страницы как указано в статье http://www.wut.de/e-3wwww-51-inus-000.php
    установил их в ручную
    4.Теперь вроде видена плата USB Serial Port (COM3)
    5.Пытаюсь залить простой скетч выдается сообщение
    avrdude: ser_open(): can’t open device «\.COM3»: Отказано в доступе.
    Проблема загрузки на плату. Для достижения дзен, курить http://www.arduino.cc/en/Guide/Troubleshooting#upload .
    Ошибка открытия последовательного порта «COM3» (Port busy)

    Подскажите что делать, куда смотреть, что почитать, ничего не могу найти на эту тему.
    Во многих темах пишут, что все на винде 8.1 все хорошо само ставится.

  2. Ключевые слова «Port busy», т.е. порт занят
    Возможно, в системе крутится какая-то программа, которая блокирует последовательный порт.
    Вычислить такую программу бывает весьма сложно, поскольку в виндовс нет нормального средства определить, какая именно программа занимает последовательный порт.

    В свое время я сталкивался с подобной проблемой, и той самой блокирующей программой оказалась программа синхронизации с телефоном, которая зачем-то открывала все последовательные порты, доступные в системе.

  3. У тебя точно оригинальный ардуино?? Если клон, что наверняка, то кури в сторону «ch341ser».

  4. попробовал поменять на другой порт, но перед сменой выдается сообщение
    «The port has been opened by another application…» , т.е. порт занят другим приложением и так с любым портом на который бы я не хотел поменять. Может можно как-то определить кто все занял?

  5. А что, работа с оригиналом и клоном отличаются?

  6. У клона может быть другой чип преобразования USB-Serial. Причем возможные варианты не исчерпываются чипом CH341. Есть еще несколько.
    Только обычно если порт виден, то, скорее всего, драйвер установился корректно. А если драйвер установился, то особых проблем, исходящих о стороны другого USB-Serial преобразователя быть не должно.
    Конечно, теоретически возможно, что драйвер кривой, что и проявляется подобными последствиями. Но, как мне кажется, вероятность этого достаточно мала.

  7. Спасибо! Просто я вспомнил про сервисы eBay, alliexpress. Там же одни копии, но раз покупают значит копии качественные)

  8. У меня как раз так и было. Драйвера установлены, никаких ошибок в оборудовании нет, а скетчи не заливаются. Ошибка такая же.

    Курил в гугле пару часов пока выяснил что ардуины не оригинальные то же бывают.

  9. я уже на другом компе эту плату подключал и заливал туда свой скетч, все нормально работает. Там была Win7. А это ноут с виндой 8.1. На нем никак не получается

  10. Посмотри тут и попробуй так же.

  11. Оказывается, не все от качества подделок зависит. Почитайте по ссылке в 1-м сообщении, как оригинальные драйвера «убивают» копии, специально прописывая в них неправильный PID. Я вот на такое попал…

  12. я в самом начале писал, что такой вариант проверил, и не обнаружил изменения PID, с этим все в порядке.

  13. ——- простое решение тут ———————
    была такая ситуация. отключите на время загрузки что у вас воткнуто в rx и tx
    и всё загрузится как надо, после загрузки обратно подключите и работайте
    —————————————————————

Symptoms

I was running in to a number of issues with the Arduino IDE not being able to connect to my Arduino’s serial port.
The error messages typically indicated that the COM port was busy.
Something like: Error opening serial port 'COM14'. (Port Busy) (Your COM port number may vary.)

No matter what I tried, over the course of multiple debug sessions I couldn’t it out.
The only time I could access the device was after a fresh reboot.
If I programmed the device I would then get the ‘port busy’ message afterwards.
And, having to reboot after every single programming run just to see serial output was just not going to happen.
(Let alone, if the pertinent messages came up right after the device rebooted after a programming session.)

In my case I will say that the culprit was NZXT CAM; a program which controls my NZXT liquid cooling setup.

That said, I would like to explain how to figure out what process is using the COM port because this may not be the culprit for you.

Getting Started

Checking Your Arduino

The first step is to make sure your Arduino is showing up as a device.
This is pretty easy:

  1. Right click on your ‘Windows’ logo / start menu in the bottom left of the screen.
  2. Select ‘Device Manager’
  3. In the window that pops up, expand the ‘Ports (COM & LPT)’ member
  4. Your Arduino should be listed there along with it’s COM port number
  5. Don’t close Device Manager yet. We may need it later

You should expect to see Arduino under the ‘Ports (COM & LPT)’ section.
If you don’t see it there is probably something else wrong.
You may need to find a different tutorial; sorry about that.

Image of Device Manager with Arduino's COM port

Finding the Culprit

Downloading Process Explorer

There are a couple of tools you can use to do this investigation, but in this page we’ll be using Process Explorer.
This is a tool provided by Microsoft, and is reasonably easy to use.

  1. Download the tool; as of this writing you can find it here
  2. This tool does not require an install, but I recommend extracting the zip file at least.
  3. Open the resulting extracted folder
  4. IMPORTANT: Make sure you run Process Explorer in the next step AS ADMINISTRATOR (via the right-click menu). Otherwise you may not be able to have insight in to all of the processes running on the system.
  5. If you are on a 64-bit system (most likely with newer systems) run procexp64

You should see a window that looks like this:

Image of Process Explorer's main window

Doing an Initial Search

At first, there are a few different strings you can search for.
I’ll cover these here (including the one that worked for me), but I’ll also help you try to find other strings you could search for below.

  1. With Process Explorer open, click ‘Find -> Find Handle or DLL’ or hit Ctrl+F
  2. In the box next to ‘Handle or DLL substring’ you’ll want to try one of the following:
    1. usbser
    2. Serial
    3. VCP

For me, usbser was the winner, but the other two may also work.
The list started from this Stackoverflow reply.

You should end up seeing something like this:

Image of Process Explorer finding the culprit; NZXT CAM

Diving Deeper

More Search Terms

As I mentioned above, with the initial search terms I was finding online (Serial, VCP) I was unable to locate the culprit.
So, I turned to the data in device manager to see if I could expand my search terms.
If you’d like to try some more, you can take the following steps.

  1. With device manager open, and showing your Arduino device under ‘Ports (COM & LPT)’…
  2. Right click on your Arduino device and select properties
  3. Select the ‘Details’ tab

In this tab you can make changes to the ‘Property’ drop down to search for more potential search terms.
I found mine (usbser) under the ‘Service’ item. Some of these are likely more useful than others.
However, I am not a Windows expert so I’m not sure what handle names are valid ones so you may have to do a little bit of manual searching.

Image of the Details tab of the Arduino COM device

After killing NZXT CAM on my system it is smooth sailing again for my Arduino.
I hope this helps you root cause your COM port (or other resource) issues!

Image of a completed upload message

У меня есть идея. Ваша плата не распознается. Попробуйте отключить arduino и посмотреть, остался ли Com 1. Иногда он может распознавать мыши и другие устройства как Com 1 или 2 вместо вашего arduino.

На некоторых из моих машин для разработки после того, как все улажено, мои устройства отображаются на Com 4 и 5, когда я работаю с двумя одновременно.

Если это не так, зайдите в диспетчер устройств и посмотрите, отображается ли плата в списке.

Мне также интересно, подключен ли ваш датчик к цифровым контактам 0 и 1. Эти контакты используются для последовательной линии usb. Так что если у вас есть что-то, например, датчик, подключенный к ним, он может генерировать данные, сохраняя линию занятой, вместо того, чтобы она могла вести переговоры.

У меня это произошло при первой настройке hc-05. Я понял, что должен держать чип выключенным во время прошивки, иначе я закончу с ошибками или Com busy.

Пожалуйста, предоставьте распиновку и основную информацию о Com-портах, доступных на ide. Также учтите, что вам нужно будет указать правильную плату, поскольку по умолчанию будет установлена плата uno.

Проблемы с несинхронизацией программаторов обычно возникают из-за того, что плата распознается, но не может быть записана на нее по той или иной причине.

  • плата подключена к цифровым контактам 1 и 0, которые являются последовательными контактами ввода-вывода.
  • программатор платы занят выполнением последней порции кода
  • ошибка usb

Итак,

  • попробуйте другой шнур
  • попробуйте отсоединить потенциальные проблемы с проводкой и посмотреть, можно ли записать на него без чего-либо на нем
  • попробуйте удерживать кнопку reset на плате до тех пор, пока плата, когда вы пытаетесь записать на нее, не закончит компиляцию, чтобы устранить любые потенциальные проблемы программирования

По моему опыту, мега имеет тенденцию страдать от последнего.

  • Ошибка открытия последовательного порта com10 port busy
  • Ошибка открытия принтера windows не удается подключиться к принтеру
  • Ошибка открытия последовательного порта com1 port busy
  • Ошибка открытия почтовой базы випнет деловая почта
  • Ошибка открытия порта чиплоадер