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

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

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»

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

  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
    и всё загрузится как надо, после загрузки обратно подключите и работайте
    —————————————————————

I tried your Processing sketch, and it does detect and try to connect to the serial port, but fails for some reason.

Processing «code» can include a try catch block to help you diagnose the issue. Using this modified sketch, you can print the errors to the console window.

import processing.serial.*;

Serial ser_port;                // for serial port
PFont fnt;                      // for font
int num_ports;
boolean device_detected = false;
String[] port_list;
String detected_port = "";

void setup() {
  size(400, 200);                         // size of application window
  background(0);                          // black background
  fnt = createFont("Arial", 16, true);    // font displayed in window

  println(Serial.list());

  // get the number of detected serial ports
  num_ports = Serial.list().length;
  // save the current list of serial ports
  port_list = new String[num_ports];
  for (int i = 0; i < num_ports; i++) {
    port_list[i] = Serial.list()[i];
  }
}

void draw()
{
  background(0);
  // display instructions to user
  textFont(fnt, 14);
  text("1. Arduino or serial device must be unplugged.", 20, 30);
  text("   (unplug device and restart this application if not)", 20, 50);
  text("2. Plug the Arduino or serial device into a USB port.", 20, 80);

  // see if Arduino or serial device was plugged in
  if ((Serial.list().length > num_ports) && !device_detected) {
    device_detected = true;
    // determine which port the device was plugged into
    boolean str_match = false;
    if (num_ports == 0) {
      detected_port = Serial.list()[0];
    } else {
      // go through the current port list
      for (int i = 0; i < Serial.list().length; i++) {
        // go through the saved port list
        for (int j = 0; j < num_ports; j++) {
          if (Serial.list()[i].equals(port_list[j])) {
            break;
          }
          if (j == (num_ports - 1)) {
            str_match = true;
            detected_port = Serial.list()[i];
          }
        }
      }
    }
  }
  else{
    text("else", 20, 110);
  }
  // calculate and display serial port name
  if (device_detected) {
    text("Device detected:", 20, 110);
    textFont(fnt, 18);
    text(detected_port, 20, 150);
    try{
      ser_port = new Serial(this, detected_port, 9600);
    }
    catch(Exception e){
      // Print detailed error information to the console.
      System.err.println(e);
      e.printStackTrace();
    }
  }
  else{
    text("Device NOT detected:", 20, 140);
  }
}

These are the errors I get on my computer using a Arduino Uno.

    at processing.serial.Serial.<init>(Unknown Source)
    at processing.serial.Serial.<init>(Unknown Source)
    at sketch_211210a.draw(sketch_211210a.java:85)
    at processing.core.PApplet.handleDraw(PApplet.java:2475)
    at processing.awt.PSurfaceAWT$12.callDraw(PSurfaceAWT.java:1547)
    at processing.core.PSurfaceNone$AnimationThread.run(PSurfaceNone.java:313)
java.lang.RuntimeException: Error opening serial port /dev/tty.wchusbserial620: Port busy
java.lang.RuntimeException: Error opening serial port /dev/tty.wchusbserial620: Port busy

Another issue is with this part of the code: if (device_detected). The draw() function is like the Arduino loop() function in that it keeps looping through the code. It is repeatedly trying to make a new serial connection to the same port, which MAY explain why the Port busy error message is repeated in the console error messages.

Using Processing IDE 3.5.3, there is a errors tab at the bottom of the console window. I am getting 2 errors there which don’t seem to be involved with the port connection issue.

If you install the controlP5 library in the Processing IDE, you can use this port testing sketch to see the Port ID change every time you create a new connection with it. I suspect your sketch may connect to the Arduino the first time through the draw() function, then it keeps trying to connect to the same port which is busy.

// Serial port(s) connection tester. Processing version 3.5.3.
// For a list of all the ScrollableList Controller methods available,
// use: "ControlP5.printPublicMethodsFor(ScrollableList.class);"
// to print the entire list of the 165 functions to the console.
import controlP5.*;
import java.util.*;
import processing.serial.*;

ControlP5 cp5;
Serial myPort;
Textlabel outputWindowLine1, outputWindowLine2;
String portName;

void setup(){

  size(500, 431);

  // Use a font larger than the default "6px".
  ControlFont font = new ControlFont(createFont("Verdana", 14));

  // ALL CAPS is the default font for the control. Why?
  Label.setUpperCaseDefault(false);

  // Configure a controlP5 ScrollableList.
  cp5 = new ControlP5(this);
  cp5.addScrollableList("dropdown")
    .setPosition(0, 50)
    .setSize(500, 400)
    .setBarHeight(50)
    .setItemHeight(30)
    .setFont(font)
    .addItems(GetSerialPortList())
    .setType(ScrollableList.LIST)
    .setLabel("--- Click on a port name to try and connect to it ---")
    ;

  outputWindowLine1 = cp5.addTextlabel("outputWindowLine1Label")
    .setText("The list of port names is "scrollable".")
    .setPosition(0, 0)
    .setColorValue(0)
    .setFont(font)
    ;

  outputWindowLine2 = cp5.addTextlabel("outputWindowLine2Label")
    .setText("Press any character on the keyboard to reload the list.")
    .setPosition(0, 25)
    .setColorValue(0)
    .setFont(font)
    ;
}

void draw(){
  background(255);
}

// User selects a drop down item. Works like a JavaScript onChange()
// event, except you can click on the same item multiple times, this
// code will execute again on each mouse "click" of the same item.
void dropdown(int n){

  // Create a serial connection and send some
  // chars to the "USB to Serial Converter".
  try{

    // Get the port name.
    portName = Serial.list()[n];

    // If you don't do this, you can't re-connect to the same port again.
    // Re-connecting to the same port gives you a new "myPort ID" and may
    // take a few seconds.
    if(myPort != null){
      myPort.clear();
      myPort.stop();
    }

    // Create a Serial Port connection.
    myPort = new Serial(this, portName, 9600);

    // User message.
    outputWindowLine1.setText("Connected to portName: " + portName);
    outputWindowLine2.setText("myPort = " + myPort);

  }
  catch(Exception e){

    // User message.
    outputWindowLine1.setText("Error connecting to portName: " + portName);
    outputWindowLine2.setText("");

    // Print detailed error information to the console.
    System.err.println(e);
    e.printStackTrace();
  }
}

// Refresh the dropdown list of serial port names.
void keyPressed(){
  cp5.get(ScrollableList.class, "dropdown").setItems(GetSerialPortList());
  outputWindowLine1.setText("Serial port list refreshed!");
  outputWindowLine2.setText("");
}

// Get a List of the serial port names.
List GetSerialPortList(){
  List serialPortList = Arrays.asList(Serial.list());
  return serialPortList;
}

I tried your Processing sketch, and it does detect and try to connect to the serial port, but fails for some reason.

Processing «code» can include a try catch block to help you diagnose the issue. Using this modified sketch, you can print the errors to the console window.

import processing.serial.*;

Serial ser_port;                // for serial port
PFont fnt;                      // for font
int num_ports;
boolean device_detected = false;
String[] port_list;
String detected_port = "";

void setup() {
  size(400, 200);                         // size of application window
  background(0);                          // black background
  fnt = createFont("Arial", 16, true);    // font displayed in window

  println(Serial.list());

  // get the number of detected serial ports
  num_ports = Serial.list().length;
  // save the current list of serial ports
  port_list = new String[num_ports];
  for (int i = 0; i < num_ports; i++) {
    port_list[i] = Serial.list()[i];
  }
}

void draw()
{
  background(0);
  // display instructions to user
  textFont(fnt, 14);
  text("1. Arduino or serial device must be unplugged.", 20, 30);
  text("   (unplug device and restart this application if not)", 20, 50);
  text("2. Plug the Arduino or serial device into a USB port.", 20, 80);

  // see if Arduino or serial device was plugged in
  if ((Serial.list().length > num_ports) && !device_detected) {
    device_detected = true;
    // determine which port the device was plugged into
    boolean str_match = false;
    if (num_ports == 0) {
      detected_port = Serial.list()[0];
    } else {
      // go through the current port list
      for (int i = 0; i < Serial.list().length; i++) {
        // go through the saved port list
        for (int j = 0; j < num_ports; j++) {
          if (Serial.list()[i].equals(port_list[j])) {
            break;
          }
          if (j == (num_ports - 1)) {
            str_match = true;
            detected_port = Serial.list()[i];
          }
        }
      }
    }
  }
  else{
    text("else", 20, 110);
  }
  // calculate and display serial port name
  if (device_detected) {
    text("Device detected:", 20, 110);
    textFont(fnt, 18);
    text(detected_port, 20, 150);
    try{
      ser_port = new Serial(this, detected_port, 9600);
    }
    catch(Exception e){
      // Print detailed error information to the console.
      System.err.println(e);
      e.printStackTrace();
    }
  }
  else{
    text("Device NOT detected:", 20, 140);
  }
}

These are the errors I get on my computer using a Arduino Uno.

    at processing.serial.Serial.<init>(Unknown Source)
    at processing.serial.Serial.<init>(Unknown Source)
    at sketch_211210a.draw(sketch_211210a.java:85)
    at processing.core.PApplet.handleDraw(PApplet.java:2475)
    at processing.awt.PSurfaceAWT$12.callDraw(PSurfaceAWT.java:1547)
    at processing.core.PSurfaceNone$AnimationThread.run(PSurfaceNone.java:313)
java.lang.RuntimeException: Error opening serial port /dev/tty.wchusbserial620: Port busy
java.lang.RuntimeException: Error opening serial port /dev/tty.wchusbserial620: Port busy

Another issue is with this part of the code: if (device_detected). The draw() function is like the Arduino loop() function in that it keeps looping through the code. It is repeatedly trying to make a new serial connection to the same port, which MAY explain why the Port busy error message is repeated in the console error messages.

Using Processing IDE 3.5.3, there is a errors tab at the bottom of the console window. I am getting 2 errors there which don’t seem to be involved with the port connection issue.

If you install the controlP5 library in the Processing IDE, you can use this port testing sketch to see the Port ID change every time you create a new connection with it. I suspect your sketch may connect to the Arduino the first time through the draw() function, then it keeps trying to connect to the same port which is busy.

// Serial port(s) connection tester. Processing version 3.5.3.
// For a list of all the ScrollableList Controller methods available,
// use: "ControlP5.printPublicMethodsFor(ScrollableList.class);"
// to print the entire list of the 165 functions to the console.
import controlP5.*;
import java.util.*;
import processing.serial.*;

ControlP5 cp5;
Serial myPort;
Textlabel outputWindowLine1, outputWindowLine2;
String portName;

void setup(){

  size(500, 431);

  // Use a font larger than the default "6px".
  ControlFont font = new ControlFont(createFont("Verdana", 14));

  // ALL CAPS is the default font for the control. Why?
  Label.setUpperCaseDefault(false);

  // Configure a controlP5 ScrollableList.
  cp5 = new ControlP5(this);
  cp5.addScrollableList("dropdown")
    .setPosition(0, 50)
    .setSize(500, 400)
    .setBarHeight(50)
    .setItemHeight(30)
    .setFont(font)
    .addItems(GetSerialPortList())
    .setType(ScrollableList.LIST)
    .setLabel("--- Click on a port name to try and connect to it ---")
    ;

  outputWindowLine1 = cp5.addTextlabel("outputWindowLine1Label")
    .setText("The list of port names is "scrollable".")
    .setPosition(0, 0)
    .setColorValue(0)
    .setFont(font)
    ;

  outputWindowLine2 = cp5.addTextlabel("outputWindowLine2Label")
    .setText("Press any character on the keyboard to reload the list.")
    .setPosition(0, 25)
    .setColorValue(0)
    .setFont(font)
    ;
}

void draw(){
  background(255);
}

// User selects a drop down item. Works like a JavaScript onChange()
// event, except you can click on the same item multiple times, this
// code will execute again on each mouse "click" of the same item.
void dropdown(int n){

  // Create a serial connection and send some
  // chars to the "USB to Serial Converter".
  try{

    // Get the port name.
    portName = Serial.list()[n];

    // If you don't do this, you can't re-connect to the same port again.
    // Re-connecting to the same port gives you a new "myPort ID" and may
    // take a few seconds.
    if(myPort != null){
      myPort.clear();
      myPort.stop();
    }

    // Create a Serial Port connection.
    myPort = new Serial(this, portName, 9600);

    // User message.
    outputWindowLine1.setText("Connected to portName: " + portName);
    outputWindowLine2.setText("myPort = " + myPort);

  }
  catch(Exception e){

    // User message.
    outputWindowLine1.setText("Error connecting to portName: " + portName);
    outputWindowLine2.setText("");

    // Print detailed error information to the console.
    System.err.println(e);
    e.printStackTrace();
  }
}

// Refresh the dropdown list of serial port names.
void keyPressed(){
  cp5.get(ScrollableList.class, "dropdown").setItems(GetSerialPortList());
  outputWindowLine1.setText("Serial port list refreshed!");
  outputWindowLine2.setText("");
}

// Get a List of the serial port names.
List GetSerialPortList(){
  List serialPortList = Arrays.asList(Serial.list());
  return serialPortList;
}

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

Сначала проверьте последовательные порты. Загрузите Windows, но не подключайте плату Arduino или ESP8266. На рабочем столе щелкните правой кнопкой мыши (ПКМ) по ярлыку Этот компьютер (Компьютер). В меню выберите Свойства. В окне Система щелкните по ссылке Диспетчер устройств. В окне Диспетчер устройств откройте Порты (COM и LPT). Должен присутствовать последовательный порт COM1.

Теперь воткните в USB порт кабель от Arduino или ESP8266. В диспетчере устройств должен появиться дополнительный COM порт. Я подключил NodeMCU v3 и появился дополнительный порт COM3.

Если порт определился, но никаких сообщений в монитор порта не выводится, то проверьте скорость порта. В настройках Arduino IDE выставьте скорость порта ту, которая прописана в скетче. В окне монитора порта нажмите кнопку Очистить вывод. После этого монитор порта должен заработать.

Если ничего не изменилось и присутствует только порт COM1, то значит у вас проблемы с последовательным портом.
В этом случае при запуске скетча в окне выдается сообщение «Порт недоступен», «Ошибка подключения последовательного порта», «Порт не найден» и т.п. После этого начинаются пляски с бубном — отключаются и снова подключаются кабели, перезагружается компьютер. Иногда это помогает, иногда — нет.
Вероятная причина ошибки порта — помехи при передаче данных по USB кабелю. Как это не банально, но чаще всего причина в некачественном кабеле. Не экономьте, купите качественный кабель. Вторая вероятная причина — слаботочный USB порт. Замените ненадёжный кабель и не используйте разбитые USB разъёмы.

