피드로 돌아가기
How to Test a Mechanical Keyboard for Ghosting and N-Key Rollover (Without Buying Software)
Dev.toDev.to
Infrastructure

Diode 기반 Matrix 설계로 Ghosting 제거 및 NKRO 구현

How to Test a Mechanical Keyboard for Ghosting and N-Key Rollover (Without Buying Software)

Nasir Aziz Awan2026년 4월 27일7intermediate

Context

제조 비용 절감을 위해 도입한 Switch Matrix 구조로 인해 특정 키 조합 시 전류 흐름의 모호성이 발생하는 Ghosting 현상 발생. 펌웨어 수준의 필터링으로는 입력 누락이나 허위 입력 문제를 근본적으로 해결하지 못하는 하드웨어적 한계 존재.

Technical Solution

  • 각 Switch에 Diode를 배치하여 전류의 역류를 차단함으로써 Matrix 내 신호 경로를 유일하게 확정하는 구조 설계
  • USB HID Boot Protocol의 6KRO 제약을 극복하기 위해 Extended HID Descriptor를 통한 NKRO 프로토콜 협상 적용
  • Row-Column 스캐닝 방식의 논리적 모호성을 하드웨어 레이어에서 제거하여 입력 독립성 확보
  • Modifier Key를 6KRO 카운트에서 제외하는 펌웨어 로직을 통해 실질적인 동시 입력 가능 수 확장
  • Host-Device 간의 프로토콜 호환성 검증을 통한 런타임 Downgrade 방지 전략 수립

1. NKRO 미지원 시 게임 내 Key Binding을 Ghosting Zone 외부로 재배치하여 입력 누락 방지

2. 하드웨어 스펙상 NKRO 지원 제품임에도 6KRO로 동작할 경우 USB Hub 제거 및 Motherboard 직결 포트 검토

3. 특정 키의 입력 압력 증가나 중복 입력 발생 시 Matrix 설계 이슈가 아닌 Mechanical Wear에 따른 스위치 교체 검토

4. OS/Browser의 Extended HID 지원 여부에 따른 입력 프로토콜 동작 방식 확인

원문 읽기