1P by GN⁺ | ★ favorite | 댓글 1개
  • 초기 USB 시절 Microsoft 마우스에는 USB Type-A를 PS/2 플러그처럼 꽂게 해 주는 작은 초록색 어댑터가 자주 포함됐음
  • USB와 PS/2는 완전히 다른 프로토콜이라, 이 어댑터만으로 신호가 변환되지는 않았음
  • 어댑터 내부에는 회로가 없고, 한쪽 핀을 다른 쪽 핀에 이어 주는 수동 물리 어댑터에 가까웠음
  • 실제 전환은 마우스가 핀에서 USB식 신호PS/2식 신호를 감지해 스스로 동작 방식을 바꾸는 구조였음
  • 서랍에서 발견한 어댑터를 범용 변환기로 쓰기는 어렵고, 동작 여부는 반대편의 듀얼 버스 마우스에 달려 있음

USB-to-PS/2 어댑터가 한 일

  • 초기 USB 시절 Microsoft 마우스 장치에는 케이블 끝에 USB 플러그가 달려 있으면서, 이를 PS/2 플러그 형태로 바꾸는 작은 초록색 어댑터가 함께 제공되는 경우가 많았음
  • 이 어댑터는 USB와 PS/2 사이의 프로토콜을 번역하지 않았음
  • 두 방식은 어떤 식으로도 직접 호환되지 않는 별개의 프로토콜

변환은 어댑터가 아니라 마우스가 처리

  • 어댑터는 순수하게 기계적·수동적인 장치였음
    • 한 핀 세트를 다른 핀 세트에 연결함
    • 내부에 회로가 없음
    • 신호 해석이나 프로토콜 변환 기능이 없음
  • 실제 판단은 마우스 내부에서 이뤄졌음
    • 마우스가 핀에서 USB와 유사한 신호를 받는지, PS/2와 유사한 신호를 받는지 감지함
    • 감지 결과에 따라 마우스가 자신의 동작 방식을 바꿈
  • 그래서 변환 기능은 어댑터가 아니라 마우스 쪽 구현에 의존함

전원 플러그 어댑터와 비슷한 구조

  • 이 방식은 국가별 전원 플러그 형태를 바꿔 주는 저렴한 전기 콘센트 어댑터와 비슷함
  • 콘센트 어댑터에도 지능은 없고, 한쪽 플러그를 다른 쪽 플러그에 물리적으로 연결할 뿐임
  • 실제 호환성 처리는 기기 자체나 해당 기기의 전원 어댑터가 담당함

범용 마우스 변환기로 오해하기 쉬운 이유

  • 서랍에서 이런 USB-to-PS/2 어댑터를 찾더라도 범용 마우스 어댑터로 볼 수 없음
  • 물리적 연결만 바꿔 주는 부품이므로, 연결된 마우스가 두 방식을 모두 지원해야 동작할 수 있음
  • 실제 변환은 반대편에 연결된 듀얼 버스 마우스에서 일어남

현재 판매되는 유사 어댑터를 볼 때의 주의점

  • 인터넷 검색 결과, 현재도 이런 유형의 마우스 어댑터를 만드는 사람들이 있음
  • 구매 가능한 제품이 PS/2와 USB 신호 프로토콜을 번역하는 스마트 어댑터인지, 마우스가 변환을 담당한다고 가정하는 순수 기계식 어댑터인지는 확실하지 않음

댓글과 토론