По второй причине — недостаточно тока для питания Arduino или ESP8266. USB порт в материнской плате компьютера может быть запитан от источника с малым выходным током. Попробуйте самое простое — подключить Arduino к другому порту в надежде на то, он запитан от более мощного источника. Такое возможно, если USB портов несколько. Кардинальное решение — подключить Arduino или ESP8266 через USB хаб (USB — разветвитель) с внешним блоком питания с выходным током не менее 2 — 3 А.

Радиолюбители, умеющие паять, могут поступить проще — подпаять короткими проводами к разъему USB в параллель еще один разъем USB, в который завести от основного разъема два провода питания GND и +5В. Или купите такой кабель, если есть такая возможность. Такой прием используют фирмы, когда питания от одного разъема USB не хватает, например для питания жесткого диска, подключенного к порту USB (USB HDD). Таким образом устройство получит дополнительное питание от другого порта USB.

Ещё одно причина нехватки питания для портов USB — подключение к роутеру по Wi-Fi. Wi-Fi адаптер потребляет значительный ток и нагружает шину питания портов USB. В связи с этим отключите Wi-Fi адаптер и подключите компьютер к роутеру кабелем. Иногда это сразу может решить проблему.
Предпочтительно использовать компьютер с подключением клавиатуры и мыши к портам PS/2. Клавиатура и мышь с подключением по USB будут дополнительно нагружать шину +5В USB и питания для Arduino или Node MCU может не хватить. Отключите на время принтер, подключенный по USB, смартфон, подключенный по USB и другие устройства, подключенные к портам USB, без которых можно обойтись, так как они потребляют ток по шинам USB. Кроме того, они могут просто влиять на порты USB и вызывать сбои системы.
По возможности используйте десктоп с достаточно мощным блоком питания, который обеспечивает с запасом ток по шине +5В. Некоторые дешёвые материнские платы при подключении двух-трёх USB устройств уже начинают давать сбои.

Используйте короткий USB кабель, насколько это возможно. Это уменьшит помехи при передаче данных.
Не используйте USB удлинители, подключайте Arduino или ESP8266 непосредственно к USB портам компьютера на задней стенке системного блока. Не используйте USB разъёмы на передней панели системного блока или USB порты картридера. Они подключаются к материнской плате кабелями. Это увеличивает помехи при передаче данных.

Самый действенный способ снизить помехи это использовать USB кабель с ферритовыми фильтрами — цилиндрическими утолщениями из ферритовых колец на концах кабелей.

Фильтры бывают съемными, они надеваются на кабель и защелкиваются.

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

Если использовать кольца небольшого диаметра, то никакой фиксации не понадобится. Например, я использовал два кольца, снятые с неисправной материнской платы. Только придется разрезать кабель и затем спаять его снова или припаять новый USB разъем.

Бывают ситуации, когда Arduino работает нормально, а при подключении ESP8266 появляются ошибки и скетч не работает. Такое может быть из-за того, что Wi-Fi передатчик модуля потребляет довольно значительный ток и для нормальной работы просто не хватает тока. Подключите ESP8266 через USB хаб с внешним блоком питания с выходным током 2-2.5-3 А. Также используйте для подключения короткие кабели с ферритовыми фильтрами на концах.
Желательно использовать Micro-USB или Mini-USB кабель с двумя USB разъемами на конце. Отвод с USB разъемом служит для подачи дополнительного питания. Радиолюбители могут без труда подпаять дополнительный USB разъем сами.

Если USB порты на материнской плате слабы по токам питания, то можно попробовать дополнительно подключить в PCI разъем контроллер USB. Подключите к этому контроллеру USB-мышь и USB-клавиатуру. К USB портам на материнской плате подключайте только Arduino или NodeMCU v3. К PCI разъему подводится более мощное питание. Один из таких контроллеров показан на фото:

Пробуйте подключаться к разным USB разъёмам компьютера, если их несколько, или разным разъёмам USB хаба.
Если ваш компьютер имеет порты USB2.0 и USB3.0, то пробуйте подключаться к тем и другим. Скорее всего лучшие результаты получите при подключении к USB2.0. Драйвер USB3.0 может работать некорректно.
Windows иногда просто не может определить порт. Проверьте контакты блока питания USB хаба в розетке сети. Если блок питания болтается, то о надёжной работе USB портов не может быть и речи.

Подключайте плату Arduino или ESP8266 в USB разъём после полной загрузки Windows.
При переключениях в другие порты номер порта может измениться. Проверяйте номер порта. В верхнем меню Arduino IDE выберите Сервис (Tools) -> Последовательный порт (Serial Port). Рядом с портом COM1 должен быть дополнительный порт. Поставьте галку, чтобы активировать его.

Работу COM порта и загрузку скетча визуально можно проверить по миганию светодиодов RX и TX на плате Arduino или по частому миганию светодиода рядом с Wi-Fi антенной на плате ESP8266 (NodeMCU v3).

Несмотря на все ухищрения, Windows 10 не открывает COM порт для Node MCU v3 (ESP-12E). Иногда подключает порт и тут же сбрасывает его и так без конца.
Подключил Node MCU v3 (ESP8266) через USB хаб с внешним блоком питания к компьютеру с Windows XP SP3. Установил драйвер ch341ser.exe и Arduino IDE 1.6.5. COM порт определяется и работает. В Windows XP COM порты определяются более надёжно. Проверил это на двух компьютерах с Windows XP с Intel и AMD процессорами.
Однако некоторые скетчи уже не используют приложения Win32 и при компиляции выдаётся ошибка. В этом случае потребуется как минимум 64-разрядная Windows 7.
COM порты виртуальные и, как в любой программе, возможен сбой при определении порта.

Семипортовые USB хабы (разветвители), как пишут в интернете, имеют две микросхемы по 4 порта. Последний порт первой микросхемы используется для подключения второй микросхемы. В итоге получается 3+4 порта. Можно попробовать подключать Arduino или Node MCU в разные порты хаба.

В Windows откройте Диспетчер устройств, раскройте Порты (COM и LPT). Не закрывайте это окно. Начинайте пробовать разные кабели, разные порты и разные варианты подключения оборудования и, как только порт надёжно определится в Диспетчере устройств, запомните эту конфигурацию оборудования.

И последнее и, может быть, самое главное. Большинство бестрансформаторных блоков питания (зарядных устройств), выполненных в корпусе-вилке, не обеспечивают заявленных характеристик. Например, у зарядного устройства 5V 2.1А, показанного ниже, при токе 0,9 А напряжение на выходе падает до 3,8 В. Сомневаюсь в том, что такой блок питания вообще может отдать в нагрузку ток 2А.

При подозрениях на проблему с питанием используйте трансформаторный блок питания. По габаритам он будет намного больше, зато надежно обеспечит расчетные ток и напряжение.
Рекомендации по блоку питания (из книги «Неисправности вашего ZX SPECTRUM» С.-Петербург, 1991):
«Советуем Вам выбрать самую простую, но и самую надежную схему: трансформатор — диодный мост — конденсатор фильтра — микросхема КР142ЕН5А в стандартном включении — блокировочный конденсатор.
Не стремитесь к чрезмерной миниатюризации! Трансформатор должен иметь мощность не менее 15 Вт, провод вторичной обмотки диаметр не менее 0,7 мм и напряжение на вторичной обмотке под нагрузкой 7-8 Ом должно быть 9-10 В.
Диодный мост подойдет любой из серий КЦ402, КЦ405. Конденсатор фильтра должен быть не менее 4000 мкФ, а рабочее напряжение — не ниже 16 В. На выходе ЕН5А поставьте блокировочный конденсатор 100-200 мкФ на 10-16 В. После сборки БП проконтролируйте напряжение на входе ЕН5А при подключенной нагрузке 5 Ом — должно быть 10,5-11 В.
Если это не так — отмотайте или домотайте несколько витков вторичной обмотки трансформатора. Затем проконтролируйте под нагрузкой 5 Ом напряжение на выходном разъеме БП — должно быть 4,9 — 5,1 В. При низком напряжении придется взять более толстый провод для подсоединения разъема.
При окончательной проверке БП посмотрите на осциллографе переменную составляющую напряжения на пределе 10 мВ (под нагрузкой 5 Ом) — заметных отклонений от прямой линии не должно быть.
В случае неудачи емкость фильтрующего конденсатора нужно увеличить.
Наконец, позамыкайте выход БП накоротко и убедитесь, что ЕН5А не выходит из строя.»
Вместо диодного моста КЦ можно применть более компактный диодный мост DB157S.

Некоторые экземпляры ЕН5А имеют на выходе напряжение чуть меньше 5 В. Для регулировки выходного напряжения соберите блок питания по схеме:

Номиналы резисторов R1 и R2 вы можете рассчитать сами. Например, после мостика на конденсаторе фильтра под нагрузкой у вас получилось напряжение 15 В. Напряжение на стабилитроне составит 3-3,3 В. Значит на резисторе R1 должно упасть 15 — 3 = 12 В. Ток стабилитрона КС133А 10 мА, т. е. 0,01 А. По закону Ома R = V/I. R = 12/0.01= 1200 Ом = 1,2 кОм. Также можно попробовать стабилитрон КС119А (напряжение стабилизации 1,9 В). Резистор R2 можно взять сопротивлением раза в три больше, чем R1, чтобы не так сильно шунтировал стабилитрон. R2 будет 3 — 3,6 кОм. Мощность рассеивания тоже рассчитывается по закону Ома. Резистор 0,25 Вт будет с большим запасом по мощности рассеивания. Для регулировки напряжения удобно использовать подстроечный многооборотный резистор СП5-3 или аналогичный.
Аккуратнее с регулировкой напряжения, а то выведите из строя само устройство. Вначале для проверки блока питания подключите нагрузку — резистор 5 Ом 5 Вт. Ток нагрузки будет 1 А. Резистором R2 установите напряжение на выходе + 5,0 ÷ 5,25 В.

Для повышения напряжения на выходе есть более простой вариант — включить в разрыв между выводом ЕН5А и общим проводом диод Д9Б. Так сделано в блоке питания для компьютера Специалист — М (ж. «Моделист-конструктор» № 4, 1991 г.)

Если есть подозрения на глюки системы, то тогда можно попробовать переустановить систему Windows.

Если все описанные меры не дали надежного результата, то скорее всего ваш системный блок имеет слаботочные порты USB и маломощный блок питания. Тут может помочь замена материнской платы и блока питания на более мощные, т.е по сути нужен новый системный блок.

Резюме
Чтобы устранить ошибки последовательного порта —
► используйте для питания Arduino или ESP8266 USB порты с достаточным выходным током или USB хаб с внешним блоком питания.
► используйте для подключения короткие USB кабели с ферритовыми фильтрами около разъемов.
► попробуйте разные версии драйвера CH340, если не поможет — тогда другую версию Windows.
► используйте качественный кабель со всеми сигнальными жилами, а не кабель от зарядного устройства.

Последнее редактирование 23 сентября 2022 г.

Источник

Arduino com port keeps getting busy

I have got an Arduino Uno R3 on which I have an accelerometer that I’m playing a bit with. This setup has worked for quite a while now, everything working from uploading to checking the serial output.

Today I started having problems with the com port reporting busy or not connected at all. When I use the default IDE it cant find the arduino at all but when I use a modded IDE (Arduino ERW 1.0.5) seems to find the port to communicate on but it reports it being busy.

I have reinstalled the driver like 5 or 6 times now and searched for any other driver that might work but they wont change anything. I have also checked that my pc actually detects the arduino which it does, it is listed among the COM ports on Device Manager. I also tried changing the Com port from COM3 to COM4 and still it worked for like 3 uploads and then the COM port kinda «disappeared» from the serial port list on the IDE.

EDIT: Weirdly, after closing some programs that seem to have to do with serial communication it works. I have to look into what I close and when.

EDIT2: For now it seems that processing sometimes didnt close properly when not using the stop button on the processing application which then didnt close the connection to the arduino. I havent had any problems since I started to use the Stop button on processing.

Win 8.1 Latest driver and IDE(an modded IDE called Arduino ERW 1.0.5 seem to work a bit better but have the same issues)

One thing I noticed is that if I press the reset button when it starts again it wont send anything through serial, is it defaulting to the Blink program after a reset or what?

Источник

  • #159

Господа здравствуйте. Возникла проблема пытаюсь прошить ESP12F, но выдает вот такую ошибку:

Executable segment sizes:
ICACHE : 32768 — flash instruction cache
IROM : 231820 — code in flash (default or ICACHE_FLASH_ATTR)
IRAM : 27613 / 32768 — code in IRAM (IRAM_ATTR, ISRs…)
DATA : 1496 ) — initialized variables (global, static) in RAM/HEAP
RODATA : 992 ) / 81920 — constants (global, static) in RAM/HEAP
BSS : 25608 ) — zeroed variables (global, static) in RAM/HEAP
Скетч использует 261921 байт (27%) памяти устройства. Всего доступно 958448 байт.
Глобальные переменные используют 28096 байт (34%) динамической памяти, оставляя 53824 байт для локальных переменных. Максимум: 81920 байт.
C:UsersVenusAppDataLocalArduino15packagesesp8266toolspython33.7.2-post1/python3 C:UsersVenusAppDataLocalArduino15packagesesp8266hardwareesp82663.0.0/tools/upload.py —chip esp8266 —port COM7 —baud 115200 —before default_reset —after hard_reset write_flash 0x0 C:UsersVenusAppDataLocalTemparduino_build_166446/Blink.ino.bin
esptool.py v3.0
Serial port COM7
Traceback (most recent call last):
File «C:UsersVenusAppDataLocalArduino15packagesesp8266hardwareesp82663.0.0/tools/upload.py», line 66, in <module>
esptool.main(cmdline)
File «C:/Users/Venus/AppData/Local/Arduino15/packages/esp8266/hardware/esp8266/3.0.0/tools/esptoolesptool.py», line 3551, in main
esp = chip_class(each_port, initial_baud, args.trace)
File «C:/Users/Venus/AppData/Local/Arduino15/packages/esp8266/hardware/esp8266/3.0.0/tools/esptoolesptool.py», line 271, in init
self._port = serial.serial_for_url(port)
File «C:/Users/Venus/AppData/Local/Arduino15/packages/esp8266/hardware/esp8266/3.0.0/tools/pyserialserialinit.py», line 90, in serial_for_url
instance.open()
File «C:/Users/Venus/AppData/Local/Arduino15/packages/esp8266/hardware/esp8266/3.0.0/tools/pyserialserialserialwin32.py», line 64, in open
raise SerialException(«could not open port {!r}: {!r}».format(self.portstr, ctypes.WinError()))
serial.serialutil.SerialException: could not open port ‘COM7’: OSError(22, ‘������� �������������� ����������.’, None, 433)
serial.serialutil.SerialException: could not open port ‘COM7’: OSError(22, ‘������� �������������� ����������.’, None, 433)

