Устройство определяется в Диспетчере устройств как «USB2.0-Serial» с жёлтым восклицательным знаком — это типичный признак того, что система не смогла подобрать подходящий USB UART драйвер для преобразователя. Проблема возникает при подключении Arduino-клонов, программаторов, адаптеров для прошивки роутеров и других устройств на микросхемах CH340, CP2102, FTDI или PL2303.
Без корректного драйвера виртуальный COM-порт не создаётся, и ни одна программа — будь то Arduino IDE, терминал или утилита прошивки — не сможет обменяться данными с устройством. В этой статье разберём, как определить чип преобразователя, где взять правильный драйвер и что делать, если порт появляется, но обмен данными не работает.
Что такое USB-UART преобразователь и зачем ему драйвер
Интерфейс UART (Universal Asynchronous Receiver-Transmitter) — это последовательный протокол обмена данными, который используется в микроконтроллерах, модемах, GPS-модулях и встраиваемой электронике. Современные компьютеры не имеют классического COM-порта, поэтому для связи с такой техникой применяются преобразователи USB-UART.
Микросхема-преобразователь эмулирует в системе виртуальный последовательный порт. Чтобы Windows понимала, как с ней работать, требуется драйвер конкретного производителя чипа — универсального решения здесь нет. Именно поэтому один и тот же адаптер может работать на одном ПК и не определяться на другом.
- 🔌 CH340/CH341 — самые распространённые чипы в недорогих Arduino-клонах и адаптерах
- 🔌 CP2102/CP2104 — преобразователи от Silicon Labs, часто встречаются в модулях ESP32 и ESP8266
- 🔌 FTDI FT232 — классика жанра, надёжные, но дорогие чипы
- 🔌 PL2303 — чипы Prolific, популярные в старых кабелях и переходниках
Как определить, какой чип установлен в адаптере
Первое действие — осмотреть плату преобразователя. Название микросхемы обычно выгравировано на корпусе чипа: CH340G, CP2102, FT232RL и так далее. Если маркировка не читается или чип закрыт корпусом, поможет Диспетчер устройств.
Подключите адаптер и откройте Диспетчер устройств (команда devmgmt.msc в окне «Выполнить»). Найдите устройство с ошибкой, откройте его свойства и перейдите на вкладку Сведения. В списке свойств выберите ИД оборудования — там будут значения вида VID_1A86&PID_7523.
| VID (производитель) | Чип | Драйвер |
|---|---|---|
| 1A86 | CH340 / CH341 | WCH CH341SER |
| 10C4 | CP2102 / CP2104 | Silicon Labs CP210x VCP |
| 0403 | FT232 / FT2232 | FTDI VCP / D2XX |
| 067B | PL2303 | Prolific PL2303 |
| 2341 / 2A03 | Оригинальные Arduino | Arduino IDE drivers |
Где скачивать драйверы и как их устанавливать
Драйверы следует брать только с официальных сайтов производителей чипов: WCH для CH340, Silicon Labs для CP210x, FTDI Chip для FT232, Prolific для PL2303. Сторонние сборники драйверов нередко содержат устаревшие или модифицированные версии, что создаёт риски для стабильности и безопасности системы.
Для чипа CH340 установка сводится к запуску инсталлятора CH341SER.EXE и нажатию кнопки установки. Драйверы Silicon Labs и FTDI распространяются в виде установочных пакетов, которые регистрируют виртуальный COM-порт автоматически. После установки переподключите устройство — в Диспетчере устройств должен появиться новый порт в разделе Порты (COM и LPT).
⚠️ Внимание: не устанавливайте драйверы из непроверенных «драйверпаков» и торрент-сборок. Для FTDI-чипов известны случаи, когда неофициальные версии драйверов блокировали работу контрафактных микросхем, обнуляя их идентификатор. Используйте только официальные источники.
☑️ Установка USB UART драйвера
Порт появился, но устройство не отвечает
Наличие COM-порта в системе ещё не гарантирует обмен данными. Если терминал или среда разработки не видит устройство, начните с простых проверок. Убедитесь, что в программе выбран именно тот номер порта, который присвоила система, — при переподключении адаптера в другой USB-разъём номер может измениться.
Второй частый источник проблем — неверная скорость порта (baud rate). Значение в терминальной программе должно совпадать со скоростью, на которую настроено подключаемое устройство. Типичные значения — 9600 и 115200 бод, но точную скорость нужно смотреть в документации конкретного устройства. Также проверьте линии TX и RX: при подключении к микроконтроллеру они соединяются перекрёстно — TX адаптера идёт на RX устройства и наоборот.
Типичные ошибки и способы их решения
Код 10 в Диспетчере устройств — устройство не может быть запущено. Для чипов PL2303 это часто означает, что новая версия драйвера отказывается работать со старыми или неоригинальными микросхемами. Возможное решение — установить более раннюю версию драйвера с официального сайта Prolific, если производитель её предоставляет, либо заменить адаптер.
Порт занят другим приложением — ошибка возникает, когда COM-порт уже открыт в другой программе: терминале, мониторе порта Arduino IDE или фоновой утилите. Закройте все программы, которые могут использовать порт, и повторите попытку. Помогает и простое переподключение адаптера.
- 🛠️ Попробуйте другой USB-порт, желательно напрямую, без хаба
- 🛠️ Замените кабель — некоторые кабели передают только питание без линий данных
- 🛠️ Проверьте адаптер на другом компьютере, чтобы отделить проблему ПК от неисправности самого преобразователя
- 🛠️ Удалите устройство в Диспетчере вместе с драйвером и установите драйвер заново
⚠️ Внимание: при подключении USB-UART адаптера к внешним устройствам сверьтесь с уровнями логики. Многие чипы работают с сигналами 5 В или 3,3 В, и подача 5-вольтовых уровней на вход 3,3-вольтового устройства может его повредить. Наличие перемычки выбора напряжения зависит от конкретной модели адаптера — проверяйте документацию.
Что такое VID и PID
VID (Vendor ID) — идентификатор производителя USB-устройства, PID (Product ID) — идентификатор конкретного продукта. Система использует эту пару, чтобы подобрать подходящий драйвер. Посмотреть их можно в свойствах устройства на вкладке «Сведения» в Диспетчере устройств Windows.
Особенности работы в Linux и macOS
В современных дистрибутивах Linux драйверы для популярных чипов — ch341, cp210x, ftdi_sio, pl2303 — обычно уже включены в ядро, и устройство определяется автоматически как /dev/ttyUSB0 или /dev/ttyACM0. Проверить подключение можно командой:
dmesg | grep tty
Если устройство определилось, но терминал выдаёт ошибку доступа, вероятная причина — недостаток прав. Пользователя нужно добавить в группу dialout (в большинстве дистрибутивов) и перезайти в сессию. В macOS для CH340 и CP2102 могут потребоваться драйверы от производителя, при этом система может запросить разрешение на загрузку расширения в настройках безопасности.
Часто задаваемые вопросы
Почему Windows не находит драйвер автоматически?
Для некоторых чипов, особенно CH340, встроенного драйвера в Windows может не быть, либо он устанавливается через Центр обновления с задержкой. Надёжнее скачать драйвер с официального сайта производителя чипа и установить вручную.
Как узнать номер COM-порта, который получил адаптер?
Откройте Диспетчер устройств и разверните раздел «Порты (COM и LPT)». Рядом с названием устройства в скобках указан номер, например COM5. Если портов несколько, отключите и снова подключите адаптер — исчезающий и появляющийся порт и есть нужный.
Можно ли использовать один драйвер для разных чипов?
Нет. Каждый производитель выпускает собственный драйвер, и CH340 не заработает с драйвером FTDI. Если вы используете несколько разных адаптеров, в системе будут установлены несколько драйверов одновременно — это нормально и конфликтов не вызывает.
Адаптер работал, а после обновления Windows перестал. Что делать?
Возможная причина — обновление заменило драйвер на несовместимую версию. Откройте свойства устройства в Диспетчере устройств и на вкладке «Драйвер» попробуйте откатить версию. Если кнопка недоступна, удалите устройство вместе с драйвером и установите проверенную версию с сайта производителя чипа.
Чем отличается виртуальный COM-порт от настоящего?
Для прикладных программ разницы практически нет — обращение идёт по тому же протоколу. Отличие в том, что виртуальный порт существует только пока подключён USB-адаптер, а его номер может меняться при подключении к другому USB-разъёму.