USB-시리얼 변환기(USB-RS485·USB-RS232)는 PC 쪽에서 보면 USB 장치입니다. USB 연결이 한 번 끊기면 Windows 는 COM 포트 장치를 지웠다가 다시 만들고, 포트를 열어 두었던 프로그램은 «장치가 없음»·쓰기 오류를 냅니다. 이 글은 그렇게 «연결 자체가 끊기는» 경우를 다룹니다. 연결은 그대로인데 응답이 늦거나 프레임이 쪼개지는 것은 지연 타이머 문제이고(USB-시리얼 지연 글), 응답이 아예 없는 것은 대개 배선·설정 문제입니다(Modbus 응답 없음 글).
증상으로 먼저 가르기
| 증상 | 먼저 볼 것 |
|---|---|
| 장치 관리자에서 포트가 잠깐 사라졌다 다시 나타남 | USB 연결이 끊겼다 다시 붙음 — 아래 1~4 순서 |
| 다시 꽂으면 COM 번호가 바뀜 | 변환기에 일련번호가 없거나 다른 USB 포트에 꽂음 — 5절 |
| 오래 쉬었다가 처음 보낼 때만 실패 | 절전 — 3절 |
| 포트는 그대로인데 장치 관리자에 느낌표 | 드라이버·문제 코드 — 4절 |
| 포트는 그대로, 응답만 가끔 빠짐 | 끊김이 아님 — 지연 타이머·타임아웃·배선을 봄 |
«정말 끊겼는지» 는 기록으로 확인합니다. Windows 이벤트 로그(Kernel-PnP)에는 장치가 시작될 때마다 기록이 남아, 하루에 여러 번 다시 시작된 날이 있으면 연결이 끊겼다 붙은 것입니다. PortDock Port Inspector 의 «연결 기록» 카드가 이 기록을 포트별로 모아 보여 주고, 하루 3번 이상 다시 연결된 날이 있으면 «볼 것» 으로 표시합니다.
1. 케이블·커넥터 — 증상이 따라가는지
- 다른 USB 케이블(연장선이면 빼고), 다른 USB 포트로 바꿔 봅니다. 바꾼 쪽으로 증상이 따라가면 그 부품이 원인입니다.
- 변환기가 흔들리거나 케이블 무게로 비스듬히 꽂혀 있으면 커넥터 접촉이 순간적으로 떨어질 수 있습니다. 케이블을 고정합니다.
- PC 앞면 단자는 본체 안쪽 케이블을 한 번 더 거칩니다. 끊김을 가릴 때는 뒷면(메인보드) 단자에 바로 꽂아 비교합니다.
2. 허브 — 사이에 무엇이 있는지
- 허브를 거친다면 일단 빼고 PC 단자에 직접 꽂아 비교합니다.
- 전원 어댑터 없이 USB 로만 전원을 받는 허브(버스 전원 허브)에 여러 장치를 달면 전원이 모자랄 수 있습니다. 자체 전원 허브로 바꾸거나 장치 수를 줄입니다.
- Port Inspector 의 «USB 경로» 카드는 변환기에서 위로 허브 → 루트 허브 → USB 컨트롤러 사슬과 허브의 전원 방식(버스/자체), 꽂힌 포트 번호, 협상 속도를 보여 줍니다. USB-시리얼 칩은 대부분 Full Speed(12 Mbps)로 붙고, 이것은 시리얼 속도보다 훨씬 빠르므로 느린 것이 아닙니다.
3. 절전 — 오래 쉬었다가 끊기는지
Windows 에는 USB 장치를 쉴 때 포트 단위로 재우는 «USB 선택적 절전» 이 있습니다. Microsoft 문서에 따르면 이 기능은 기본으로 켜져 있고, Microsoft 는 끄지 말 것을 강하게 권합니다 — 꺼 두면 CPU 가 깊은 절전 상태로 들어가지 못해 전력이 늘기 때문입니다. 그래서 «무조건 끄기» 가 아니라, 끊김이 절전과 맞물리는지를 먼저 봅니다.
- 증상이 «한동안 통신이 없다가 다시 쓸 때» 만 나오면 절전을 의심합니다. 계속 폴링하는 동안에도 끊기면 절전보다 케이블·허브·전원 쪽입니다.
- 볼 곳 두 군데: 제어판 → 전원 옵션 → 고급 전원 관리 옵션 → USB 설정 → «USB 선택적 절전 설정», 그리고 장치 관리자 → 변환기(또는 위 USB 장치·허브) 속성 → 전원 관리 → «전원 절약을 위해 컴퓨터가 이 장치를 끌 수 있음».
- 끄는 것은 24시간 감시·기록용 장비 PC 처럼 절전보다 연결이 중요한 곳에서 검토합니다. 노트북 배터리 시간은 줄어듭니다.
- Port Inspector 의 «절전» 카드는 이 두 값을 전원 연결·배터리 따로, 변환기와 그 위 허브까지 한 번에 읽어 보여 줍니다(바꾸지는 않음).
4. 드라이버 — 장치 관리자의 문제 코드
- 장치 관리자에서 포트에 느낌표가 있으면 속성 → 일반 탭의 «장치 상태» 에 문제 코드가 있습니다. 10(시작할 수 없음)·28(드라이버 없음)·43(장치가 문제를 알림) 같은 번호의 뜻은 Microsoft 문서 «Device Manager error messages» 에 있습니다.
- 드라이버는 Windows Update 가 고른 것보다 칩 제조사(FTDI·Silicon Labs·WCH·Prolific 등)가 배포한 것을 먼저 써 봅니다. 칩 이름은 장치의 VID/PID 로 알 수 있습니다.
- 같은 VID/PID 를 쓰는 복제 칩이 있어서, 최신 공식 드라이버가 오히려 그 장치를 거부하는 경우가 알려져 있습니다. 변환기 자체를 다른 제품으로 바꿔 증상이 사라지는지도 봅니다.
5. COM 번호가 바뀌는 이유
Windows 는 COM 번호를 «COM 포트 데이터베이스» 에서 받아 장치에 붙이고, 한 번 쓴 번호는 장치를 뺀 뒤에도 예약해 둡니다. 그래서 새 변환기를 꽂으면 COM15 처럼 높은 번호를 받기도 합니다.
같은 변환기인데 다른 USB 포트에 꽂으니 번호가 바뀌었다면, 변환기에 일련번호(iSerialNumber)가 없을 가능성이 큽니다. Microsoft 블로그 설명대로, 일련번호가 없는 USB 장치는 Windows 가 부모(꽂힌 포트·허브) 정보로 구별하므로 다른 포트에 꽂으면 «새 장치» 가 되고 새 COM 번호를 받습니다. 일련번호가 있는 변환기는 어느 포트에 꽂아도 같은 장치로 봅니다.
- 현장 PC 에서는 변환기를 늘 같은 USB 단자에 꽂아 두는 것이 가장 간단합니다.
- 프로그램에 COM 번호를 고정해 둔 경우, 일련번호가 있는 변환기를 쓰면 번호가 덜 바뀝니다.
- 지금 없는 장치가 쥔 번호는 장치 관리자 → 보기 → «숨겨진 장치 표시» 에서 흐린 포트를 제거하면 풀립니다. 레지스트리의 예약 값을 직접 고치면 두 장치가 같은 번호를 받을 수 있어 권하지 않습니다.
- COM17 이상을 고를 수 없는 옛 프로그램이 있습니다. 그럴 때만 장치 속성 → 포트 설정 → 고급에서 번호를 낮춥니다(«사용 중» 표시가 있는 번호는 피함).
끊긴 뒤 프로그램이 할 일
USB 가 끊기면 열려 있던 포트는 쓸 수 없게 되고, 다시 꽂아도 프로그램이 포트를 새로 열어야 이어집니다. PortDock Serial 은 «다시 꽂으면 자동 연결» 을 켜 두면 같은 장치가 다시 나타날 때 저절로 엽니다 — COM 번호가 바뀌어도 같은 장치를 찾아 열고, 로그에 «RECONNECT COM3 → COM5» 처럼 남깁니다. 일련번호 없는 같은 변환기를 여러 개 꽂아 두면 어느 것인지 알 수 없어 기다리므로, 그때는 직접 포트를 골라 다시 연결합니다.
PC 가 볼 수 없는 것
위 점검은 PC 쪽입니다. 변환기 뒤의 RS-485 배선(A/B 뒤바뀜·종단·바이어스), 장비 쪽 접지·차폐, 큰 부하가 켜질 때의 잡음은 PC 가 알 수 없습니다. 끊김이 특정 설비가 켜질 때만 생긴다면 그쪽 배선·접지를 봅니다(RS-485 배선 점검 글).
근거
- Microsoft Learn — USB Selective Suspend — 기본 켜짐, 끄지 말 것을 권함(2025-05-07)
- Microsoft Windows Music Dev blog — The importance of including a unique iSerialNumber in your USB MIDI Devices — 일련번호가 없으면 다른 포트에서 새 장치(2023-06-06)
- Microsoft Learn — Configuration of COM Ports — COM 번호는 COM 포트 데이터베이스에서
- Microsoft Learn — Device Manager error messages — 문제 코드의 뜻
작성 2026-10-29