Именно последние 3 строчки не понятны. Порт компьютер видит, и в ардуино и в диспетчере устройств. Но если я даже пытаюсь просто открыть Монитор порта, вылезает вот такая ошибка — Ошибка открытия последовательного порта «COM7» (Port busy)
Пытался перезагружать и usb порт менял, все бестолку. Можете подсобить?

  • изображение_2022-02-08_151428.png

    411.7 KB
    Просмотры: 8

Сначала проверьте последовательные порты. Загрузите Windows, но не подключайте плату Arduino или ESP8266. На рабочем столе щелкните правой кнопкой мыши (ПКМ) по ярлыку Этот компьютер (Компьютер). В меню выберите Свойства. В окне Система щелкните по ссылке Диспетчер устройств. В окне Диспетчер устройств откройте Порты (COM и LPT). Должен присутствовать последовательный порт COM1.

Теперь воткните в USB порт кабель от Arduino или ESP8266. В диспетчере устройств должен появиться дополнительный COM порт. Я подключил NodeMCU v3 и появился дополнительный порт COM3.

Если порт определился, но никаких сообщений в монитор порта не выводится, то проверьте скорость порта. В настройках Arduino IDE выставьте скорость порта ту, которая прописана в скетче. В окне монитора порта нажмите кнопку Очистить вывод. После этого монитор порта должен заработать.

Если ничего не изменилось и присутствует только порт COM1, то значит у вас проблемы с последовательным портом.
В этом случае при запуске скетча в окне выдается сообщение «Порт недоступен», «Ошибка подключения последовательного порта», «Порт не найден» и т.п. После этого начинаются пляски с бубном — отключаются и снова подключаются кабели, перезагружается компьютер. Иногда это помогает, иногда — нет.
Вероятная причина ошибки порта — помехи при передаче данных по USB кабелю. Как это не банально, но чаще всего причина в некачественном кабеле. Не экономьте, купите качественный кабель. Вторая вероятная причина — слаботочный USB порт. Замените ненадёжный кабель и не используйте разбитые USB разъёмы.

По второй причине — недостаточно тока для питания Arduino или ESP8266. USB порт в материнской плате компьютера может быть запитан от источника с малым выходным током. Попробуйте самое простое — подключить Arduino к другому порту в надежде на то, он запитан от более мощного источника. Такое возможно, если USB портов несколько. Кардинальное решение — подключить Arduino или ESP8266 через USB хаб (USB — разветвитель) с внешним блоком питания с выходным током не менее 2 — 3 А.

Радиолюбители, умеющие паять, могут поступить проще — подпаять короткими проводами к разъему USB в параллель еще один разъем USB, в который завести от основного разъема два провода питания GND и +5В. Или купите такой кабель, если есть такая возможность. Такой прием используют фирмы, когда питания от одного разъема USB не хватает, например для питания жесткого диска, подключенного к порту USB (USB HDD). Таким образом устройство получит дополнительное питание от другого порта USB.

Ещё одно причина нехватки питания для портов USB — подключение к роутеру по Wi-Fi. Wi-Fi адаптер потребляет значительный ток и нагружает шину питания портов USB. В связи с этим отключите Wi-Fi адаптер и подключите компьютер к роутеру кабелем. Иногда это сразу может решить проблему.
Предпочтительно использовать компьютер с подключением клавиатуры и мыши к портам PS/2. Клавиатура и мышь с подключением по USB будут дополнительно нагружать шину +5В USB и питания для Arduino или Node MCU может не хватить. Отключите на время принтер, подключенный по USB, смартфон, подключенный по USB и другие устройства, подключенные к портам USB, без которых можно обойтись, так как они потребляют ток по шинам USB. Кроме того, они могут просто влиять на порты USB и вызывать сбои системы.
По возможности используйте десктоп с достаточно мощным блоком питания, который обеспечивает с запасом ток по шине +5В. Некоторые дешёвые материнские платы при подключении двух-трёх USB устройств уже начинают давать сбои.

Используйте короткий USB кабель, насколько это возможно. Это уменьшит помехи при передаче данных.
Не используйте USB удлинители, подключайте Arduino или ESP8266 непосредственно к USB портам компьютера на задней стенке системного блока. Не используйте USB разъёмы на передней панели системного блока или USB порты картридера. Они подключаются к материнской плате кабелями. Это увеличивает помехи при передаче данных.

Самый действенный способ снизить помехи это использовать USB кабель с ферритовыми фильтрами — цилиндрическими утолщениями из ферритовых колец на концах кабелей.

Фильтры бывают съемными, они надеваются на кабель и защелкиваются.

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

Если использовать кольца небольшого диаметра, то никакой фиксации не понадобится. Например, я использовал два кольца, снятые с неисправной материнской платы. Только придется разрезать кабель и затем спаять его снова или припаять новый USB разъем.

Бывают ситуации, когда Arduino работает нормально, а при подключении ESP8266 появляются ошибки и скетч не работает. Такое может быть из-за того, что Wi-Fi передатчик модуля потребляет довольно значительный ток и для нормальной работы просто не хватает тока. Подключите ESP8266 через USB хаб с внешним блоком питания с выходным током 2-2.5-3 А. Также используйте для подключения короткие кабели с ферритовыми фильтрами на концах.
Желательно использовать Micro-USB или Mini-USB кабель с двумя USB разъемами на конце. Отвод с USB разъемом служит для подачи дополнительного питания. Радиолюбители могут без труда подпаять дополнительный USB разъем сами.

Если USB порты на материнской плате слабы по токам питания, то можно попробовать дополнительно подключить в PCI разъем контроллер USB. Подключите к этому контроллеру USB-мышь и USB-клавиатуру. К USB портам на материнской плате подключайте только Arduino или NodeMCU v3. К PCI разъему подводится более мощное питание. Один из таких контроллеров показан на фото:

Пробуйте подключаться к разным USB разъёмам компьютера, если их несколько, или разным разъёмам USB хаба.
Если ваш компьютер имеет порты USB2.0 и USB3.0, то пробуйте подключаться к тем и другим. Скорее всего лучшие результаты получите при подключении к USB2.0. Драйвер USB3.0 может работать некорректно.
Windows иногда просто не может определить порт. Проверьте контакты блока питания USB хаба в розетке сети. Если блок питания болтается, то о надёжной работе USB портов не может быть и речи.

Подключайте плату Arduino или ESP8266 в USB разъём после полной загрузки Windows.
При переключениях в другие порты номер порта может измениться. Проверяйте номер порта. В верхнем меню Arduino IDE выберите Сервис (Tools) -> Последовательный порт (Serial Port). Рядом с портом COM1 должен быть дополнительный порт. Поставьте галку, чтобы активировать его.

Работу COM порта и загрузку скетча визуально можно проверить по миганию светодиодов RX и TX на плате Arduino или по частому миганию светодиода рядом с Wi-Fi антенной на плате ESP8266 (NodeMCU v3).

Несмотря на все ухищрения, Windows 10 не открывает COM порт для Node MCU v3 (ESP-12E). Иногда подключает порт и тут же сбрасывает его и так без конца.
Подключил Node MCU v3 (ESP8266) через USB хаб с внешним блоком питания к компьютеру с Windows XP SP3. Установил драйвер ch341ser.exe и Arduino IDE 1.6.5. COM порт определяется и работает. В Windows XP COM порты определяются более надёжно. Проверил это на двух компьютерах с Windows XP с Intel и AMD процессорами.
Однако некоторые скетчи уже не используют приложения Win32 и при компиляции выдаётся ошибка. В этом случае потребуется как минимум 64-разрядная Windows 7.
COM порты виртуальные и, как в любой программе, возможен сбой при определении порта.

Семипортовые USB хабы (разветвители), как пишут в интернете, имеют две микросхемы по 4 порта. Последний порт первой микросхемы используется для подключения второй микросхемы. В итоге получается 3+4 порта. Можно попробовать подключать Arduino или Node MCU в разные порты хаба.

В Windows откройте Диспетчер устройств, раскройте Порты (COM и LPT). Не закрывайте это окно. Начинайте пробовать разные кабели, разные порты и разные варианты подключения оборудования и, как только порт надёжно определится в Диспетчере устройств, запомните эту конфигурацию оборудования.

И последнее и, может быть, самое главное. Большинство бестрансформаторных блоков питания (зарядных устройств), выполненных в корпусе-вилке, не обеспечивают заявленных характеристик. Например, у зарядного устройства 5V 2.1А, показанного ниже, при токе 0,9 А напряжение на выходе падает до 3,8 В. Сомневаюсь в том, что такой блок питания вообще может отдать в нагрузку ток 2А.

При подозрениях на проблему с питанием используйте трансформаторный блок питания. По габаритам он будет намного больше, зато надежно обеспечит расчетные ток и напряжение.
Рекомендации по блоку питания (из книги «Неисправности вашего ZX SPECTRUM» С.-Петербург, 1991):
«Советуем Вам выбрать самую простую, но и самую надежную схему: трансформатор — диодный мост — конденсатор фильтра — микросхема КР142ЕН5А в стандартном включении — блокировочный конденсатор.
Не стремитесь к чрезмерной миниатюризации! Трансформатор должен иметь мощность не менее 15 Вт, провод вторичной обмотки диаметр не менее 0,7 мм и напряжение на вторичной обмотке под нагрузкой 7-8 Ом должно быть 9-10 В.
Диодный мост подойдет любой из серий КЦ402, КЦ405. Конденсатор фильтра должен быть не менее 4000 мкФ, а рабочее напряжение — не ниже 16 В. На выходе ЕН5А поставьте блокировочный конденсатор 100-200 мкФ на 10-16 В. После сборки БП проконтролируйте напряжение на входе ЕН5А при подключенной нагрузке 5 Ом — должно быть 10,5-11 В.
Если это не так — отмотайте или домотайте несколько витков вторичной обмотки трансформатора. Затем проконтролируйте под нагрузкой 5 Ом напряжение на выходном разъеме БП — должно быть 4,9 — 5,1 В. При низком напряжении придется взять более толстый провод для подсоединения разъема.
При окончательной проверке БП посмотрите на осциллографе переменную составляющую напряжения на пределе 10 мВ (под нагрузкой 5 Ом) — заметных отклонений от прямой линии не должно быть.
В случае неудачи емкость фильтрующего конденсатора нужно увеличить.
Наконец, позамыкайте выход БП накоротко и убедитесь, что ЕН5А не выходит из строя.»
Вместо диодного моста КЦ можно применть более компактный диодный мост DB157S.

Некоторые экземпляры ЕН5А имеют на выходе напряжение чуть меньше 5 В. Для регулировки выходного напряжения соберите блок питания по схеме:

Номиналы резисторов R1 и R2 вы можете рассчитать сами. Например, после мостика на конденсаторе фильтра под нагрузкой у вас получилось напряжение 15 В. Напряжение на стабилитроне составит 3-3,3 В. Значит на резисторе R1 должно упасть 15 — 3 = 12 В. Ток стабилитрона КС133А 10 мА, т. е. 0,01 А. По закону Ома R = V/I. R = 12/0.01= 1200 Ом = 1,2 кОм. Также можно попробовать стабилитрон КС119А (напряжение стабилизации 1,9 В). Резистор R2 можно взять сопротивлением раза в три больше, чем R1, чтобы не так сильно шунтировал стабилитрон. R2 будет 3 — 3,6 кОм. Мощность рассеивания тоже рассчитывается по закону Ома. Резистор 0,25 Вт будет с большим запасом по мощности рассеивания. Для регулировки напряжения удобно использовать подстроечный многооборотный резистор СП5-3 или аналогичный.
Аккуратнее с регулировкой напряжения, а то выведите из строя само устройство. Вначале для проверки блока питания подключите нагрузку — резистор 5 Ом 5 Вт. Ток нагрузки будет 1 А. Резистором R2 установите напряжение на выходе + 5,0 ÷ 5,25 В.

Для повышения напряжения на выходе есть более простой вариант — включить в разрыв между выводом ЕН5А и общим проводом диод Д9Б. Так сделано в блоке питания для компьютера Специалист — М (ж. «Моделист-конструктор» № 4, 1991 г.)

Если есть подозрения на глюки системы, то тогда можно попробовать переустановить систему Windows.

Если все описанные меры не дали надежного результата, то скорее всего ваш системный блок имеет слаботочные порты USB и маломощный блок питания. Тут может помочь замена материнской платы и блока питания на более мощные, т.е по сути нужен новый системный блок.

Резюме
Чтобы устранить ошибки последовательного порта —
► используйте для питания Arduino или ESP8266 USB порты с достаточным выходным током или USB хаб с внешним блоком питания.
► используйте для подключения короткие USB кабели с ферритовыми фильтрами около разъемов.
► попробуйте разные версии драйвера CH340, если не поможет — тогда другую версию Windows.
► используйте качественный кабель со всеми сигнальными жилами, а не кабель от зарядного устройства.

Последнее редактирование 23 сентября 2022 г.

Источник

Arduino com port keeps getting busy

I have got an Arduino Uno R3 on which I have an accelerometer that I’m playing a bit with. This setup has worked for quite a while now, everything working from uploading to checking the serial output.

Today I started having problems with the com port reporting busy or not connected at all. When I use the default IDE it cant find the arduino at all but when I use a modded IDE (Arduino ERW 1.0.5) seems to find the port to communicate on but it reports it being busy.

I have reinstalled the driver like 5 or 6 times now and searched for any other driver that might work but they wont change anything. I have also checked that my pc actually detects the arduino which it does, it is listed among the COM ports on Device Manager. I also tried changing the Com port from COM3 to COM4 and still it worked for like 3 uploads and then the COM port kinda «disappeared» from the serial port list on the IDE.

EDIT: Weirdly, after closing some programs that seem to have to do with serial communication it works. I have to look into what I close and when.

EDIT2: For now it seems that processing sometimes didnt close properly when not using the stop button on the processing application which then didnt close the connection to the arduino. I havent had any problems since I started to use the Stop button on processing.

Win 8.1 Latest driver and IDE(an modded IDE called Arduino ERW 1.0.5 seem to work a bit better but have the same issues)

One thing I noticed is that if I press the reset button when it starts again it wont send anything through serial, is it defaulting to the Blink program after a reset or what?

Источник

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 tried your Processing sketch, and it does detect and try to connect to the serial port, but fails for some reason.

Processing «code» can include a try catch block to help you diagnose the issue. Using this modified sketch, you can print the errors to the console window.

import processing.serial.*;

Serial ser_port;                // for serial port
PFont fnt;                      // for font
int num_ports;
boolean device_detected = false;
String[] port_list;
String detected_port = "";

