-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Logitech HID
hasu@tmk edited this page Mar 2, 2026
·
3 revisions
https://github.com/Logitech/cpg-docs
https://lekensteyn.nl/files/logitech/logitech_hidpp10_specification_for_Unifying_Receivers.pdf
https://lekensteyn.nl/files/logitech/logitech_hidpp_2.0_specification_draft_2012-06-04.pdf
https://github.com/pwr-Solaar/Solaar
https://pwr-solaar.github.io/Solaar/
$ pipx install --system-site-packages solaar
installed package solaar 1.1.19, installed using Python 3.12.3
These apps are now globally available
- solaar
done! ✨ 🌟 ✨
$ which solaar
/home/noname/.local/bin/solaar
$ solaar --version
solaar 1.1.19
$ solaar show
solaar version 1.1.19
MX518 Gaming Mouse
Device path : /dev/hidraw1
USB id : 046d:C08E
Codename : MX518
Kind : mouse
Protocol : HID++ 4.2
Report Rate : 1ms
Serial number:
Model ID: C08E00000000
Unit ID: 31384706
0: U1 40.00.B0004
1: BOT 93.00.B0001
Supports 16 HID++ 2.0 features:
0: ROOT {0000} V0
1: FEATURE SET {0001} V0
2: DEVICE FW VERSION {0003} V2
Firmware: 0 U1 40.00.B0004 C08E
Firmware: 1 BOT 93.00.B0001 AAF0
Unit ID: 31384706 Model ID: C08E00000000 Transport IDs: {'usbid': 'C08E'}
3: DEVICE NAME {0005} V0
Name: MX518 Gaming Mouse
Kind: mouse
4: unknown:1E00 {001E} V0 hidden
5: unknown:1E22 {221E} V0 internal, hidden
6: unknown:1EB0 {B01E} V0 internal, hidden
7: ADJUSTABLE DPI {2201} V1
Sensitivity (DPI) (saved): 1600
Sensitivity (DPI) : 1600
8: REPORT RATE {8060} V0
Report Rate: 1ms
Report Rate (saved): 1ms
Report Rate : 1ms
9: ONBOARD PROFILES {8100} V0
Device Mode: On-Board
Onboard Profiles (saved): Profile 2
Onboard Profiles : Profile 2
10: MOUSE BUTTON SPY {8110} V0
11: DFUCONTROL SIGNED {00C2} V0
12: unknown:1801 {0118} V0 internal, hidden
13: DEVICE RESET {1802} V0
14: CONFIG DEVICE PROPS {1806} V0
15: unknown:18B1 {B118} V0 internal, hidden
Battery status unavailable.
$ solaar profiles 1
#Dumping profiles from MX518 Gaming Mouse
!OnboardProfiles
buttons: 8
count: 5
gbuttons: 8
name: MX518 Gaming Mouse
profiles:
1: !OnboardProfile
angle_snap: 255
blue: 255
buttons:
- !Button {behavior: 8, type: 1, value: 1}
- !Button {behavior: 8, type: 1, value: 2}
- !Button {behavior: 8, type: 1, value: 4}
- !Button {behavior: 8, type: 1, value: 8}
- !Button {behavior: 8, type: 1, value: 16}
- !Button {behavior: 9, data: 255, value: 4}
- !Button {behavior: 9, data: 255, value: 3}
- !Button {behavior: 9, data: 255, value: 6}
enabled: 1
gbuttons:
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
green: 255
lighting:
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
name: ''
po_timeout: 65535
power_mode: 255
ps_timeout: 65535
red: 255
report_rate: 1
reserved: !!binary |
//////////8=
resolution_default_index: 1
resolution_shift_index: 0
resolutions:
- 400
- 800
- 1600
- 3200
- 6400
sector: 1
write_count: 65535
2: !OnboardProfile
angle_snap: 255
blue: 255
buttons:
- !Button {behavior: 8, type: 1, value: 1}
- !Button {behavior: 8, type: 1, value: 2}
- !Button {behavior: 8, type: 1, value: 64}
- !Button {behavior: 8, type: 1, value: 8}
- !Button {behavior: 8, type: 1, value: 16}
- !Button {behavior: 8, type: 1, value: 4}
- !Button {behavior: 8, modifiers: 1, type: 2, value: 26}
- !Button {behavior: 8, modifiers: 3, type: 2, value: 23}
enabled: 1
gbuttons:
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
green: 255
lighting:
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
name: PROFILE_NAME_DEFAULT
po_timeout: 65535
power_mode: 255
ps_timeout: 65535
red: 255
report_rate: 1
reserved: !!binary |
//////////8=
resolution_default_index: 1
resolution_shift_index: 0
resolutions:
- 800
- 1600
- 2400
- 3200
- 4800
sector: 2
write_count: 65535
3: !OnboardProfile
angle_snap: 255
blue: 255
buttons:
- !Button {behavior: 8, type: 1, value: 1}
- !Button {behavior: 8, type: 1, value: 2}
- !Button {behavior: 8, type: 1, value: 4}
- !Button {behavior: 8, type: 1, value: 8}
- !Button {behavior: 8, type: 1, value: 16}
- !Button {behavior: 8, modifiers: 1, type: 2, value: 6}
- !Button {behavior: 8, type: 1, value: 4}
- !Button {behavior: 9, data: 16, value: 5}
enabled: 1
gbuttons:
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
green: 255
lighting:
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
name: PROFILE_NAME_DEFAULT
po_timeout: 65535
power_mode: 255
ps_timeout: 65535
red: 255
report_rate: 1
reserved: !!binary |
//////////8=
resolution_default_index: 2
resolution_shift_index: 1
resolutions:
- 400
- 800
- 1000
- 1200
- 1600
sector: 3
write_count: 65535
4: !OnboardProfile
angle_snap: 255
blue: 255
buttons:
- !Button {behavior: 8, type: 1, value: 1}
- !Button {behavior: 8, type: 1, value: 2}
- !Button {behavior: 8, type: 1, value: 4}
- !Button {behavior: 8, type: 1, value: 8}
- !Button {behavior: 8, type: 1, value: 16}
- !Button {behavior: 9, data: 255, value: 4}
- !Button {behavior: 9, data: 255, value: 3}
- !Button {behavior: 9, data: 255, value: 6}
enabled: 0
gbuttons:
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
- !Button {behavior: 15, bytes: !!binary "/////w==\n"}
green: 255
lighting:
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
name: "\u914D\u7F6E\u6587\u4EF6 4"
po_timeout: 65535
power_mode: 255
ps_timeout: 65535
red: 255
report_rate: 1
reserved: !!binary |
//////////8=
resolution_default_index: 1
resolution_shift_index: 0
resolutions:
- 400
- 800
- 1600
- 3200
- 6400
sector: 4
write_count: 65535
5: !OnboardProfile
angle_snap: 0
blue: 255
buttons:
- !Button {behavior: 8, type: 1, value: 1}
- !Button {behavior: 8, type: 1, value: 2}
- !Button {behavior: 8, type: 1, value: 4}
- !Button {behavior: 8, type: 1, value: 8}
- !Button {behavior: 8, type: 1, value: 16}
- !Button {behavior: 9, data: 255, value: 4}
- !Button {behavior: 9, data: 255, value: 3}
- !Button {behavior: 9, data: 255, value: 6}
enabled: 0
gbuttons:
- !Button {behavior: 8, type: 1, value: 1}
- !Button {behavior: 8, type: 1, value: 2}
- !Button {behavior: 8, type: 1, value: 4}
- !Button {behavior: 8, type: 1, value: 8}
- !Button {behavior: 8, type: 1, value: 16}
- !Button {behavior: 9, data: 255, value: 4}
- !Button {behavior: 9, data: 255, value: 3}
- !Button {behavior: 9, data: 255, value: 6}
green: 255
lighting:
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
- !LEDEffectSetting {ID: null, bytes: !!binary "//////////////8=\n"}
name: "\u914D\u7F6E\u6587\u4EF6 5"
po_timeout: 65535
power_mode: 255
ps_timeout: 65535
red: 255
report_rate: 1
reserved: !!binary |
//////////8=
resolution_default_index: 1
resolution_shift_index: 0
resolutions:
- 400
- 800
- 1600
- 3200
- 6400
sector: 5
write_count: 2
sectors: 16
size: 256
version: 3