Mouser: Logi-Plus 마우스 소프트웨어의 오픈소스 대안

1 week ago 9

  • Logitech MX Master 3S 마우스의 모든 프로그래머블 버튼을 재매핑할 수 있는 경량 오픈소스 도구로, Logitech Options+를 대체함
  • 로컬 실행 기반으로 동작하며, 클라우드·텔레메트리·로그인 계정이 전혀 필요 없음
  • macOS와 Windows를 지원하고, 앱별 프로필 전환, 22개 내장 액션, DPI 조절, 제스처 버튼 지원 등을 제공
  • Qt Quick UI 기반의 현대적 인터페이스와 시스템 트레이 통합, 자동 재연결, 실시간 연결 상태 표시 기능을 포함
  • MIT 라이선스로 공개되어 있으며, Logitech Options+의 복잡한 설치 없이 즉시 실행 가능한 완전한 로컬 대안으로 주목받음

주요 기능

  • MX Master 3S 전용 버튼 재매핑 기능 제공
    • 중간 클릭, 제스처 버튼, 뒤로/앞으로, 수평 스크롤 좌/우 등 6개 프로그래머블 버튼을 모두 지원
    • 앱별 프로필을 통해 Chrome, VS Code 등 각 애플리케이션에 맞는 매핑 자동 전환
  • 22가지 내장 액션을 제공하며, 탐색·브라우저·편집·미디어 제어 등으로 분류됨
    • 예: Alt+Tab, 새 탭 열기, 복사/붙여넣기, 볼륨 조절 등
  • DPI 및 포인터 속도 조절 기능 지원
    • 200~8000 DPI 범위에서 슬라이더로 조정 가능하며, HID++ 프로토콜을 통해 장치와 동기화
  • 스크롤 방향 반전제스처 버튼 완전 지원
    • HID++ 2.0 기반 블루투스 연결 시 Logitech 소프트웨어 없이 제스처 버튼 사용 가능
  • 자동 재연결 및 실시간 상태 표시
    • 마우스 전원 껐다 켜도 자동 복구되며, UI에서 “Connected / Not Connected” 상태를 실시간 표시

설치 및 실행

  • 설치 과정 없이 즉시 실행 가능
    • Mouser.zip(44MB)을 다운로드 후 압축 해제, Mouser.exe 실행만으로 작동
    • 설정 창과 트레이 아이콘이 자동 표시되며, 창을 닫아도 백그라운드에서 계속 실행
  • 첫 실행 시 주의사항
    • Windows SmartScreen 경고 시 “Run anyway” 선택
    • Logitech Options+가 실행 중이면 충돌하므로 종료 필요
    • 설정은 %APPDATA%\Mouser에 자동 저장

기술 구조

  • Python + Qt Quick(QML) 기반으로 작성
    • PySide6로 UI 구현, hidapi로 HID++ 통신, Pillow로 아이콘 처리
  • 마우스 이벤트 후킹
    • Windows에서는 SetWindowsHookExW를 이용한 저수준 마우스 후킹으로 클릭·스크롤 이벤트 감지
  • 제스처 버튼 감지 3단계 구조
    • HID++ 2.0 → Raw Input → Middle-click fallback 순으로 감지
  • 앱 감지 및 프로필 전환
    • 300ms 간격으로 활성 창을 감시해 앱 변경 시 프로필을 즉시 전환
  • 구성 파일 관리
    • Windows %APPDATA%\Mouser\config.json, macOS ~/Library/Application Support/Mouser/config.json에 저장
    • 다중 프로필, 앱 연결, DPI, 스크롤 반전 등 설정 포함

사용자 인터페이스

  • 두 개의 주요 페이지 구성
    • Mouse & Profiles: 프로필 목록과 인터랙티브 마우스 다이어그램 제공, 각 버튼 클릭 시 액션 선택
    • Point & Scroll: DPI 슬라이더와 수직/수평 스크롤 반전 토글 제공
  • 시스템 트레이 통합
    • 트레이 메뉴에서 리매핑 기능을 켜거나 끌 수 있으며, 종료도 가능

제한 사항 및 향후 계획

  • Windows·macOS만 지원, Linux는 미지원
  • MX Master 3S 전용, 다른 모델은 테스트되지 않음
  • Bluetooth 연결 권장, USB 리시버는 일부 기능 제한
  • Logitech Options+와 충돌, 동시에 실행 불가
  • 향후 다른 Logitech 마우스 지원, 사용자 정의 키 조합, Linux 포팅, 플러그인 시스템 등이 계획됨

라이선스 및 기여

  • MIT 라이선스로 공개되어 자유로운 수정·배포 가능
  • 기여자 참여 환영, 기능 추가·테스트·UI 개선·Linux 포팅 등 협력 요청
  • 프로젝트는 Logitech과 무관하며, “Logitech”, “MX Master”, “Options+”는 Logitech International S.A.의 상표임

Read Entire Article