void setup() {
  size(400, 200);                         // size of application window
  background(0);                          // black background
  fnt = createFont("Arial", 16, true);    // font displayed in window

  println(Serial.list());

  // get the number of detected serial ports
  num_ports = Serial.list().length;
  // save the current list of serial ports
  port_list = new String[num_ports];
  for (int i = 0; i < num_ports; i++) {
    port_list[i] = Serial.list()[i];
  }
}

void draw()
{
  background(0);
  // display instructions to user
  textFont(fnt, 14);
  text("1. Arduino or serial device must be unplugged.", 20, 30);
  text("   (unplug device and restart this application if not)", 20, 50);
  text("2. Plug the Arduino or serial device into a USB port.", 20, 80);

  // see if Arduino or serial device was plugged in
  if ((Serial.list().length > num_ports) && !device_detected) {
    device_detected = true;
    // determine which port the device was plugged into
    boolean str_match = false;
    if (num_ports == 0) {
      detected_port = Serial.list()[0];
    } else {
      // go through the current port list
      for (int i = 0; i < Serial.list().length; i++) {
        // go through the saved port list
        for (int j = 0; j < num_ports; j++) {
          if (Serial.list()[i].equals(port_list[j])) {
            break;
          }
          if (j == (num_ports - 1)) {
            str_match = true;
            detected_port = Serial.list()[i];
          }
        }
      }
    }
  }
  else{
    text("else", 20, 110);
  }
  // calculate and display serial port name
  if (device_detected) {
    text("Device detected:", 20, 110);
    textFont(fnt, 18);
    text(detected_port, 20, 150);
    try{
      ser_port = new Serial(this, detected_port, 9600);
    }
    catch(Exception e){
      // Print detailed error information to the console.
      System.err.println(e);
      e.printStackTrace();
    }
  }
  else{
    text("Device NOT detected:", 20, 140);
  }
}

These are the errors I get on my computer using a Arduino Uno.

    at processing.serial.Serial.<init>(Unknown Source)
    at processing.serial.Serial.<init>(Unknown Source)
    at sketch_211210a.draw(sketch_211210a.java:85)
    at processing.core.PApplet.handleDraw(PApplet.java:2475)
    at processing.awt.PSurfaceAWT$12.callDraw(PSurfaceAWT.java:1547)
    at processing.core.PSurfaceNone$AnimationThread.run(PSurfaceNone.java:313)
java.lang.RuntimeException: Error opening serial port /dev/tty.wchusbserial620: Port busy
java.lang.RuntimeException: Error opening serial port /dev/tty.wchusbserial620: Port busy

Another issue is with this part of the code: if (device_detected). The draw() function is like the Arduino loop() function in that it keeps looping through the code. It is repeatedly trying to make a new serial connection to the same port, which MAY explain why the Port busy error message is repeated in the console error messages.

Using Processing IDE 3.5.3, there is a errors tab at the bottom of the console window. I am getting 2 errors there which don’t seem to be involved with the port connection issue.

If you install the controlP5 library in the Processing IDE, you can use this port testing sketch to see the Port ID change every time you create a new connection with it. I suspect your sketch may connect to the Arduino the first time through the draw() function, then it keeps trying to connect to the same port which is busy.

// Serial port(s) connection tester. Processing version 3.5.3.
// For a list of all the ScrollableList Controller methods available,
// use: "ControlP5.printPublicMethodsFor(ScrollableList.class);"
// to print the entire list of the 165 functions to the console.
import controlP5.*;
import java.util.*;
import processing.serial.*;

ControlP5 cp5;
Serial myPort;
Textlabel outputWindowLine1, outputWindowLine2;
String portName;

void setup(){

  size(500, 431);

  // Use a font larger than the default "6px".
  ControlFont font = new ControlFont(createFont("Verdana", 14));

  // ALL CAPS is the default font for the control. Why?
  Label.setUpperCaseDefault(false);

  // Configure a controlP5 ScrollableList.
  cp5 = new ControlP5(this);
  cp5.addScrollableList("dropdown")
    .setPosition(0, 50)
    .setSize(500, 400)
    .setBarHeight(50)
    .setItemHeight(30)
    .setFont(font)
    .addItems(GetSerialPortList())
    .setType(ScrollableList.LIST)
    .setLabel("--- Click on a port name to try and connect to it ---")
    ;

  outputWindowLine1 = cp5.addTextlabel("outputWindowLine1Label")
    .setText("The list of port names is "scrollable".")
    .setPosition(0, 0)
    .setColorValue(0)
    .setFont(font)
    ;

  outputWindowLine2 = cp5.addTextlabel("outputWindowLine2Label")
    .setText("Press any character on the keyboard to reload the list.")
    .setPosition(0, 25)
    .setColorValue(0)
    .setFont(font)
    ;
}

void draw(){
  background(255);
}

// User selects a drop down item. Works like a JavaScript onChange()
// event, except you can click on the same item multiple times, this
// code will execute again on each mouse "click" of the same item.
void dropdown(int n){

  // Create a serial connection and send some
  // chars to the "USB to Serial Converter".
  try{

    // Get the port name.
    portName = Serial.list()[n];

    // If you don't do this, you can't re-connect to the same port again.
    // Re-connecting to the same port gives you a new "myPort ID" and may
    // take a few seconds.
    if(myPort != null){
      myPort.clear();
      myPort.stop();
    }

    // Create a Serial Port connection.
    myPort = new Serial(this, portName, 9600);

    // User message.
    outputWindowLine1.setText("Connected to portName: " + portName);
    outputWindowLine2.setText("myPort = " + myPort);

  }
  catch(Exception e){

    // User message.
    outputWindowLine1.setText("Error connecting to portName: " + portName);
    outputWindowLine2.setText("");

    // Print detailed error information to the console.
    System.err.println(e);
    e.printStackTrace();
  }
}

// Refresh the dropdown list of serial port names.
void keyPressed(){
  cp5.get(ScrollableList.class, "dropdown").setItems(GetSerialPortList());
  outputWindowLine1.setText("Serial port list refreshed!");
  outputWindowLine2.setText("");
}

// Get a List of the serial port names.
List GetSerialPortList(){
  List serialPortList = Arrays.asList(Serial.list());
  return serialPortList;
}

I tried your Processing sketch, and it does detect and try to connect to the serial port, but fails for some reason.

Processing «code» can include a try catch block to help you diagnose the issue. Using this modified sketch, you can print the errors to the console window.

import processing.serial.*;

Serial ser_port;                // for serial port
PFont fnt;                      // for font
int num_ports;
boolean device_detected = false;
String[] port_list;
String detected_port = "";

void setup() {
  size(400, 200);                         // size of application window
  background(0);                          // black background
  fnt = createFont("Arial", 16, true);    // font displayed in window

  println(Serial.list());

  // get the number of detected serial ports
  num_ports = Serial.list().length;
  // save the current list of serial ports
  port_list = new String[num_ports];
  for (int i = 0; i < num_ports; i++) {
    port_list[i] = Serial.list()[i];
  }
}

void draw()
{
  background(0);
  // display instructions to user
  textFont(fnt, 14);
  text("1. Arduino or serial device must be unplugged.", 20, 30);
  text("   (unplug device and restart this application if not)", 20, 50);
  text("2. Plug the Arduino or serial device into a USB port.", 20, 80);

  // see if Arduino or serial device was plugged in
  if ((Serial.list().length > num_ports) && !device_detected) {
    device_detected = true;
    // determine which port the device was plugged into
    boolean str_match = false;
    if (num_ports == 0) {
      detected_port = Serial.list()[0];
    } else {
      // go through the current port list
      for (int i = 0; i < Serial.list().length; i++) {
        // go through the saved port list
        for (int j = 0; j < num_ports; j++) {
          if (Serial.list()[i].equals(port_list[j])) {
            break;
          }
          if (j == (num_ports - 1)) {
            str_match = true;
            detected_port = Serial.list()[i];
          }
        }
      }
    }
  }
  else{
    text("else", 20, 110);
  }
  // calculate and display serial port name
  if (device_detected) {
    text("Device detected:", 20, 110);
    textFont(fnt, 18);
    text(detected_port, 20, 150);
    try{
      ser_port = new Serial(this, detected_port, 9600);
    }
    catch(Exception e){
      // Print detailed error information to the console.
      System.err.println(e);
      e.printStackTrace();
    }
  }
  else{
    text("Device NOT detected:", 20, 140);
  }
}

These are the errors I get on my computer using a Arduino Uno.

    at processing.serial.Serial.<init>(Unknown Source)
    at processing.serial.Serial.<init>(Unknown Source)
    at sketch_211210a.draw(sketch_211210a.java:85)
    at processing.core.PApplet.handleDraw(PApplet.java:2475)
    at processing.awt.PSurfaceAWT$12.callDraw(PSurfaceAWT.java:1547)
    at processing.core.PSurfaceNone$AnimationThread.run(PSurfaceNone.java:313)
java.lang.RuntimeException: Error opening serial port /dev/tty.wchusbserial620: Port busy
java.lang.RuntimeException: Error opening serial port /dev/tty.wchusbserial620: Port busy

Another issue is with this part of the code: if (device_detected). The draw() function is like the Arduino loop() function in that it keeps looping through the code. It is repeatedly trying to make a new serial connection to the same port, which MAY explain why the Port busy error message is repeated in the console error messages.

Using Processing IDE 3.5.3, there is a errors tab at the bottom of the console window. I am getting 2 errors there which don’t seem to be involved with the port connection issue.

If you install the controlP5 library in the Processing IDE, you can use this port testing sketch to see the Port ID change every time you create a new connection with it. I suspect your sketch may connect to the Arduino the first time through the draw() function, then it keeps trying to connect to the same port which is busy.

// Serial port(s) connection tester. Processing version 3.5.3.
// For a list of all the ScrollableList Controller methods available,
// use: "ControlP5.printPublicMethodsFor(ScrollableList.class);"
// to print the entire list of the 165 functions to the console.
import controlP5.*;
import java.util.*;
import processing.serial.*;

ControlP5 cp5;
Serial myPort;
Textlabel outputWindowLine1, outputWindowLine2;
String portName;

void setup(){

  size(500, 431);

  // Use a font larger than the default "6px".
  ControlFont font = new ControlFont(createFont("Verdana", 14));

  // ALL CAPS is the default font for the control. Why?
  Label.setUpperCaseDefault(false);

  // Configure a controlP5 ScrollableList.
  cp5 = new ControlP5(this);
  cp5.addScrollableList("dropdown")
    .setPosition(0, 50)
    .setSize(500, 400)
    .setBarHeight(50)
    .setItemHeight(30)
    .setFont(font)
    .addItems(GetSerialPortList())
    .setType(ScrollableList.LIST)
    .setLabel("--- Click on a port name to try and connect to it ---")
    ;

  outputWindowLine1 = cp5.addTextlabel("outputWindowLine1Label")
    .setText("The list of port names is "scrollable".")
    .setPosition(0, 0)
    .setColorValue(0)
    .setFont(font)
    ;

  outputWindowLine2 = cp5.addTextlabel("outputWindowLine2Label")
    .setText("Press any character on the keyboard to reload the list.")
    .setPosition(0, 25)
    .setColorValue(0)
    .setFont(font)
    ;
}

void draw(){
  background(255);
}

// User selects a drop down item. Works like a JavaScript onChange()
// event, except you can click on the same item multiple times, this
// code will execute again on each mouse "click" of the same item.
void dropdown(int n){

  // Create a serial connection and send some
  // chars to the "USB to Serial Converter".
  try{

    // Get the port name.
    portName = Serial.list()[n];

    // If you don't do this, you can't re-connect to the same port again.
    // Re-connecting to the same port gives you a new "myPort ID" and may
    // take a few seconds.
    if(myPort != null){
      myPort.clear();
      myPort.stop();
    }

    // Create a Serial Port connection.
    myPort = new Serial(this, portName, 9600);

    // User message.
    outputWindowLine1.setText("Connected to portName: " + portName);
    outputWindowLine2.setText("myPort = " + myPort);

  }
  catch(Exception e){

    // User message.
    outputWindowLine1.setText("Error connecting to portName: " + portName);
    outputWindowLine2.setText("");

    // Print detailed error information to the console.
    System.err.println(e);
    e.printStackTrace();
  }
}

// Refresh the dropdown list of serial port names.
void keyPressed(){
  cp5.get(ScrollableList.class, "dropdown").setItems(GetSerialPortList());
  outputWindowLine1.setText("Serial port list refreshed!");
  outputWindowLine2.setText("");
}

// Get a List of the serial port names.
List GetSerialPortList(){
  List serialPortList = Arrays.asList(Serial.list());
  return serialPortList;
}

Ошибка открытия КОМ-порта

Я
   1ctube

06.04.19 — 13:01

Здравствуйте. Подключаем ККМ к 1С, и при тесте устройства получаем ошибку: Тест успешно выполнен. Ошибка открытия КОМ порта.

Как его открыть? А возможно это из-за того, что в 1С указана скорость 115200, а в диспетчере устройств нахожу COM1 и на вкладку параметры порта  указано 9600 в графе бит в секунду?

   Garykom

1 — 06.04.19 — 13:08

>Как его открыть

Скорее всего никак, для вас.

«Наймите специалиста»©

   1ctube

2 — 06.04.19 — 13:12

(1) Хотелось бы самим получить опыт. Вы уже сталкивались с такой проблемой? Если да, то можете подсказать как устранить выше описанную ошибку?

   Garykom

3 — 06.04.19 — 13:20

Очень просто, но для этого надо обладать некоторыми знаниями, опытом и навыками.

Например тупой вопрос а драйвер от ККТ стоит? Через тест драйвера ККТ видится, подключается и работает?

Понимаете что описанных вами сведений (вы в курсе сколько разных версий/конф 1С существуют и разных ККТ драйверов и прочих мелочей) недостаточно чтобы решить траблу.

   Garykom

4 — 06.04.19 — 13:21

Тест драйвера не из 1С а нативный от производителя ККТ.

   Garykom

5 — 06.04.19 — 13:23

«Ошибка открытия КОМ порта» чаще всего означает что порт уже открыт другим приложением.

Далее сами подумайте что это значит.

   1ctube

6 — 06.04.19 — 14:01

(3) Драйвер от ККМ стоит, при подключении через утилиту я вижу что сама ККМ определилась(в сервисной утилите устройства). Подлкючаем к ПК через интерфейсный кабель по C0M — порту.

Конфигурация 1С БП 3.0

(5) Хм, тогда нужно думаю надо посмотреть какие приложения занимают этот порт

   hhhh

7 — 06.04.19 — 14:08

(6) наверно, забыли утилиту драйвера выключить. Вот она и занимает порт.

   1ctube