Hacker News 의견들
  • 와, 정말 옛날 생각남. 2000년이나 2001년쯤 선물로 광마우스를 받았는데, 기계식 마우스로 StarCraft를 하는 게 꽤 고통스러워서 오래전부터 갖고 싶었음
    당연히 USB 마우스였고 내 컴퓨터에는 PS/2만 있었음. 어댑터를 샀지만 여러 PC와 마우스로 오래 테스트해도 전혀 동작하지 않았음
    결국 전자제품 수리점에 가져갔더니 내부를 열어 보고, 실제 USB 지원 회로 없이 선만 이어놓은 가짜 어댑터라고 설명해 줬음. 이제야 왜 그런 물건이 존재했는지 알겠고, 한동안 위조 어댑터를 산 줄로만 알았음

    • 글을 읽고 나니 그 어댑터가 다른 마우스에서는 동작했을지, 아니면 혼란만 만들었을지가 궁금했는데 답을 얻은 셈임
    • AliExpress에서 DIN-to-PS/2 키보드 어댑터를 주문했을 때도 비슷한 일을 겪음. 기억이 맞다면 그건 추가 회로가 필요 없는 물건이라, 가짜를 만든 게 더 이상했음
    • 위조품을 만들면서 굳이 호환되지 않는 신호를 무의미하게 연결하는 것도 더 말이 안 되는 듯함
      안에 뭔가 들어 있는 것처럼 보여야 “진짜 같아” 보인다는 의도였을 수도 있지만, 그렇다면 1센트짜리 IC라도 넣는 편이 더 그럴듯했을 테니 여전히 잘 이해가 안 됨
    • 이걸 보니 10살 때 PS/2 어댑터에 꽂은 광마우스가 되는 것도 있고 안 되는 것도 있어서 겪었던 엄청난 좌절이 설명됨
  • 예전에 PC World 판매원과 꽤 어색한 대화를 한 적이 있음
    회사에서 퇴역한 오래된 서버를 받아 집에서 공부하려 했는데, 문제는 USB가 없었다는 것임
    PS/2 키보드를 찾는다고 했더니 직원은 그런 건 안 팔지만 아무 USB 키보드나 쓰면 된다고 했고, 나는 USB 포트가 없어서 PS/2 키보드가 필요하다고 설명했음
    직원이 매니저와 몇 번 왔다 갔다 한 끝에 결국 USB를 쓰면 된다고 다시 말했는데, 알고 보니 내가 PlayStation 2 키보드를 사려는 줄 알았고 PS/2를 들어본 적이 없었던 것임

    • 앞면에 PS/2 마우스·키보드 포트 그림과 “I'm this old”라는 문구가 있는 꽤 괜찮은 셔츠를 입고 다님. 내년에 40살이 되니 딱 맞는 느낌임
    • PlayStation 2 전성기 몇 년 동안 Tony Hawk 온라인 플레이 중 문자 채팅을 하려고, 키보드에 PS/2 -> USB 어댑터를 달아 PS2에서 썼음. 늘 그 점이 좀 웃겼음
    • OS/2는 운영체제 절반이라는 뜻이었고 :)
      어딘가에 PS/2-USB 어댑터가 딸려 온 오래된 마우스가 있을 것 같음. 그게 PS/2 마우스와 PS/2-USB 어댑터였는지, USB 마우스와 USB-PS/2 어댑터였는지는 꺼내 봐야 기억날 듯함
    • 그런데도 거의 모든 새 ATX 메인보드에는 PS/2 입력이 있음. 반면 RJ45 포트가 2개 이상인 보드는 가격과 무관하게 개인이 살 수 있는 선택지가 거의 없어서, 이 업계가 왜 이렇게 정체되어 있는지 이해가 안 됨
  • 더 자세한 내용과 흥미로운 역사적 배경은 여기서 볼 수 있음: https://superuser.com/questions/704920/how-to-determine-if-u...
    2014년 무렵에는 마우스와 키보드 대다수가 이중 프로토콜을 지원했지만, 2019년쯤부터 USB 전용이라는 보고가 처음 나오기 시작한 듯함
    가장 저렴한 마우스 SoC 중 상당수는 처음 설계했을 때 잘 동작하던 그대로 계속 생산되어 아직도 이중 프로토콜일 가능성이 있음
    핀 배열과 프로토콜 감지 방식 설명은 여기 있음: https://retrocomputing.stackexchange.com/questions/28288/how...

  • 90년대 초반 Roland S760 샘플러를 갖고 있음. Roland가 이 저가형 영역에서 만든 혁신 중 하나는 모니터와 마우스를 연결할 수 있게 해서, 당시 Akai S1000의 작은 화면이나 S760의 더 작은 2줄 디스플레이를 들여다보는 대신 샘플 자르기와 패치 프로그래밍을 훨씬 쉽게 만든 것이었음
    마우스 커넥터는 요즘 구하기 매우 어려운 MSX라서, 내 장비에는 DIY MSX->PS/2 커넥터가 딸려 왔음. 같이 온 PS/2 마우스가 거의 수명을 다해 더 현대적인 것으로 바꾸려 했지만, 당시 찾을 수 있던 건 USB-PS/2 커넥터가 포함된 MS 마우스뿐이었음. 꽂아 보니 겨우 동작했고, 왜 그런지 전혀 이해하지 못했음
    결국 신품 재고 PS/2 마우스를 찾아내자 다시 완벽하게 동작했음. 이 글을 보기 전까지 왜 안 됐는지 몰랐음
    S760은 훌륭한 샘플러임. 완전한 신시사이저 엔진의 복잡성은 없지만 샘플러 버전 JD990 같은 느낌이고, S760의 디지털 멀티모드 필터가 Daft Punk와 여러 뮤지션의 대표 사운드가 되면서 유명해졌음

    • 1980년대 후반 Roland S-330을 갖고 있는데, 살 때 가장 걱정한 건 플로피 드라이브의 생존성이었음. 마우스가 어려울 줄은 생각 못 했음
    • Buyee.jp에서 커넥터를 찾으면 운이 좋을 수 있음. MSX는 일본에서 매우 컸고, Roland도 일본 회사임
  • 현대 USB 장치를 레트로 컴퓨터에서 쓰려면 능동 변환기가 필요함. 몇 년 전에 여러 컴퓨터용으로 하나 만들었음
    https://github.com/dekuNukem/USB4VC
    더 최근 프로젝트로 HIDman도 있지만 PC 전용임
    https://github.com/rasteri/HIDman

    • 예전에 오래된 PC를 설정하려고 PS/2 키보드가 우편으로 올 때까지 기다리기 싫어서, Arduino로 대충 빠르게 어댑터를 만든 적 있음
    • 또 다른 프로젝트로 ps2x2pico가 있음. 레트로 장비에서 쓰고 있는데 아주 잘 동작함
      Logitech G305 마우스는 1000Hz라서, Windows 98에서 PS2Rate 같은 프로그램 없이도 커서가 매우 부드럽도록 ps2x2pico에서 마우스 폴링 속도를 100Hz로 강제 설정해 둠. Keychron S1 키보드의 N키 롤오버도 완벽하게 동작함
      https://github.com/No0ne/ps2x2pico
  • 제목과 URL이 microsoft.com인 것만 보고도 99% 확률로 Old New Thing의 Raymond Chen 글일 줄 알았음

    • 맞는 말임. 지금 도메인은 devblogs.microsoft.com으로 보임. @dang이나 팀원이 HN 소프트웨어를 고쳐 홈페이지에서 URL 세부 정보를 더 보여주게 한 적이 몇 번 있음
      이 경우에도 그렇게 해주면 좋겠음. fortune.com이 좋은 예인데, 블로그는 완전 별로라서 이제는 첫 페이지에 그냥 fortune.com이 아니라 “fortune.com/blogs” 비슷하게 표시됨
    • 그의 기묘한 짧은 코멘트들이 좋음. 획기적이진 않지만 거의 항상 “어? 그건 몰랐네” 하게 만듦
    • 그 사이트에서 확실히 상위권 블로그 중 하나임. Win32 함수 문서가 블로그 글의 참고 링크로 이어졌으면 좋겠음. 그의 설명과 예제가 많은 도움이 됐고, Larry Osterman도 활동하던 시절엔 좋은 블로거였음
  • 첫 386/33 컴퓨터에서 쓰던 키보드를 아직 갖고 있음. DIN5 -> PS/2 -> USB-A -> USB-C 순서의 어댑터 체인을 거쳐 현재 Mac에 연결할 수 있음
    앞으로 이 어댑터 체인을 더 늘릴 날을 기대 중임

    • Windows 11은 직렬 마우스를 USB 직렬 어댑터에 연결해 꽂으면 sermouse.sys를 기꺼이 로드함
      arm64에서도 됨
    • 책상에 비슷한 Apple Extended Keyboard II가 있음. ADB-USB 어댑터에 연결되어 있고, 그 어댑터는 5~7년마다 동전형 배터리를 갈아줘야 함. 다시 USB-A-USB-C 어댑터를 거쳐 MacBook에 연결됨
      약 35년이 지났는데도 여전히 훌륭하게 동작해서 매일 쓰고 있음. 미래에 체인에 또 어댑터를 추가하지 않아도 되길 바라지만, 모를 일임
    • 이 체인에서 PS/2 -> USB-A 어댑터는 똑똑한 어댑터일 것 같음
    • 몇 년 전까지도 집의 메인 Linux 데스크톱에 DEC LK201을 연결해 쓰고 있었음. 왜인지는 모르겠지만 키 배열이 마음에 들었음
    • DIN5 -> USB-A 어댑터를 구할 수 있지 않나? 동작할지는 모르겠고, 오디오 장비용으로 설계된 물건일 수도 있음
  • 90년대 후반과 2000년대 초반 키보드도 비슷한 일을 자주 했음. 컨트롤러가 PS/2와 USB를 모두 지원했고, 키보드는 PS/2 플러그와 수동 어댑터를 함께 제공했음
    그래서 USB 도입 이전에 설계된 PS/2 키보드, 예를 들어 Model M 같은 걸 현대 컴퓨터에서 쓰려면 실제로 프로토콜을 변환하는 능동 PS/2-USB 어댑터를 골라야 함

    • 나도 비교적 현대적인 키보드를 이론상 인터럽트 기반 속도 때문에 PS/2로 PC에 연결하려다 동작하지 않아 힘들게 배웠음
      많은 기계식 게이밍 키보드는 앞서 말한 인터럽트 때문에 아직도 PS/2를 지원함
    • 이제는 오래전에 해결됐겠지만, 2010년쯤에는 낮은 지연 시간과 N키 롤오버 지원 때문에 PS/2 키보드를 쓰는 것이 대체로 권장됐던 기억이 있음
    • PS/2에서 USB로의 변환은 컴퓨터 쪽에서 처리할 수 있을 거라 예상했음
      경험은 적지만 Linux에서 초기 3D 프린터 몇 대를 디버깅하면서, USB의 U는 정말 범용(universal)이라는 뜻에 가깝고 직렬 데이터를 운영체제·드라이버·소프트웨어에 넘겨 처리하게 하는 것이라고 배웠음
  • 저렴한 DisplayPort-to-HDMI 어댑터가 동작하는 방식도 비슷해서, 어댑터 자체는 완전히 수동임
    DisplayPort 출력 장치 중 상당수는 멀티모드를 지원해 DP 패킷 출력 대신 TMDS 기반 HDMI나 DVI 신호를 출력하도록 전환할 수 있음. 이런 포트에는 ++DP 로고가 붙어 있는 경우가 있음
    그래서 저렴한 HDMI 소스-to-DisplayPort 싱크 어댑터는 보기 어렵고, 필요한 지능이 소스 장치에 내장되어 있지 않음

    • 완전히 수동은 아니고 단순한 레벨 변환에 가까웠다고 봄. DisplayPort는 교류 결합 신호이고 HDMI는 직류 결합 신호임
    • 다행히 아주 비싸지는 않았음. 합리적인 가격대, 대략 50달러 정도의 능동 HDMI-DP 변환기를 찾아 안도했음
      오래된 Dell 모니터가 HDMI 1.3만 지원해서 전체 해상도를 쓰려면 DisplayPort나 듀얼 링크 DVI 입력을 써야 했는데, 현대 장치에는 보통 둘 다 없음. 그 장치가 문제를 해결해 2560x1440 해상도를 쓸 수 있게 해줬음
    • 선 저항 외에 전력을 쓴다면 수동이 아니라고 봄. 예를 들어 저항, 커패시터, 코일은 수동으로 보겠고 다이오드도 지연을 추가하긴 하지만 동의할 수 있음
      DP->HDMI에는 최소한 레벨 시프터 같은 전자회로가 필요함
  • 약간 관련 없는 얘기지만, 얼마 전 비교적 새 ThinkPad X1C 12세대의 내장 키보드가 동작을 멈췄음. USB 키보드를 연결하고 Linux 커널 링 버퍼나 다른 곳에 문제를 설명할 오류가 있는지 살펴봤음
    놀랍게도 내부 키보드는 USB가 아니라 i8042였음. 하드웨어 쪽 사람은 아니지만 요즘은 모든 게 USB라고 은근히 생각하고 있었음. i8042가 글에서 말하는 PS/2 프로토콜인 듯함
    오류는 찾지 못했지만 재부팅 후 다시 동작했음

    • PS/2 키보드와 마우스는 인터럽트 기반이라 노트북에서 전력을 아낄 수 있음. 반면 USB 장치는 폴링 기반이라 컨트롤러가 항상 돌아가야 함
    • https://wiki.osdev.org/%228042%22_PS/2_Controller
    • 노트북에서 USB 키보드를 본 기억은 없음. 적어도 그 일을 직업으로 하지는 않지만 그렇음. 백라이트조차 별도 PWM 라인인 경우가 많음
      키보드 쪽에 컨트롤러가 필요하므로 USB를 쓰지 않는 것도 말이 됨
    • 노트북에서는 보통 EC가 키보드와 트랙패드·포인팅 스틱에 연결되고, LPC를 통해 칩셋과 통신함. LPC는 오래된 ISA 버스의 변종임
      많은 EC에는 이를 위한 8042 호환 IP 블록이 내장되어 있음. 소프트웨어에는 정확히 PS/2 키보드와 마우스처럼 보이지만, 물리 계층은 더 이상 존재하지 않을 수 있음. 외부 PS/2 키보드와 마우스를 지원하던 오래된 노트북에는 실제 PS/2 인터페이스가 있을 수도 있음
      키보드가 완전히 멈췄다면 EC 펌웨어의 버그나 임의의 글리치를 의심하겠음
    • 5년쯤 전까지만 해도 많은 노트북 트랙패드는 드라이버를 설치해도 그냥 PS/2 마우스였음