b345386887d02138e58e0e625041e98888c92cef
Logitech Bluetooth Monitor (LOGI K370 B & LOGI M240 B)
Windows 환경에서 로지텍 블루투스 키보드(LOGI K370 B)와 마우스(LOGI M240 B)의 연결 상태를 실시간 모니터링하고, 페어링 모드 진입 시 자동 페어링 및 상시 대기/재연결을 관리하는 고속 네이티브 백그라운드 모니터 프로그램입니다.
주요 기능
- 멀티 디바이스 실시간 감시 및 자동 복구:
- LOGI K370 B (키보드) & LOGI M240 B (마우스)의 연결 상태를 2초 주기로 헬스체크 및 이벤트 기반 실시간 감지.
- 키보드/마우스 전원을 끄거나 채널을 돌려 연결이 해제되면 즉시
대기 모드로 복귀하여 재연결 또는 새 페어링을 대기합니다.
- 공식 WinRT DeviceWatcher + Passive RF 무선 전파 하이브리드 감지:
- Windows 설정의 '장치 추가' 창과 동일한 공식 WinRT
DeviceWatcherAPI로 디바이스 식별. BluetoothLEAdvertisementWatcher의 Passive 스캔 모드를 사용하여 무선 전파를 송출하지 않고 청취만 수행하므로, 블루투스 마우스나 타 기기 연결에 간섭(지연/끊김)을 0%로 차단합니다.- 키보드와 마우스가 모두 연결된 정상 동작 중에는 스캐너 자체를 **완전 정지(Stop)**시켜 블루투스 대역폭을 100% 확보합니다.
- Windows 설정의 '장치 추가' 창과 동일한 공식 WinRT
- 키보드 PIN 감지 시 자동 최상위(Topmost) 창 팝업:
- 사용자가 다른 프로그램을 사용 중이거나 콘솔 창이 최소화되어 있어도, 키보드 신호 및 6자리 PIN 번호 감지 즉시 창을 원래 크기로 복원하고 화면 최상위(
HWND_TOPMOST)로 자동 팝업합니다. - 키보드에서 PIN 번호 입력 및 Enter 완료 시 3초 후 최상위 고정을 자동 해제하여 원활한 작업 환경을 보장합니다.
- 사용자가 다른 프로그램을 사용 중이거나 콘솔 창이 최소화되어 있어도, 키보드 신호 및 6자리 PIN 번호 감지 즉시 창을 원래 크기로 복원하고 화면 최상위(
- 마우스 완전 무인 자동 페어링:
- 마우스(M240)는 PIN 번호 입력이 필요 없는
ConfirmOnly규격으로, 페어링 버튼 활성화 시 1초 만에 시스템 레벨에서 무인 자동 승인되어 즉시 연결됩니다.
- 마우스(M240)는 PIN 번호 입력이 필요 없는
구성 파일
main.go/logi_k370_monitor.exe: Win32 Topmost 제어, 로그 출력, 백그라운드 프로세스 생명주기를 관리하는 Go 메인 실행 파일.BlePairer.cs/BlePairer.exe: Windows.Devices.Bluetooth / WinRT 네이티브 API를 활용한 블루투스 LE 모니터 및 페어링 C# 백엔드 엔진.go.mod: Go 모듈 정의 파일.
빌드 방법
1. C# 엔진 빌드 (BlePairer.exe)
Windows 기본 .NET Framework 컴파일러(csc.exe)를 사용하여 빌드합니다:
& "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe" `
/r:"C:\Windows\Microsoft.NET\assembly\GAC_MSIL\System.Runtime\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Runtime.dll" `
/r:"C:\Windows\Microsoft.NET\assembly\GAC_MSIL\System.Runtime.InteropServices.WindowsRuntime\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Runtime.InteropServices.WindowsRuntime.dll" `
/r:"C:\Windows\System32\WinMetadata\Windows.Devices.winmd" `
/r:"C:\Windows\System32\WinMetadata\Windows.Foundation.winmd" `
/r:System.Runtime.WindowsRuntime.dll `
/out:BlePairer.exe BlePairer.cs
2. Go 모니터 빌드 (logi_k370_monitor.exe)
go build -o logi_k370_monitor.exe main.go
실행 방법
.\logi_k370_monitor.exe
- 키보드/마우스 정상 연결 시:
[LOGI K370 B] ★ 정상 연결되었습니다 (동작 중) [LOGI M240 B] ★ 정상 연결되었습니다 (동작 중) - 키보드 페어링 모드(채널 버튼 3초 롱프레스) 시:
창이 화면 맨 앞으로 팝업되며 PIN 번호가 표시됩니다:
[LOGI K370 B] ★ 키보드 신호 포착! 창을 최상위(Topmost)로 띄웁니다... (d3:c9:dd:64:f1:xx) ====================================================== ★ [LOGI K370 B] 페어링 번호 감지! 키보드에서 [123456] 입력 후 [Enter]를 누르세요! ====================================================== - 마우스 페어링 모드(전원/페어링 버튼 활성화) 시:
[LOGI M240 B] ★ 마우스 신호 포착! 자동 페어링을 진행합니다... (xx:xx:xx:xx:xx:xx) [LOGI M240 B] ★ 블루투스 페어링 & 연결 완료!
Description