8 — 06.04.19 — 14:14

(7) Хм, возможно. Спасибо, посмотрим

   Kigo_Kigo

9 — 06.04.19 — 14:27

а вы точно тот ком порт указываете, на котором висит ККМ? сделайте поиск оборудования

можно сменить номер ком порта

  

Kigo_Kigo

10 — 06.04.19 — 14:28

Скорости заявленные в свойствах компорта и в тесте драйвера не связаны, ккм работает по скорости  в тесте драйвера ККМ

Закон Брукера: Даже маленькая практика стоит большой теории.

ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.

Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.

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

Сначала проверьте последовательные порты. Загрузите Windows, но не подключайте плату Arduino или ESP8266. На рабочем столе щелкните правой кнопкой мыши (ПКМ) по ярлыку Этот компьютер (Компьютер). В меню выберите Свойства. В окне Система щелкните по ссылке Диспетчер устройств. В окне Диспетчер устройств откройте Порты (COM и LPT). Должен присутствовать последовательный порт COM1.

Теперь воткните в USB порт кабель от Arduino или ESP8266. В диспетчере устройств должен появиться дополнительный COM порт. Я подключил NodeMCU v3 и появился дополнительный порт COM3.

Если порт определился, но никаких сообщений в монитор порта не выводится, то проверьте скорость порта. В настройках Arduino IDE выставьте скорость порта ту, которая прописана в скетче. В окне монитора порта нажмите кнопку Очистить вывод. После этого монитор порта должен заработать.

Если ничего не изменилось и присутствует только порт COM1, то значит у вас проблемы с последовательным портом.
В этом случае при запуске скетча в окне выдается сообщение «Порт недоступен», «Ошибка подключения последовательного порта», «Порт не найден» и т.п. После этого начинаются пляски с бубном — отключаются и снова подключаются кабели, перезагружается компьютер. Иногда это помогает, иногда — нет.
Вероятная причина ошибки порта — помехи при передаче данных по USB кабелю. Как это не банально, но чаще всего причина в некачественном кабеле. Не экономьте, купите качественный кабель. Вторая вероятная причина — слаботочный USB порт. Замените ненадёжный кабель и не используйте разбитые USB разъёмы.

По второй причине — недостаточно тока для питания Arduino или ESP8266. USB порт в материнской плате компьютера может быть запитан от источника с малым выходным током. Попробуйте самое простое — подключить Arduino к другому порту в надежде на то, он запитан от более мощного источника. Такое возможно, если USB портов несколько. Кардинальное решение — подключить Arduino или ESP8266 через USB хаб (USB — разветвитель) с внешним блоком питания с выходным током не менее 2 — 3 А.

Радиолюбители, умеющие паять, могут поступить проще — подпаять короткими проводами к разъему USB в параллель еще один разъем USB, в который завести от основного разъема два провода питания GND и +5В. Или купите такой кабель, если есть такая возможность. Такой прием используют фирмы, когда питания от одного разъема USB не хватает, например для питания жесткого диска, подключенного к порту USB (USB HDD). Таким образом устройство получит дополнительное питание от другого порта USB.

Ещё одно причина нехватки питания для портов USB — подключение к роутеру по Wi-Fi. Wi-Fi адаптер потребляет значительный ток и нагружает шину питания портов USB. В связи с этим отключите Wi-Fi адаптер и подключите компьютер к роутеру кабелем. Иногда это сразу может решить проблему.
Предпочтительно использовать компьютер с подключением клавиатуры и мыши к портам PS/2. Клавиатура и мышь с подключением по USB будут дополнительно нагружать шину +5В USB и питания для Arduino или Node MCU может не хватить. Отключите на время принтер, подключенный по USB, смартфон, подключенный по USB и другие устройства, подключенные к портам USB, без которых можно обойтись, так как они потребляют ток по шинам USB. Кроме того, они могут просто влиять на порты USB и вызывать сбои системы.
По возможности используйте десктоп с достаточно мощным блоком питания, который обеспечивает с запасом ток по шине +5В. Некоторые дешёвые материнские платы при подключении двух-трёх USB устройств уже начинают давать сбои.

Используйте короткий USB кабель, насколько это возможно. Это уменьшит помехи при передаче данных.
Не используйте USB удлинители, подключайте Arduino или ESP8266 непосредственно к USB портам компьютера на задней стенке системного блока. Не используйте USB разъёмы на передней панели системного блока или USB порты картридера. Они подключаются к материнской плате кабелями. Это увеличивает помехи при передаче данных.

Самый действенный способ снизить помехи это использовать USB кабель с ферритовыми фильтрами — цилиндрическими утолщениями из ферритовых колец на концах кабелей.

Фильтры бывают съемными, они надеваются на кабель и защелкиваются.

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

Если использовать кольца небольшого диаметра, то никакой фиксации не понадобится. Например, я использовал два кольца, снятые с неисправной материнской платы. Только придется разрезать кабель и затем спаять его снова или припаять новый USB разъем.

Бывают ситуации, когда Arduino работает нормально, а при подключении ESP8266 появляются ошибки и скетч не работает. Такое может быть из-за того, что Wi-Fi передатчик модуля потребляет довольно значительный ток и для нормальной работы просто не хватает тока. Подключите ESP8266 через USB хаб с внешним блоком питания с выходным током 2-2.5-3 А. Также используйте для подключения короткие кабели с ферритовыми фильтрами на концах.
Желательно использовать Micro-USB или Mini-USB кабель с двумя USB разъемами на конце. Отвод с USB разъемом служит для подачи дополнительного питания. Радиолюбители могут без труда подпаять дополнительный USB разъем сами.

Если USB порты на материнской плате слабы по токам питания, то можно попробовать дополнительно подключить в PCI разъем контроллер USB. Подключите к этому контроллеру USB-мышь и USB-клавиатуру. К USB портам на материнской плате подключайте только Arduino или NodeMCU v3. К PCI разъему подводится более мощное питание. Один из таких контроллеров показан на фото:

Пробуйте подключаться к разным USB разъёмам компьютера, если их несколько, или разным разъёмам USB хаба.
Если ваш компьютер имеет порты USB2.0 и USB3.0, то пробуйте подключаться к тем и другим. Скорее всего лучшие результаты получите при подключении к USB2.0. Драйвер USB3.0 может работать некорректно.
Windows иногда просто не может определить порт. Проверьте контакты блока питания USB хаба в розетке сети. Если блок питания болтается, то о надёжной работе USB портов не может быть и речи.

Подключайте плату Arduino или ESP8266 в USB разъём после полной загрузки Windows.
При переключениях в другие порты номер порта может измениться. Проверяйте номер порта. В верхнем меню Arduino IDE выберите Сервис (Tools) -> Последовательный порт (Serial Port). Рядом с портом COM1 должен быть дополнительный порт. Поставьте галку, чтобы активировать его.

Работу COM порта и загрузку скетча визуально можно проверить по миганию светодиодов RX и TX на плате Arduino или по частому миганию светодиода рядом с Wi-Fi антенной на плате ESP8266 (NodeMCU v3).

Несмотря на все ухищрения, Windows 10 не открывает COM порт для Node MCU v3 (ESP-12E). Иногда подключает порт и тут же сбрасывает его и так без конца.
Подключил Node MCU v3 (ESP8266) через USB хаб с внешним блоком питания к компьютеру с Windows XP SP3. Установил драйвер ch341ser.exe и Arduino IDE 1.6.5. COM порт определяется и работает. В Windows XP COM порты определяются более надёжно. Проверил это на двух компьютерах с Windows XP с Intel и AMD процессорами.
Однако некоторые скетчи уже не используют приложения Win32 и при компиляции выдаётся ошибка. В этом случае потребуется как минимум 64-разрядная Windows 7.
COM порты виртуальные и, как в любой программе, возможен сбой при определении порта.

Семипортовые USB хабы (разветвители), как пишут в интернете, имеют две микросхемы по 4 порта. Последний порт первой микросхемы используется для подключения второй микросхемы. В итоге получается 3+4 порта. Можно попробовать подключать Arduino или Node MCU в разные порты хаба.

В Windows откройте Диспетчер устройств, раскройте Порты (COM и LPT). Не закрывайте это окно. Начинайте пробовать разные кабели, разные порты и разные варианты подключения оборудования и, как только порт надёжно определится в Диспетчере устройств, запомните эту конфигурацию оборудования.

И последнее и, может быть, самое главное. Большинство бестрансформаторных блоков питания (зарядных устройств), выполненных в корпусе-вилке, не обеспечивают заявленных характеристик. Например, у зарядного устройства 5V 2.1А, показанного ниже, при токе 0,9 А напряжение на выходе падает до 3,8 В. Сомневаюсь в том, что такой блок питания вообще может отдать в нагрузку ток 2А.

При подозрениях на проблему с питанием используйте трансформаторный блок питания. По габаритам он будет намного больше, зато надежно обеспечит расчетные ток и напряжение.
Рекомендации по блоку питания (из книги «Неисправности вашего ZX SPECTRUM» С.-Петербург, 1991):
«Советуем Вам выбрать самую простую, но и самую надежную схему: трансформатор — диодный мост — конденсатор фильтра — микросхема КР142ЕН5А в стандартном включении — блокировочный конденсатор.
Не стремитесь к чрезмерной миниатюризации! Трансформатор должен иметь мощность не менее 15 Вт, провод вторичной обмотки диаметр не менее 0,7 мм и напряжение на вторичной обмотке под нагрузкой 7-8 Ом должно быть 9-10 В.
Диодный мост подойдет любой из серий КЦ402, КЦ405. Конденсатор фильтра должен быть не менее 4000 мкФ, а рабочее напряжение — не ниже 16 В. На выходе ЕН5А поставьте блокировочный конденсатор 100-200 мкФ на 10-16 В. После сборки БП проконтролируйте напряжение на входе ЕН5А при подключенной нагрузке 5 Ом — должно быть 10,5-11 В.
Если это не так — отмотайте или домотайте несколько витков вторичной обмотки трансформатора. Затем проконтролируйте под нагрузкой 5 Ом напряжение на выходном разъеме БП — должно быть 4,9 — 5,1 В. При низком напряжении придется взять более толстый провод для подсоединения разъема.
При окончательной проверке БП посмотрите на осциллографе переменную составляющую напряжения на пределе 10 мВ (под нагрузкой 5 Ом) — заметных отклонений от прямой линии не должно быть.
В случае неудачи емкость фильтрующего конденсатора нужно увеличить.
Наконец, позамыкайте выход БП накоротко и убедитесь, что ЕН5А не выходит из строя.»
Вместо диодного моста КЦ можно применть более компактный диодный мост DB157S.

Некоторые экземпляры ЕН5А имеют на выходе напряжение чуть меньше 5 В. Для регулировки выходного напряжения соберите блок питания по схеме:

Номиналы резисторов R1 и R2 вы можете рассчитать сами. Например, после мостика на конденсаторе фильтра под нагрузкой у вас получилось напряжение 15 В. Напряжение на стабилитроне составит 3-3,3 В. Значит на резисторе R1 должно упасть 15 — 3 = 12 В. Ток стабилитрона КС133А 10 мА, т. е. 0,01 А. По закону Ома R = V/I. R = 12/0.01= 1200 Ом = 1,2 кОм. Также можно попробовать стабилитрон КС119А (напряжение стабилизации 1,9 В). Резистор R2 можно взять сопротивлением раза в три больше, чем R1, чтобы не так сильно шунтировал стабилитрон. R2 будет 3 — 3,6 кОм. Мощность рассеивания тоже рассчитывается по закону Ома. Резистор 0,25 Вт будет с большим запасом по мощности рассеивания. Для регулировки напряжения удобно использовать подстроечный многооборотный резистор СП5-3 или аналогичный.
Аккуратнее с регулировкой напряжения, а то выведите из строя само устройство. Вначале для проверки блока питания подключите нагрузку — резистор 5 Ом 5 Вт. Ток нагрузки будет 1 А. Резистором R2 установите напряжение на выходе + 5,0 ÷ 5,25 В.

Для повышения напряжения на выходе есть более простой вариант — включить в разрыв между выводом ЕН5А и общим проводом диод Д9Б. Так сделано в блоке питания для компьютера Специалист — М (ж. «Моделист-конструктор» № 4, 1991 г.)

Если есть подозрения на глюки системы, то тогда можно попробовать переустановить систему Windows.

Если все описанные меры не дали надежного результата, то скорее всего ваш системный блок имеет слаботочные порты USB и маломощный блок питания. Тут может помочь замена материнской платы и блока питания на более мощные, т.е по сути нужен новый системный блок.

Резюме
Чтобы устранить ошибки последовательного порта —
► используйте для питания Arduino или ESP8266 USB порты с достаточным выходным током или USB хаб с внешним блоком питания.
► используйте для подключения короткие USB кабели с ферритовыми фильтрами около разъемов.
► попробуйте разные версии драйвера CH340, если не поможет — тогда другую версию Windows.
► используйте качественный кабель со всеми сигнальными жилами, а не кабель от зарядного устройства.

Последнее редактирование 23 сентября 2022 г.

Источник

Arduino.ru

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

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Во первых извените но на схеме допустил одну ошибку, нарисовал, что резистор подключается к Pin9, а на самом деле использовал Pin8.

Ну а во вторых: После того как моя плата (после неудавшейся заливки скетча) простояла подключенная к УСБ порту длительное время я заметил, что микросхема mege328 начала греться, не придется ли тогда менять этот контроллер и если да то как его перепрошить?

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Переткни шнур, не поможет — перезагрузись и пропробуй снова

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

И перетыкал шнур и перезагружался, даже просто выключал комп и немного погодя включал обратно все равно не хочет заливать программу в ардуино и выдает сообщение об ошибке какое я привел выше

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Значить, порт падох. Или СН340

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Что это CH340 и можно ли его заменить

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Вообще на своей плате Arduino UNO я не нашол микросхемы CH340, а к светодиодам TX и RX дорожки подводятся от mega16U2

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Вполне может быть.

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

И что тогда моей плате пришол конец, ее больше нельзя будет востановить

  • Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии

Приветствую всех форумчан!

У моей платы Arduino ONU что то случилось с преобразователем интерфейса USB и теперь на плату я не могу загрузить новый скетчь ардуино. Но вот в книге Джереми Блум «Изучаем ARDUINO» в описании устройства плат я прочитал, цитирую: «Если у вас есть программатор, то можно удалить загрузчик из своего контроллера ATmega и программировать его с помощью внешнего программатора.». Это что можно значит достать из платы микроконтроллер ATmega328 и в другой монтажной плате через разъем внутрисхемного программирования ISP прошить его программой созданной в Arduino_IDE, но только как это можно сделать и какую программу использовать для прошивки.

Источник

dua3

участник форума
Сообщения: 228
Зарегистрирован: 05 авг 2006, 14:04

(Ошибка при открытии COM порта принтера) Иногда при старте программы такая ошибка в мониторинге. Помогает перезагрузка. Отчего может возникнуть?


ОСМП АВТОМАТЫ

участник форума
Сообщения: 817
Зарегистрирован: 14 июл 2006, 14:15

Сообщение ОСМП АВТОМАТЫ » 29 янв 2007, 09:31

«dua3» писал(а):Иногда при старте программы такая ошибка в мониторинге. Помогает перезагрузка. Отчего может возникнуть?

Программа не нашла принтер, например потому что он был в состоянии ошибки.

А данную ошибку на все запросы возвращает драйвер «Empty Printer», т.е. пустая заглушка.

«Парламентарные выражения дворник богато перемежал нецензурными словами, которым отдавал предпочтение.» (с) Ильф и Петров

Smart77

Эксперт
Сообщения: 1322
Зарегистрирован: 22 сен 2006, 09:22

Сообщение Smart77 » 29 янв 2007, 10:15

У меня была такая же проблема, то принтер определялся через раз, то купюрник, покопался в лога и т.д. выяснил что проблема в мультикарте (контроллер ком портов) сменил и все стало ОК.

ООО «Терминал-партнер». Полное техническое обслуживание платежных терминалов в Удмуртии. Свой Call-цент. Свой сервер мониторинга для ПО 2.0.Х и 3,0,Х!!! Свой Фискальный Сервер под ПС Киберплат!!! Подключены все местные операторы и ЖКХ + подключим Ваших провайдеров с любым оборотом. 18 регион (только ПС Киберплат)

Гость

Сообщение Гость » 23 июл 2007, 18:47

После включения терминала маратл выдает такую ошибку, после перезагрузки иногда исчезает.

Принтер Star. До этого месяца 2 работал нормально. Что это может быть?

alex_sotaplat

участник форума
Сообщения: 557
Зарегистрирован: 01 апр 2007, 19:59

Сообщение alex_sotaplat » 23 июл 2007, 19:33

plastik писал(а):После включения терминала маратл выдает такую ошибку, после перезагрузки иногда исчезает.
Принтер Star. До этого месяца 2 работал нормально. Что это может быть?

СОМ-порт по другому обзови и не парься, а если у тебя он еще и как СОМ-1 определяется ,то 100% лечиться o:)

Гость

Сообщение Гость » 23 июл 2007, 19:40

alex_sotaplat писал(а):

plastik писал(а):После включения терминала маратл выдает такую ошибку, после перезагрузки иногда исчезает.
Принтер Star. До этого месяца 2 работал нормально. Что это может быть?

СОМ-порт по другому обзови и не парься, а если у тебя он еще и как СОМ-1 определяется ,то 100% лечиться o:)

Хм.. Интересно, а при обновлении могла исчезнуть строка -PrtWin ? Потому как он вроде как виндовс-принтер работает.

alex_sotaplat

участник форума
Сообщения: 557
Зарегистрирован: 01 апр 2007, 19:59

Сообщение alex_sotaplat » 23 июл 2007, 19:45

plastik писал(а):

alex_sotaplat писал(а):

plastik писал(а):После включения терминала маратл выдает такую ошибку, после перезагрузки иногда исчезает.
Принтер Star. До этого месяца 2 работал нормально. Что это может быть?

СОМ-порт по другому обзови и не парься, а если у тебя он еще и как СОМ-1 определяется ,то 100% лечиться o:)

Хм.. Интересно, а при обновлении могла исчезнуть строка -PrtWin ? Потому как он вроде как виндовс-принтер работает.

Честно говоря, с виндовыми принтерами сталкиваюсь редко, а вот ошибку открытия СОМ-порта модема вижу с завидной периодичностью, а слышу про нее от клиентов еще чаще #-o , у меня уже большая часть крупных клиентов научились СОМ-порты переименовывать .

dua3

участник форума
Сообщения: 228
Зарегистрирован: 05 авг 2006, 14:04

Сообщение dua3 » 23 июл 2007, 20:14

Случайно принтне СВМ 1000 или 2000? у меня и у моих диллеров такое частенько встречается. Проверяй наличичие и качество термоленты,а также датчики бумаги

Гость

Сообщение Гость » 24 июл 2007, 13:34

А переименовывать порты через панель управления в Виндах?

alex_sotaplat

участник форума
Сообщения: 557
Зарегистрирован: 01 апр 2007, 19:59

Сообщение alex_sotaplat » 24 июл 2007, 17:17

Valery_T писал(а):А переименовывать порты через панель управления в Виндах?

В диспетчере устройств переименовываются.

Гость

Сообщение Гость » 25 июл 2007, 02:01

Лечится гораздо проще если модем и принтер работают через PCI контроллер.

Заходим в девайс, и смотрим какие порты установлены, если есть 10,12,13,14 порты, то на диске С в папке drivers есть драйвер мультиконтроллера PCI там есть файл uninstall апускаем его, перезагружаемся, происходит автомотическая перенастройка портов контроллера при которой он правильно распределяет порты, т.е появляются COM4 для принтера и COM6 для модема.

Гость

Сообщение Гость » 25 июл 2007, 13:26

Kenny

Спасибо. Все перепробовал (в т.ч. удаление COM-портов) а вот эту операцию не проделывал.

Гость

Сообщение Гость » 06 авг 2007, 10:17

Точно такая проблема. Ошибка открытия COM-порта принтера и купюроприемника. Пробовал переименовывать порты, не помогло каждое утро терминал встает. Даже мультиконтроллеры PCI менял, тоже не помогло. Если не трудно, где ентот файлик uninstall лежит, последняя надежда на это. НА диске «Цэ» папку драйверс не нашел, можно полный путь, если не трудно….[-o&lt; [-o&lt; [-o&lt;

undi

участник форума
Сообщения: 175
Зарегистрирован: 09 авг 2007, 00:16

Сообщение undi » 09 авг 2007, 00:40

M-land писал(а):Точно такая проблема. Ошибка открытия COM-порта принтера и купюроприемника. Пробовал переименовывать порты, не помогло каждое утро терминал встает. Даже мультиконтроллеры PCI менял, тоже не помогло. Если не трудно, где ентот файлик uninstall лежит, последняя надежда на это. НА диске «Цэ» папку драйверс не нашел, можно полный путь, если не трудно….[-o&lt; [-o&lt; [-o&lt;

Ответ кажется бредовым, но может вылечиться обновленим драйвера мультикарты. Там еще какой-то мост добавляется, которого раньше небыло. Мало того, удалось вытащить из мусорки около 20 мультикарт, которые до этого толком не работали.

» ЦТО №1 «

Обслуживание и ремонт автоматов самообслуживания в Перми и Пермском крае. Продажа комплектующих.

Фискализация платежных терминалов.

(342)256-56-06

TimoGrozny

Эксперт
Сообщения: 714
Зарегистрирован: 10 мар 2007, 22:04

Сообщение TimoGrozny » 09 авг 2007, 02:26

Народ проясните поподробней, как это переименовывание ком портов? У меня такое случалос на ситизеназ, но там понятно из за бумаги, привык. А вот на будещее для себя, проясните)

Think different (c) Steve Jobs

Гость

Сообщение Гость » 09 авг 2007, 07:57

А этот косяк на половине машин бывает. Лучше подсоединять устройство через специальную платку. Это всё виндовые заморочки… Я, когда программировал принтер, тоже немного повозился с этим. Потом поставил плату расширения, подключил принтер, и всё нормально стало. Так что лучше плату купить, которая стоит рублей 300-400.

SanyJukov

участник форума
Сообщения: 121
Зарегистрирован: 24 май 2007, 18:44

Сообщение SanyJukov » 28 авг 2007, 09:52

У нас постоянно то на одном то на другом терминале возникает ошибка

открытия ком порта принтера.

Приезжаеш, смотриш в половине случаев зажевана бумага, но в половине

случаев все нормально. Перезагружаю терминал и все работает.

В чем может быть причина и как ее лечить?

Принтера Citizen 2000.

LSD

Эксперт
Сообщения: 1338
Зарегистрирован: 05 фев 2007, 14:20

Сообщение LSD » 28 авг 2007, 10:20

У нас тоже самое везде, где стоят 2000-ки. Глючная модель. Попробуй перевесь с com на USB, поставь бесперебойник. Будут повторяться глюки — к поставщикам:-)

SanyJukov

участник форума
Сообщения: 121
Зарегистрирован: 24 май 2007, 18:44

Сообщение SanyJukov » 28 авг 2007, 11:09

LSD писал(а):У нас тоже самое везде, где стоят 2000-ки. Глючная модель. Попробуй перевесь с com на USB, поставь бесперебойник. Будут повторяться глюки — к поставщикам:-)

Если через USB то маратл их не будет видеть, а они будут как win принтер?

LeeHo

участник форума
Сообщения: 133
Зарегистрирован: 27 авг 2007, 15:35

Сообщение LeeHo » 28 авг 2007, 11:57

Кстати у этого принтера есть виртуальный COM через USB. Если поставить в винду Virtual Com Driver для этого принтера и поменять в принтере MSW5-3 на OFF, то в винде (во всяком случае у меня) он садится на COM8. Правда не пробовал как маратл будет с ним по COM8 напрямую общаться, если вообще будет.


Вернуться в «Принтеры»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость

Темы дня

Материалы для скачивания:

Установка emulyator-com-porta-dlya-podklyucheniya-viki-print-cherez-usb-windows

1. Запустите установщик emulyator-com-porta-dlya-podklyucheniya-viki-print-cherez-usb-windows и следуйте инструкциям установщика.

Fito ошибка открытия com порта

2. Зайдите в папку с эмулятором (C:Program FilesSTMicroelectronicsSoftwareVirtual comport driverWin8) и запустите установщик, в соответствии Вашей операционной системе. Следуйте инструкциям установщика.

Fito ошибка открытия com порта

Установка службы транспорта ComProxy

Так как онлайн-касса Вики Принт не имеет собственного сетевого интерфейса, для передачи данных оператору фискальных данных Вики Принт использует каналы связи кассового ПК. Механизм передачи данных реализован при помощи стандартной службы операционной системы разработки компании Дримкас под названием ComProxy.

Дистрибутив поставляется в виде zip-архива. Для установки службы выполните по шагам:

  • Скопировать папку с дистрибутивом (ComProxyWindows) в папку C:Distrib
  • Выполнить в командной строке команду:

C:DistribComProxyWindowsinstall.cmd C:ComProxyWindows COMX COMY COMZ

COMX — порт к которому физически подключен ФР (посмотреть можно в диспетчере устройств, проверить доступность устройства на этом порту с помощью утилиты Fito)

COMY — виртуальный порт com0com (можно установить любое значение, предварительно убедившись, что этот порт не занят другим устройством)

COMZ — порт с которым будет работать кассовая программа и утилита Fito после установки службы (можно установить любое значение, предварительно убедившись, что этот порт не занят другим устройством)

В нашем примере Вики Принт подключен к порту COM7; порты COM8 и COM9 не заняты другими устройствами, можем использовать их для службы ComProxy:

Fito ошибка открытия com порта

Поэтому команда будет выглядеть следующим образом:

Fito ошибка открытия com порта

  • Служба будет установлена в C:ComProxyWindows
  • При необходимости после установки можно изменить порты в файле C:ComProxyWindowsComProxy.ini где:
  • physical_port — порт к которому физически подключен ФР
  • virtual_port — виртуальный порт com0com
  • pos_port — порт с которым будет работать кассовая программа

Пояснения: Служба ComProxy для передачи данных от регистратора в ОФД создает дополнительные виртуальные Com-порты. Когда служба ComProxy работает, общение кассовых программ и сервисных утилит с регистратором осуществляется через виртуальные Com-порты, созданные службой транспорта ComProxy.

После установки службы ComProxy проверьте, что служба транспорта появилась в списке служб операционной системы и выполняется.

Fito ошибка открытия com порта

Работа с Сервисной утилитой Fito

Запустите утилиту Fito, перейдите в меню “Функции”-“Параметры связи”. Проверьте корректность установки следующих параметров:

  • Порт — COM-порт, который был назначен как COMZ при установке службы ComProxy (в нашем примере COM9)
  • Скорость — 57600 (установлено по умолчанию, не изменяем)
  • Использовать линию CTS — пункт не активирован (установлено по умолчанию, не изменяем)
  • Пароль на связь — PIRI (установлено по умолчанию, не изменяем)

Fito ошибка открытия com порта

Для применения изменений нажмите кнопку «Установить».

Чтобы убедиться в корректности установленных параметров, нажмите кнопку «Статус»:

Fito ошибка открытия com порта

Если все параметры установлены корректно — появится окно статуса без дополнительных сообщений об ошибках:

Fito ошибка открытия com порта

Если появляются сообщения об ошибках — перезагрузите устройство, проверьте соединение COM/USB кабеля от устройства к компьютеру, убедитесь что служба ComProxy запущена, повторно проверьте корректность указания параметров.

После успешного запроса статуса устройства можно переходить к установке параметров. Перейдите на вкладку Установка параметров и действуйте согласно шагам, описанным ниже.

1. Программирование настроек сети

Этот пункт можно пропустить, если ККТ регистрируется в автономном режиме, без подключения к Оператору Фискальных Данных.

Данные подключения (IP-адрес, маска подсети, IP-адрес шлюза, IP-адрес DNS) необходимо брать из текущего состояния подключения к сети Интернет системного блока, с помощью которого мы работаем с ККТ.

URL ОФД-сервера — URL или IP-адрес сервера ОФД (можно уточнить у Оператора Фискальных Данных, с которым заключен договор)

Порт ОФД-сервера — порт сервера ОФД (можно уточнить у Оператора Фискальных Данных, с которым заключен договор)

Название ОФД-сервера — наименование ОФД в свободной форме, можно продублировать URL сервера

Таймер ФН — 30 (установлено по умолчанию, не меняем без необходимости)

Таймер С — 60 (установлено по умолчанию, не меняем без необходимости)

Fito ошибка открытия com порта

После ввода всех параметров нажимаем «Установить» и переходим к следующему пункту.

2. Регистрация кассы (Если касса уже зарегистрирована, данный пункт пропускаем)

После ввода настроек переходим на вкладку Сервис — Регистрация/снятие с учета — Регистрация/перерегистрация с заменой ФН

  • Наименование пользователя — наименование организации
  • Адрес расчетов — адрес организации первой строкой и почтовый индекс второй строкой
  • ИНН владельца — ИНН организации-владельца кассы
  • Регистрационный номер — ввести значение регистрационного номера ККТ, полученное из ФНС в Кабинете контрольно-кассовой техники. Номер должен содержать 16 знаков без пробелов
  • ИНН ОФД — необходимо указать ИНН Оператора Фискальных данных, с которым у владельца ККТ заключен договор на обслуживание (ровно 10 цифр без дополнительных пробелов или нулей). Не заполнять в случае регистрации в автономном режиме
  • Кассир — ввести фамилию и инициалы регистрирующего (эти ФИО будут указаны в чеке регистрации. В дальнейшем на чеках продажи будет выводится тот кассир, которого на Вики Принт будет отправлять кассовое ПО. ФИО, которые вы введете в этом поле, нигде, кроме чека регистрации, не будут фиксироваться)
  • Система налогообложения — выбрать систему налогообложения организации-владельца кассы
  • Режим работы — при необходимости выбрать режим работы фискального накопителя:
  • шифрование – подразумевает кодирование всех данных ФН. При возникновении ошибок, понять причину их возникновения будет не возможно. Не устанавливать без необходимости.
  • автономный режим – при использовании ККТ в режиме, не предусматривающем обязательной передачи фискальных документов в налоговые органы в электронной форме через оператора фискальных данных (в заявлении, поданном в ФНС должен так же быть выбран режим режим, не предусматривающий передачи фискальных данных)
  • автоматический режим – на данный момент не может использоваться в Вики Принт. Применяется для аппаратов, не предусматривающих участие кассира в режиме продажи (паркоматы, вендинговые аппараты)
  • применение в сфере услуг – для организаций, предоставляющих услуги
  • режим БСО (бланков строгой отчетности) – на данный момент не может использоваться в Вики Принт. Применяется для организаций, предоставляющих услуги населению
  • применение в Интернет – режим работы для ККТ, осуществляющих продажи удаленным способом через Интернет (могут работать без печати бумажного чека)

Еще раз тщательно проверить корректность данных Регистрационного номера и ИНН. Если данные после регистрации окажутся не верными, ФН подлежит замене и ККТ необходимо будет перерегистрировать.

Fito ошибка открытия com порта

После повторной проверки всех введенных данных нажать кнопку” Выполнить”.

Fito выдаст окно, в котором необходимо подтвердить завершение регистрации кассы:

Fito ошибка открытия com порта
После повторной проверки корректности введенных данных и нажатия кнопки «Да» касса распечатает два отчёта о регистрации:

Fito ошибка открытия com порта

Для завершения регистрации передайте ФНС отчет о регистрации. Если регистрация проводится через личный кабинет на сайте ФНС, то для завершения регистрации на нем следует заполнить форму завершения регистрации и указать данные с чека регистрации: точную дату и время, номер фискального документа (ФД №) и фискальный признак документа (ФПД или ФД).

3. Теперь устанавливаем приложение Subtotal, следуя инструкциям установщика:

Fito ошибка открытия com порта

Fito ошибка открытия com порта

Fito ошибка открытия com порта

Fito ошибка открытия com порта

Fito ошибка открытия com порта

Fito ошибка открытия com порта

4. После запуска приложения Subtotal, открываем «Настройки» и выбираем раздел «ККМ»:

Fito ошибка открытия com порта

Fito ошибка открытия com порта

5. Выбираем «подключить фискальный регистратор» и вводим главный логин и пароль от Subtotal, выбираем магазин и точку продаж:

Fito ошибка открытия com порта

Fito ошибка открытия com порта

Fito ошибка открытия com порта

6. В заключительной настройке, указываете драйвер Viki Print, коды оплат «0» и «1». Далее нажимаете на синюю шестеренку и указываете номер COM-порта также, как и в утилите Fito 2.1.2:

Fito ошибка открытия com порта

13. Нажимаете «Finish» и «ok», приложение перезагрузится – на этом настройка завершена.

Для подготовки оборудования Viki Print к работе нужно выполнить несколько шагов.

  1. Скачайте драйвер.
  2. Запустите установщик драйвера от имени администратора.

Fito ошибка открытия com порта

Fito ошибка открытия com порта

Fito ошибка открытия com порта

Fito ошибка открытия com порта

Служба ComProxy требуется для отправки данных в ОФД.

  1. Скачайте и запустите «Менеджер обновлений».
  2. Убедитесь, что выполнили все рекомендации на стартовой странице, затем нажмите «Найти устройство».

Fito ошибка открытия com порта

Fito ошибка открытия com портаСлужба ComProxy нужна для отправки чеков в ОФД, а так же для связи нашего кассового ПО с Вики Принт или фискальной платой, которые фискализируют чеки.

Fito ошибка открытия com портаАктуальную версию службы ComProxy вы можете установить, запустив Менеджер обновления. Установится версия работающая как по USB, так и по COM соединению.
В этой статье описана установка предыдущих версий службы.

Оглавление:

Немного о службе ComProxy

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

Fito ошибка открытия com портаКогда служба ComProxy работает, общение кассовых программ и сервисных утилит с регистратором осуществляется через виртуальные COM-порты, созданные службой.

Содержание

  • Установка службы ComProxy
    • Статьи в этом разделе
    • Похожие статьи
    • Комментарии
    • Рекомендуем к прочтению

Установка службы ComProxy

Шаг 1. Скачайте и распакуйте файлы установки

Распакуйте содержимое архива в каталог C:DistribComProxyWindows

Fito ошибка открытия com портаПри установке службы на Windows XP может возникнуть ошибка. Рекомендуется заменить наименование папки на более короткое: Com или ComPW

Шаг 2. Запустите установку

Fito ошибка открытия com портаПеред переустановкой службы необходимо удалить предыдущую, инструкция по удалению тут: ссылка. Ознакомьтесь с ней!

Перед установкой отключите цифровую подпись устройств в windows (как это сделать?).
Запустите командную строку от имени администратора и выполните команды:

cd c:DistribComProxyWindows (enter)
install.cmd C:ComProxyWindows COMX COMY COMZ (enter)

Fito ошибка открытия com портаCOM пишите большими буквами!
Иначе служба не установится корректно.

Вместо X, Y, Z укажите номера портов. Как их определить?

  • COMX — физический порт. Его можно посмотреть в Диспетчере устройств (как открыть?). Например, у меня это COM7
    Fito ошибка открытия com порта
  • COMY и COMZ— виртуальные порты com0com
    Можно установить любое значение, предварительно убедившись, что этот порт не занят.

В нашем примере Вики Принт подключен к порту COM7; порты COM8 и COM9 не заняты другими устройствами, можем использовать их для службы ComProxy. Поэтому команда будет выглядеть следующим образом:

Fito ошибка открытия com порта

Проверяем:
После завершения установки службы в командной строке должны появиться следующие строки:

Fito ошибка открытия com порта

В списке служб есть соответствующая служба:

Fito ошибка открытия com порта

А утилита Fito не выдает ошибок при подключении, если поставить COMZ в параметры связи:

Fito ошибка открытия com порта

Fito ошибка открытия com порта

Статьи в этом разделе

Похожие статьи

Комментарии

Fito ошибка открытия com порта

Подскажите, установить 2 службы ComProxy на 2 Википринта на 1 кассе?

Менеджер обновлений затирает первую службу.

Fito ошибка открытия com порта

Никита, вы хотите сказать, что у меня старые компы? Да может быть, вме параметры я описывать не буду, но один из них именно как вы выразились современный на виндовс 10, но и там проблема тоже есть. Возможно, проблема возникает именно после обновления через ваш менеджер обновлений, с ком прок. 1.2 на 1.3 и с 664 на 665. И не нужно мне рассказывать, что я чего-то не догоняю, я далеко не ламер.
Ксения, я уже отвечал, что ради вас я не буду сносить 13 версию и ставить 11, если по вашей ссылки темвью, откроется без установки, то я отпишусь по доступу, но если он захочет ставить её, то я этого не буду делать.
И вообще мне интересно, перед тем как выпускать свой продукт, аы его сами тестируете? Как вообще с таким шквалом недовольных людей эту кассу могли внести в реестр? Вам самим не противно, когда люди на вас жалуются?
А поддержку, я считаю что вы должны оказывать в любом случае, даже с новыми версиями программ, ведь и вы можете обновиться, а не только клиент должен под вас прогибаться.

Fito ошибка открытия com порта

У кого-нибудь были проблемы блокировки брэндмауэром запросы/ответы к ОФД?

У нас во всю стоит межсетевой экран, может кто-нибудь сталкивался с проблемами, которые могут на этом фоне возникнуть?

Какой процесс инициирует общение в сеть, по какому порту?

Fito ошибка открытия com порта

Tonik, Если у вас всё закрыто, то конечно будут проблемы. Процесс инициирующий соединение ComProxySvr (либо Javaw.exe), а обращается она собственно на указанный в настройках кассы сервер и порт ОФД, обычно (но не всегда) порт ОФД: 7777

PS: Если вы сами не знаете какие у вас настройки доступа к ОФД серверу, откройте программу Fito, подключитесь к порту кассы (какой указан в учетной программе!) и посмотрите настройки ОФД на закладке «Установка параметров» пункт «Программирование настроек сети» и там нужно нажать кнопку «Считать данные»

Fito ошибка открытия com порта

Александр, по протоколу tcp/ip ведь?

Fito ошибка открытия com порта

Итак, продолжаю блог, надеюсь что людям это будет полезно. Сегодня 26.07.18 к моему компьютеру удалённо подключился «специалист» из тех.поддержке Дримкас. Делал долго диагностику и в итоге, выявил что ОС не видит кассу после её отключения, т.е. виндовс 7, автоматом не возобновляет связь. Как мне писал выше ещё один их специалист, то на виндовс 10, таких проблем нет. Это правда, на виндовс 10 проблем нет! Но у меня 2а компа на вин 7 и 1н на вин 10. По их рекомендации я пробовал подключать кассу на вин 10, и проблем нет, т.е. при потери связи с кассой, после его восстановления, касса опять обнаруживается. Но подключив её опять на вин7, при потери связи и возобновлении касса не видится. Мне из тех.поддер. Дримкас рекомендавали переустановить виндовс, но я сделал др., установил на другое устройство с вин7, и проблема опять появилась.
Я это всё пишу к тому, что Дримкас, делает плохие устройства, которые работают только на том чём они тестируют.
Выводы такие, на сайте Дримкас заявлено что касса ВикиПринт 57ф работает под windows xp, 7,8,10. ЭТО НЕ ПРАВДА, только под win10. Учитывайте это при выборе.
P.S. мне в тех.под. дримкаса, дали номера их сервисных центров, но ни один из них не хотел, решать, а точнее менять плату fm16 по гарантии бесплатно, хотя кассу я купил 3 мес назад. Выходит что их авторизованные центры, для того чтобы просто косить бабло, а реально гарантийные обязательсва никто не выполняет.
В общем думайте.

Fito ошибка открытия com порта

Проблема аналогичная, как у Михаила. Вики Принт 57Ф с прошивкой 664 отработал 13 мес без единого глюка. Перед заменой ФН заменил прошивку и comproxy менеджером обновлений и понеслось: ФР постоит в бездействии какое-то время и служба перестает работать, помогает только перезагрузка и то не всегда. Иногда после перезагрузки приходится заново запускать менеджер обновлений, чтобы переустановить службу. В итоге сегодня менеджер обновлений вообще не смог установить службу (в конце пишет «служба не работает, обратитесь в техподдержку»). Ручное удаление службы не помогает. Попробовал скачать с сайта Кристал сервиса службу для подкл. по com порту. Вроде бы заработала, но через пару часов также остановилась. Windows 7 32 bit. Подскажите, что делать?

Driver updates are a vital fix which can help with this issue

by Milan Stanojevic

Milan has been enthusiastic about technology ever since his childhood days, and this led him to take interest in all PC-related technologies. He’s a PC enthusiast and he… read more


Updated on September 14, 2022

Reviewed by
Vlad Turiceanu

Vlad Turiceanu

Passionate about technology, Windows, and everything that has a power button, he spent most of his time developing new skills and learning more about the tech world. Coming… read more

  • Serial ports are the interface between a PC and devices that don’t support a Bluetooth connection.
  • Driver errors or physical damage can cause your serial ports to become unresponsive.
  • In most cases, reinstallation or updates of your drivers should resolve this problem. 

XINSTALL BY CLICKING THE DOWNLOAD FILE

To fix various PC problems, we recommend Restoro PC Repair Tool:
This software will repair common computer errors, protect you from file loss, malware, hardware failure and optimize your PC for maximum performance. Fix PC issues and remove viruses now in 3 easy steps:

  1. Download Restoro PC Repair Tool that comes with Patented Technologies (patent available here).
  2. Click Start Scan to find Windows issues that could be causing PC problems.
  3. Click Repair All to fix issues affecting your computer’s security and performance
  • Restoro has been downloaded by 0 readers this month.

If you are unable to open a serial port, you are in good company, and in this guide, we will be telling you all you should know.

A serial port can be helpful, but some users reported being unable to open serial port error messages on their PCs. This can be a big problem, and in today’s article, we’ll show you how to fix this error.

By the end of this article, you should have successfully fixed all problems with your serial port. Some of the solutions may be relevant to COM ports on Windows.

Why is serial port not working?

Here are the top reasons you should have in mind:

  • Incorrect communication settings – For the devices to work together correctly, they must be configured with the same communication settings.
  • Wrong serial cable – If you use the incorrect serial cable, you will be unable to connect.
  • Software conflicts – A software driver might make a serial port unusable. This driver can stop working if it is improperly installed or incompatible with a serial port.
  • Faulty wiring – This may cause issues when a control system is connected to a device.

Some variations of serial port problems that users have faced include:

  • Unable to open serial port access is denied – In most cases, Access Denied occurs when another program is utilizing the port.
  • Failed to open serial port Betaflight – Though it’s not a true USB interface, the flight controller communicates with your computer through a USB connection.
  • COM port not detected Windows 10 – Your PC will display the warning unable to open serial port if the COM port isn’t recognized.
  • Unable to open connection to com1 – This problem may sometimes arise if you don’t have the proper drivers.
  • Unable to open a connection to com1 Windows 10, com3 – This issue can sometimes appear if you don’t have the necessary drivers. To fix it, be sure to update the serial port driver and check if that solves your problem.
  • Putty unable to open serial port Windows 10 – Sometimes, this issue can occur due to certain Windows services. This isn’t a major problem, and you can fix it by disabling those services.
  • Unable to open serial port com1 access is denied – This issue can appear due to glitches with a serial port. Temporarily disable the serial port and check if that helps.
  • Unable to open com port win error code 5, 123, 3 – These are some common problems that can appear with a serial port, but you should be able to fix most of them with one of our above tips.

Now, let us show you how to resolve this error on your Windows PC.

How do I fix unable to open serial port?

1. Make sure that you have the necessary drivers

  1. Right-click the Start menu and select Device Manager.
    unable to open serial port
  2. Expand the Universal Serial Bus controller category.
  3. Right-click on your driver and choose Update driver.
  4. Lastly, click on Search automatically for drivers.

If you’re getting the Unable to open serial port message, perhaps the problem is related to your drivers. To fix this issue, we recommend updating your serial port driver.

To do that, you can visit your motherboard manufacturer’s website and download the latest drivers. Of course, you can always use a third-party tool if you find this process tedious or complex.

DriverFix will provide a detailed report of all of your current and obsolete device drivers. In addition, it updates the most recent device drivers from the complete database regularly.

DriverFix is the best choice when updating all your drivers automatically, with just a couple of clicks.

It will keep your computer safe from downloading and installing the wrong driver version, which can cause severe malfunctions and ease the process.

DriverFix

Keep all drivers up to date to avoid incompatibility issues.

2. Verify that the port isn’t open/disconnect the cable

Sometimes the Unable to open serial port message can appear if the port is already open. To fix this problem, users are suggesting disconnecting the cable from the other device and trying to connect again.

try to disconnect the cable

This is a simple workaround, but several users reported it worked for them, so feel free to try it out.

3. Stop the Windows Fax and Scan service

  1. Press Windows Key + R keyboard shortcut to open the Run dialog.
  2. Enter services.msc and press Enter or click OK.
    services run window can't open serial port
  3. When the Services window opens, locate Windows Fax and Scan service and double-click it to open its properties (If this service isn’t available, try changing the settings of the Fax service).
  4. Set the Startup type to Manual and click the Stop button to stop the service. Now click Apply and OK to save changes.
    manual startup type serial port not working

Several users reported that when they were unable to open a serial port while trying to use the serial port, it turned out that the problem was the Windows Fax and Scan service.

To fix this problem, you need to stop Windows Fax and Scan service. After doing that, check if the problem is still there.

Remember that this is just a workaround, so you might have to repeat it whenever you want to use a serial port on your PC.

4. Disable the serial port in Device Manager

  1. Press Windows Key + X and choose Device Manager from the list.
    serial port device manager
  2. When Device Manager opens, locate the serial port, right-click it, and choose Disable device from the menu.
  3. When the confirmation dialog appears, click Yes.
  4. Wait for a couple of moments, and then enable the serial port.

Some PC issues are hard to tackle, especially when it comes to corrupted repositories or missing Windows files. If you are having troubles fixing an error, your system may be partially broken.
We recommend installing Restoro, a tool that will scan your machine and identify what the fault is.
Click here to download and start repairing.

If you keep getting an unable to open serial port message on your PC, the issue might be related to the serial port driver.

A temporary glitch usually causes this, and to fix the problem; we recommend disabling the serial port temporarily.

After doing that, check if the problem is resolved. If this solution works for you, remember that you’ll have to repeat it every time you want to use your serial port.

5. Try using a different cable

Sometimes, an unable to open serial port error can appear if your USB cable isn’t working. Be sure to check if your cable is connected correctly. In addition, check for any visible damage.

try a different cable

If your cable seems in order, try replacing it and check if the problem appears with a different cable.

6. Restart the device

If an Unable to open serial port keeps appearing, perhaps you can fix the problem by restarting your devices.

Restart the device you’re trying to connect to and check if that solves the problem. Alternatively, you can restart your PC and see if that solves the issue.

7. Reinstall the serial port driver

  1. Open Device Manager.
  2. Locate your serial port, right-click it, and choose Uninstall device.
    uninstall device serial port can't open
  3. Now click Uninstall to confirm.
    confirm device uninstall serial port not working
  4. Once the device is uninstalled, restart your PC.

As we already mentioned, sometimes issues with your serial port can be caused by your drivers.

If you keep getting Unable to open serial port message, you might be able to fix the problem simply by reinstalling the serial port driver.

After your computer restarts, Windows should install the default driver, and the problem will be completely resolved.

8. Make sure that the system is up to date

  1. Open the Settings app and go to the Update & Security section.
  2. Now click the Check for updates button in the right pane.
    update windows open serial port
  3. If any updates are available, they will be downloaded automatically in the background and installed as soon as you restart your PC.

Sometimes, an unable to open serial port message can appear if your system isn’t out of date.

An outdated system can lead to various compatibility issues, and the best way to avoid these issues is to update your system.

This process is relatively straightforward in Windows 10, and for the most part, Windows installs the updates on its own. Once your system is updated, check if the problem is still there.

Read more about this topic

  • Werfault.exe Error on Windows 10: How to Fix & Main Causes
  • Fix: Windows Cannot Access the Specified Device, Path or File
  • Driver PNP Watchdog: 9 Easy Fixes For Windows
  • Esent Error [Event ID 455] On Windows: Quick Fix
  • How to Check Listening Ports With Netstat

How to enable COM port in Windows 10?

  1. Click the Windows key, enter regedit and select the Registry Editor app.
  2. Navigate to the part below:
    ComputerHKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesUSBSTOR
  3. On the right pane, double-click on Start.
    unable to open serial port
  4. Change the Value data to 4 and click OK.
    unable to open serial port

Getting the Unable to open serial port message can be a problem for many users that use the serial port frequently, but you should be able to fix this problem using one of our solutions.

Remember that we have not made these solutions in any particular order, so you should try what seems most appropriate for your situation.

Let us know which one worked for you in the comments area below.

Still having issues? Fix them with this tool:

SPONSORED

If the advices above haven’t solved your issue, your PC may experience deeper Windows problems. We recommend downloading this PC Repair tool (rated Great on TrustPilot.com) to easily address them. After installation, simply click the Start Scan button and then press on Repair All.

newsletter icon

Newsletter

Driver updates are a vital fix which can help with this issue

by Milan Stanojevic

Milan has been enthusiastic about technology ever since his childhood days, and this led him to take interest in all PC-related technologies. He’s a PC enthusiast and he… read more


Updated on September 14, 2022

Reviewed by
Vlad Turiceanu

Vlad Turiceanu

Passionate about technology, Windows, and everything that has a power button, he spent most of his time developing new skills and learning more about the tech world. Coming… read more

  • Serial ports are the interface between a PC and devices that don’t support a Bluetooth connection.
  • Driver errors or physical damage can cause your serial ports to become unresponsive.
  • In most cases, reinstallation or updates of your drivers should resolve this problem. 

XINSTALL BY CLICKING THE DOWNLOAD FILE

To fix various PC problems, we recommend Restoro PC Repair Tool:
This software will repair common computer errors, protect you from file loss, malware, hardware failure and optimize your PC for maximum performance. Fix PC issues and remove viruses now in 3 easy steps:

  1. Download Restoro PC Repair Tool that comes with Patented Technologies (patent available here).
  2. Click Start Scan to find Windows issues that could be causing PC problems.
  3. Click Repair All to fix issues affecting your computer’s security and performance
  • Restoro has been downloaded by 0 readers this month.

If you are unable to open a serial port, you are in good company, and in this guide, we will be telling you all you should know.

A serial port can be helpful, but some users reported being unable to open serial port error messages on their PCs. This can be a big problem, and in today’s article, we’ll show you how to fix this error.

By the end of this article, you should have successfully fixed all problems with your serial port. Some of the solutions may be relevant to COM ports on Windows.

Why is serial port not working?

Here are the top reasons you should have in mind:

  • Incorrect communication settings – For the devices to work together correctly, they must be configured with the same communication settings.
  • Wrong serial cable – If you use the incorrect serial cable, you will be unable to connect.
  • Software conflicts – A software driver might make a serial port unusable. This driver can stop working if it is improperly installed or incompatible with a serial port.
  • Faulty wiring – This may cause issues when a control system is connected to a device.

Some variations of serial port problems that users have faced include:

  • Unable to open serial port access is denied – In most cases, Access Denied occurs when another program is utilizing the port.
  • Failed to open serial port Betaflight – Though it’s not a true USB interface, the flight controller communicates with your computer through a USB connection.
  • COM port not detected Windows 10 – Your PC will display the warning unable to open serial port if the COM port isn’t recognized.
  • Unable to open connection to com1 – This problem may sometimes arise if you don’t have the proper drivers.
  • Unable to open a connection to com1 Windows 10, com3 – This issue can sometimes appear if you don’t have the necessary drivers. To fix it, be sure to update the serial port driver and check if that solves your problem.
  • Putty unable to open serial port Windows 10 – Sometimes, this issue can occur due to certain Windows services. This isn’t a major problem, and you can fix it by disabling those services.
  • Unable to open serial port com1 access is denied – This issue can appear due to glitches with a serial port. Temporarily disable the serial port and check if that helps.
  • Unable to open com port win error code 5, 123, 3 – These are some common problems that can appear with a serial port, but you should be able to fix most of them with one of our above tips.

Now, let us show you how to resolve this error on your Windows PC.

How do I fix unable to open serial port?

1. Make sure that you have the necessary drivers

  1. Right-click the Start menu and select Device Manager.
    unable to open serial port
  2. Expand the Universal Serial Bus controller category.
  3. Right-click on your driver and choose Update driver.
  4. Lastly, click on Search automatically for drivers.

If you’re getting the Unable to open serial port message, perhaps the problem is related to your drivers. To fix this issue, we recommend updating your serial port driver.

To do that, you can visit your motherboard manufacturer’s website and download the latest drivers. Of course, you can always use a third-party tool if you find this process tedious or complex.

DriverFix will provide a detailed report of all of your current and obsolete device drivers. In addition, it updates the most recent device drivers from the complete database regularly.

DriverFix is the best choice when updating all your drivers automatically, with just a couple of clicks.

It will keep your computer safe from downloading and installing the wrong driver version, which can cause severe malfunctions and ease the process.

DriverFix

Keep all drivers up to date to avoid incompatibility issues.

2. Verify that the port isn’t open/disconnect the cable

Sometimes the Unable to open serial port message can appear if the port is already open. To fix this problem, users are suggesting disconnecting the cable from the other device and trying to connect again.

try to disconnect the cable

This is a simple workaround, but several users reported it worked for them, so feel free to try it out.

3. Stop the Windows Fax and Scan service

  1. Press Windows Key + R keyboard shortcut to open the Run dialog.
  2. Enter services.msc and press Enter or click OK.
    services run window can't open serial port
  3. When the Services window opens, locate Windows Fax and Scan service and double-click it to open its properties (If this service isn’t available, try changing the settings of the Fax service).
  4. Set the Startup type to Manual and click the Stop button to stop the service. Now click Apply and OK to save changes.
    manual startup type serial port not working

Several users reported that when they were unable to open a serial port while trying to use the serial port, it turned out that the problem was the Windows Fax and Scan service.

To fix this problem, you need to stop Windows Fax and Scan service. After doing that, check if the problem is still there.

Remember that this is just a workaround, so you might have to repeat it whenever you want to use a serial port on your PC.

4. Disable the serial port in Device Manager

  1. Press Windows Key + X and choose Device Manager from the list.
    serial port device manager
  2. When Device Manager opens, locate the serial port, right-click it, and choose Disable device from the menu.
  3. When the confirmation dialog appears, click Yes.
  4. Wait for a couple of moments, and then enable the serial port.

Some PC issues are hard to tackle, especially when it comes to corrupted repositories or missing Windows files. If you are having troubles fixing an error, your system may be partially broken.
We recommend installing Restoro, a tool that will scan your machine and identify what the fault is.
Click here to download and start repairing.

If you keep getting an unable to open serial port message on your PC, the issue might be related to the serial port driver.

A temporary glitch usually causes this, and to fix the problem; we recommend disabling the serial port temporarily.

After doing that, check if the problem is resolved. If this solution works for you, remember that you’ll have to repeat it every time you want to use your serial port.

5. Try using a different cable

Sometimes, an unable to open serial port error can appear if your USB cable isn’t working. Be sure to check if your cable is connected correctly. In addition, check for any visible damage.

try a different cable

If your cable seems in order, try replacing it and check if the problem appears with a different cable.

6. Restart the device

If an Unable to open serial port keeps appearing, perhaps you can fix the problem by restarting your devices.

Restart the device you’re trying to connect to and check if that solves the problem. Alternatively, you can restart your PC and see if that solves the issue.

7. Reinstall the serial port driver

  1. Open Device Manager.
  2. Locate your serial port, right-click it, and choose Uninstall device.
    uninstall device serial port can't open
  3. Now click Uninstall to confirm.
    confirm device uninstall serial port not working
  4. Once the device is uninstalled, restart your PC.

As we already mentioned, sometimes issues with your serial port can be caused by your drivers.

If you keep getting Unable to open serial port message, you might be able to fix the problem simply by reinstalling the serial port driver.

After your computer restarts, Windows should install the default driver, and the problem will be completely resolved.

8. Make sure that the system is up to date

  1. Open the Settings app and go to the Update & Security section.
  2. Now click the Check for updates button in the right pane.
    update windows open serial port
  3. If any updates are available, they will be downloaded automatically in the background and installed as soon as you restart your PC.

Sometimes, an unable to open serial port message can appear if your system isn’t out of date.

An outdated system can lead to various compatibility issues, and the best way to avoid these issues is to update your system.

This process is relatively straightforward in Windows 10, and for the most part, Windows installs the updates on its own. Once your system is updated, check if the problem is still there.

Read more about this topic

  • Werfault.exe Error on Windows 10: How to Fix & Main Causes
  • Fix: Windows Cannot Access the Specified Device, Path or File
  • Driver PNP Watchdog: 9 Easy Fixes For Windows

How to enable COM port in Windows 10?

  1. Click the Windows key, enter regedit and select the Registry Editor app.
  2. Navigate to the part below:
    ComputerHKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesUSBSTOR
  3. On the right pane, double-click on Start.
    unable to open serial port
  4. Change the Value data to 4 and click OK.
    unable to open serial port

Getting the Unable to open serial port message can be a problem for many users that use the serial port frequently, but you should be able to fix this problem using one of our solutions.

Remember that we have not made these solutions in any particular order, so you should try what seems most appropriate for your situation.

Let us know which one worked for you in the comments area below.

Still having issues? Fix them with this tool:

SPONSORED

If the advices above haven’t solved your issue, your PC may experience deeper Windows problems. We recommend downloading this PC Repair tool (rated Great on TrustPilot.com) to easily address them. After installation, simply click the Start Scan button and then press on Repair All.

newsletter icon

Newsletter

Понравилась статья? Поделить с друзьями:
  • Ошибка отправки транзакции bitcoin попробуйте еще раз
  • Ошибка открытия последовательного порта com4 port busy
  • Ошибка отправки сообщения тандерберд
  • Ошибка открытия последовательного порта com3 port busy arduino
  • Ошибка открытия sam неподдерживаемый формат ключа сессии sam