pwr-Solaar / Solaar

Linux device manager for Logitech devices
https://pwr-solaar.github.io/Solaar
GNU General Public License v2.0
5.39k stars 401 forks source link

Scroll Wheel Resolution (Soft Scroll) works improperly with MX Master 3s #1985

Closed s1davide closed 1 year ago

s1davide commented 1 year ago

Information

``` solaar version 1.1.8 Bolt Receiver Device path : /dev/hidraw3 USB id : 046d:C548 Serial : 32393541313131373146334138454436 Has 1 paired device(s) out of a maximum of 6. Notifications: wireless, software present (0x000900) Device activity counters: 1=173 1: MX Master 3S Device path : None WPID : B034 Codename : MX Master 3S Kind : mouse Protocol : HID++ 4.5 Serial number: CF638E2B Model ID: B03400000000 Unit ID: CF638E2B Bootloader: BL1 69.00.B0003 Firmware: RBM 22.00.B0003 Other: The power switch is located on the (unknown). Supports 36 HID++ 2.0 features: 0: ROOT {0000} V0 1: FEATURE SET {0001} V0 2: DEVICE FW VERSION {0003} V4 Firmware: Bootloader BL1 69.00.B0003 B03438FCA4E6 Firmware: Firmware RBM 22.00.B0003 B03438FCA4E6 Firmware: Other Unit ID: CF638E2B Model ID: B03400000000 Transport IDs: {'btleid': 'B034'} 3: DEVICE NAME {0005} V0 Name: MX Master 3S Kind: mouse 4: WIRELESS DEVICE STATUS {1D4B} V0 5: CONFIG CHANGE {0020} V0 6: CRYPTO ID {0021} V1 7: DEVICE FRIENDLY NAME {0007} V0 Friendly Name: MX Master 3S 8: UNIFIED BATTERY {1004} V3 Battery: 90%, discharging. 9: REPROG CONTROLS V4 {1B04} V5 Key/Button Actions (saved): {Left Button:Left Click, Right Button:Right Click, Middle Button:Mouse Middle Button, Back Button:Mouse Back Button, Forward Button:Mouse Forward Button, Mouse Gesture Button:Gesture Button Navigation, Smart Shift:Smart Shift} Key/Button Actions : {Left Button:Left Click, Right Button:Right Click, Middle Button:Mouse Middle Button, Back Button:Mouse Back Button, Forward Button:Mouse Forward Button, Mouse Gesture Button:Gesture Button Navigation, Smart Shift:Smart Shift} Key/Button Diversion (saved): {Middle Button:Regular, Back Button:Regular, Forward Button:Regular, Mouse Gesture Button:Regular, Smart Shift:Regular} Key/Button Diversion : {Middle Button:Regular, Back Button:Regular, Forward Button:Regular, Mouse Gesture Button:Regular, Smart Shift:Regular} 10: CHANGE HOST {1814} V1 Change Host : 1:david-asustufgaminga15fa506qmfa506qm 11: HOSTS INFO {1815} V2 Host 0 (paired): david-asustufgaminga15fa506qmfa506qm Host 1 (paired): DESKTOP-6JB6CGI Host 2 (unpaired): 12: XY STATS {2250} V1 13: ADJUSTABLE DPI {2201} V2 Sensitivity (DPI) (saved): 1000 Sensitivity (DPI) : 1000 14: SMART SHIFT {2110} V0 Scroll Wheel Ratcheted (saved): Freespinning Scroll Wheel Ratcheted : Freespinning Scroll Wheel Ratchet Speed (saved): 0 Scroll Wheel Ratchet Speed : 1 15: HIRES WHEEL {2121} V1 Multiplier: 15 Has invert: Normal wheel motion Has ratchet switch: Free wheel mode Low resolution mode HID notification Scroll Wheel Direction (saved): False Scroll Wheel Direction : False Scroll Wheel Resolution (saved): False Scroll Wheel Resolution : False Scroll Wheel Diversion (saved): False Scroll Wheel Diversion : False 16: THUMB WHEEL {2150} V0 Thumb Wheel Direction (saved): False Thumb Wheel Direction : False Thumb Wheel Diversion (saved): False Thumb Wheel Diversion : False 17: WHEEL STATS {2251} V0 18: DFUCONTROL {00C3} V0 19: DEVICE RESET {1802} V0 internal, hidden, unknown:000010 20: unknown:1803 {1803} V0 internal, hidden, unknown:000010 21: CONFIG DEVICE PROPS {1806} V8 internal, hidden, unknown:000010 22: unknown:1816 {1816} V0 internal, hidden, unknown:000010 23: OOBSTATE {1805} V0 internal, hidden 24: unknown:1830 {1830} V0 internal, hidden, unknown:000010 25: unknown:1891 {1891} V7 internal, hidden, unknown:000008 26: unknown:18A1 {18A1} V0 internal, hidden, unknown:000010 27: unknown:1E00 {1E00} V0 hidden 28: unknown:1E02 {1E02} V0 internal, hidden 29: unknown:1602 {1602} V0 30: unknown:1EB0 {1EB0} V0 internal, hidden, unknown:000010 31: unknown:1861 {1861} V1 internal, hidden, unknown:000010 32: unknown:9300 {9300} V0 internal, hidden, unknown:000010 33: unknown:9001 {9001} V0 internal, hidden, unknown:000010 34: unknown:1E22 {1E22} V0 internal, hidden, unknown:000010 35: unknown:9205 {9205} V0 internal, hidden, unknown:000010 Has 8 reprogrammable keys: 0: Left Button , default: Left Click => Left Click mse, analytics key events, pos:0, group:1, group mask:g1 reporting: default 1: Right Button , default: Right Click => Right Click mse, analytics key events, pos:0, group:1, group mask:g1 reporting: default 2: Middle Button , default: Mouse Middle Button => Mouse Middle Button mse, reprogrammable, divertable, raw XY, analytics key events, pos:0, group:2, group mask:g1,g2 reporting: default 3: Back Button , default: Mouse Back Button => Mouse Back Button mse, reprogrammable, divertable, raw XY, analytics key events, pos:0, group:2, group mask:g1,g2 reporting: default 4: Forward Button , default: Mouse Forward Button => Mouse Forward Button mse, reprogrammable, divertable, raw XY, analytics key events, pos:0, group:2, group mask:g1,g2 reporting: default 5: Mouse Gesture Button , default: Gesture Button Navigation => Gesture Button Navigation mse, reprogrammable, divertable, raw XY, analytics key events, pos:0, group:2, group mask:g1,g2 reporting: default 6: Smart Shift , default: Smart Shift => Smart Shift mse, reprogrammable, divertable, raw XY, analytics key events, pos:0, group:2, group mask:g1,g2 reporting: default 7: Virtual Gesture Button , default: Virtual Gesture Button => Virtual Gesture Button divertable, virtual, raw XY, force raw XY, pos:0, group:3, group mask:empty reporting: default Battery: 90%, discharging. Unifying Receiver Device path : /dev/hidraw4 USB id : 046d:C52B Serial : C3970E76 Firmware : 24.11.B0036 Bootloader : 02.09 Other : AA.AC Has 2 paired device(s) out of a maximum of 6. Notifications: wireless, software present (0x000900) Device activity counters: 1=172 1: MX Keys Keyboard Device path : /dev/hidraw5 WPID : 408A Codename : MX Keys Kind : keyboard Protocol : HID++ 4.5 Polling rate : 20 ms (50Hz) Serial number: 1AD9BE9F Model ID: B35B408A0000 Unit ID: 1AD9BE9F Bootloader: BL1 08.00.B0011 Firmware: MPK 12.01.B0013 Other: The power switch is located on the edge of top right corner. Supports 33 HID++ 2.0 features: 0: ROOT {0000} V0 1: FEATURE SET {0001} V0 2: DEVICE FW VERSION {0003} V2 Firmware: Bootloader BL1 08.00.B0011 00008169E8BB Firmware: Firmware MPK 12.01.B0013 408AFE037737 Firmware: Other Unit ID: 1AD9BE9F Model ID: B35B408A0000 Transport IDs: {'btleid': 'B35B', 'wpid': '408A'} 3: DEVICE NAME {0005} V0 Name: MX Keys Wireless Keyboard Kind: keyboard 4: WIRELESS DEVICE STATUS {1D4B} V0 5: CONFIG CHANGE {0020} V0 6: DEVICE FRIENDLY NAME {0007} V0 Friendly Name: MX Keys 7: BATTERY STATUS {1000} V1 Battery: 50%, discharging, next level 20%. 8: REPROG CONTROLS V4 {1B04} V4 Key/Button Diversion (saved): {Calculator:Regular, Show Desktop:Regular, Lock PC:Regular, Screen Capture/Print Screen:Regular, Brightness Down:Regular, Brightness Up:Regular, Host Switch Channel 1:Regular, Host Switch Channel 2:Regular, Host Switch Channel 3:Regular, Mission Control/Task View:Regular, Dashboard Launchpad/Action Center:Regular, Backlight Down:Regular, Backlight Up:Regular, Previous Fn:Regular, Play/Pause Fn:Regular, Next Fn:Regular, Mute Fn:Regular, Volume Down Fn:Regular, Volume Up Fn:Regular, App Contextual Menu/Right Click:Regular, Right Arrow:Regular, Left Arrow:Regular} Key/Button Diversion : {Calculator:Regular, Show Desktop:Regular, Lock PC:Regular, Screen Capture/Print Screen:Regular, Brightness Down:Regular, Brightness Up:Regular, Host Switch Channel 1:Regular, Host Switch Channel 2:Regular, Host Switch Channel 3:Regular, Mission Control/Task View:Regular, Dashboard Launchpad/Action Center:Regular, Backlight Down:Regular, Backlight Up:Regular, Previous Fn:Regular, Play/Pause Fn:Regular, Next Fn:Regular, Mute Fn:Regular, Volume Down Fn:Regular, Volume Up Fn:Regular, App Contextual Menu/Right Click:Regular, Right Arrow:Regular, Left Arrow:Regular} 9: CHANGE HOST {1814} V1 Change Host : 1:david-asustufgaminga15fa506qmfa506qm 10: HOSTS INFO {1815} V1 Host 0 (paired): david-asustufgaminga15fa506qmfa506qm Host 1 (paired): DESKTOP-6JB6CGI Host 2 (paired): moto g(20) 11: BACKLIGHT2 {1982} V1 Backlight (saved): False Backlight : False 12: K375S FN INVERSION {40A3} V0 Swap Fx function (saved): False Swap Fx function : False 13: ENCRYPTION {4100} V0 14: LOCK KEY STATE {4220} V0 15: KEYBOARD DISABLE KEYS {4521} V0 Disable keys (saved): {Caps Lock:False, Num Lock:False, Scroll Lock:False, Insert:False, Win:False} Disable keys : {Caps Lock:False, Num Lock:False, Scroll Lock:False, Insert:False, Win:False} 16: MULTIPLATFORM {4531} V1 Set OS (saved): Windows Set OS : Windows 17: DFUCONTROL SIGNED {00C2} V0 18: DEVICE RESET {1802} V0 internal, hidden 19: unknown:1803 {1803} V0 internal, hidden 20: CONFIG DEVICE PROPS {1806} V5 internal, hidden 21: unknown:1813 {1813} V0 internal, hidden 22: OOBSTATE {1805} V0 internal, hidden 23: unknown:1830 {1830} V0 internal, hidden 24: unknown:1890 {1890} V5 internal, hidden 25: unknown:1891 {1891} V5 internal, hidden 26: unknown:18A1 {18A1} V0 internal, hidden 27: unknown:1DF3 {1DF3} V0 internal, hidden 28: unknown:1E00 {1E00} V0 hidden 29: unknown:1EB0 {1EB0} V0 internal, hidden 30: unknown:1861 {1861} V0 internal, hidden 31: unknown:1A20 {1A20} V0 internal, hidden 32: unknown:18B0 {18B0} V0 internal, hidden Has 24 reprogrammable keys: 0: Host Switch Channel 1 , default: HostSwitch Channel 1 => HostSwitch Channel 1 nonstandard, divertable, persistently divertable, analytics key events, pos:0, group:0, group mask:empty reporting: default 1: Host Switch Channel 2 , default: HostSwitch Channel 2 => HostSwitch Channel 2 nonstandard, divertable, persistently divertable, analytics key events, pos:0, group:0, group mask:empty reporting: default 2: Host Switch Channel 3 , default: HostSwitch Channel 3 => HostSwitch Channel 3 nonstandard, divertable, persistently divertable, analytics key events, pos:0, group:0, group mask:empty reporting: default 3: Brightness Down , default: Brightness Down => Brightness Down is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:1, group:0, group mask:empty reporting: default 4: Brightness Up , default: Brightness Up => Brightness Up is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:2, group:0, group mask:empty reporting: default 5: Mission Control/Task View , default: Mission Control/Task View => Mission Control/Task View is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:3, group:0, group mask:empty reporting: default 6: Dashboard Launchpad/Action Center, default: Dashboard Launchpad/Action Center => Dashboard Launchpad/Action Center is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:4, group:0, group mask:empty reporting: default 7: Show Desktop , default: Show Desktop => Show Desktop is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:5, group:0, group mask:empty reporting: default 8: Backlight Down , default: Backlight Down => Backlight Down is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:6, group:0, group mask:empty reporting: default 9: Backlight Up , default: Backlight Up => Backlight Up is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:7, group:0, group mask:empty reporting: default 10: Previous Fn , default: Previous => Previous is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:8, group:0, group mask:empty reporting: default 11: Play/Pause Fn , default: Play/Pause => Play/Pause is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:9, group:0, group mask:empty reporting: default 12: Next Fn , default: Next => Next is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:10, group:0, group mask:empty reporting: default 13: Mute Fn , default: Mute => Mute is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:11, group:0, group mask:empty reporting: default 14: Volume Down Fn , default: Volume Down => Volume Down is FN, FN sensitive, reprogrammable, divertable, persistently divertable, analytics key events, pos:12, group:0, group mask:empty reporting: default 15: Volume Up Fn , default: Volume Up => Volume Up nonstandard, reprogrammable, divertable, persistently divertable, analytics key events, pos:0, group:0, group mask:empty reporting: default 16: Calculator , default: Calculator => Calculator nonstandard, reprogrammable, divertable, persistently divertable, analytics key events, pos:0, group:0, group mask:empty reporting: default 17: Screen Capture/Print Screen, default: Screen Capture => Screen Capture nonstandard, reprogrammable, divertable, persistently divertable, analytics key events, pos:0, group:0, group mask:empty reporting: default 18: App Contextual Menu/Right Click, default: Right Click/App Contextual Menu => Right Click/App Contextual Menu nonstandard, reprogrammable, divertable, persistently divertable, analytics key events, pos:0, group:0, group mask:empty reporting: default 19: Lock PC , default: WindowsLock => WindowsLock nonstandard, reprogrammable, divertable, persistently divertable, analytics key events, pos:0, group:0, group mask:empty reporting: default 20: Left Arrow , default: Keyboard Left Arrow => Keyboard Left Arrow nonstandard, divertable, persistently divertable, analytics key events, pos:0, group:0, group mask:empty reporting: default 21: Right Arrow , default: Keyboard Right Arrow => Keyboard Right Arrow nonstandard, divertable, persistently divertable, analytics key events, pos:0, group:0, group mask:empty reporting: default 22: F Lock , default: Do Nothing One => Do Nothing One is FN, analytics key events, pos:0, group:0, group mask:empty reporting: default 23: FN Key , default: Do Nothing One => Do Nothing One nonstandard, analytics key events, pos:0, group:0, group mask:empty reporting: default Battery: 50%, discharging, next level 20%. 2: MX Master 3 Wireless Mouse Device path : /dev/hidraw6 WPID : 4082 Codename : MX Master 3 Kind : mouse Protocol : HID++ 4.5 Polling rate : 8 ms (125Hz) Serial number: 5EAEC96C The power switch is located on the base. Battery: unknown (device is offline). ```

config.yaml

``` - 1.1.8 - _NAME: MX Master 3 Wireless Mouse _modelId: B02340820000 _sensitive: {divert-keys: false, dpi: ignore, hires-smooth-resolution: true, mouse-gestures: true, reprogrammable-keys: false} _serial: 5EAEC96C _unitId: 5EAEC96C _wpid: '4082' divert-keys: {0: 2, 82: 0, 83: 0, 86: 0, 195: 0, 196: 0} dpi: '1000' hires-smooth-invert: false hires-smooth-resolution: true reprogrammable-keys: {80: 80, 81: 81, 82: 82, 83: 83, 86: 86, 195: 195, 196: 196} smart-shift: 0 thumb-scroll-invert: false thumb-scroll-mode: false - _NAME: MX Keys Keyboard _absent: [hi-res-scroll, lowres-scroll-mode, hires-smooth-invert, hires-smooth-resolution, hires-scroll-mode, scroll-ratchet, smart-shift, thumb-scroll-invert, thumb-scroll-mode, onboard_profiles, report_rate, pointer_speed, dpi, speed-change, backlight-timed, reprogrammable-keys, persistent-remappable-keys, crown-smooth, divert-crown, divert-gkeys, m-key-leds, mr-key-led, gesture2-gestures, gesture2-divert, gesture2-params, sidetone, equalizer] _battery: 4096 _modelId: B35B408A0000 _sensitive: {backlight: true} _serial: 1AD9BE9F _unitId: 1AD9BE9F _wpid: 408A backlight: false change-host: null disable-keyboard-keys: {1: false, 2: false, 4: false, 8: false, 16: false} divert-keys: {10: 0, 110: 0, 111: 0, 191: 0, 199: 0, 200: 0, 209: 0, 210: 0, 211: 0, 224: 0, 225: 0, 226: 0, 227: 0, 228: 0, 229: 0, 230: 0, 231: 0, 232: 0, 233: 0, 234: 0, 235: 0, 236: 0} fn-swap: false multiplatform: 0 - _NAME: MX Master 3S _absent: [hi-res-scroll, lowres-scroll-mode, onboard_profiles, report_rate, pointer_speed, speed-change, backlight, backlight-timed, fn-swap, persistent-remappable-keys, disable-keyboard-keys, crown-smooth, divert-crown, divert-gkeys, m-key-leds, mr-key-led, multiplatform, gesture2-gestures, gesture2-divert, gesture2-params, sidetone, equalizer] _battery: 4100 _modelId: B03400000000 _sensitive: {hires-smooth-resolution: true} _serial: CF638E2B _unitId: CF638E2B _wpid: B034 change-host: null divert-keys: {82: 0, 83: 0, 86: 0, 195: 0, 196: 0} dpi: 1000 hires-scroll-mode: false hires-smooth-invert: false hires-smooth-resolution: false reprogrammable-keys: {80: 80, 81: 81, 82: 82, 83: 83, 86: 86, 195: 195, 196: 196} scroll-ratchet: 1 smart-shift: 0 thumb-scroll-invert: false thumb-scroll-mode: false ```
2023-02-08 20:16:19,725,725     INFO [MainThread] root: language en_US (UTF-8), translations path None
2023-02-08 20:16:19,827,827     INFO [MainThread] logitech_receiver.diversion: GDK Keymap set up
2023-02-08 20:16:19,840,840     INFO [MainThread] solaar.upower: connected to system dbus, watching for suspend/resume events
2023-02-08 20:16:19,879,879     INFO [MainThread] solaar.ui.notify: starting desktop notifications
2023-02-08 20:16:19,930,930     INFO [MainThread] solaar.listener: starting receiver listening threads
2023-02-08 20:16:19,932,932  WARNING [MainThread] hidapi.udev: Report Descriptor not processed for BID 0003 VID 0000046D PID 0000C548: No module named 'hid_parser'
2023-02-08 20:16:19,932,932     INFO [MainThread] hidapi.udev: Found device BID 0003 VID 0000046D PID 0000C548 HID++ None None USB 0 2
2023-02-08 20:16:19,932,932  WARNING [MainThread] hidapi.udev: Report Descriptor not processed for BID 0003 VID 0000046D PID 0000C548: No module named 'hid_parser'
2023-02-08 20:16:19,932,932     INFO [MainThread] hidapi.udev: Found device BID 0003 VID 0000046D PID 0000C548 HID++ None None USB 1 2
2023-02-08 20:16:19,933,933  WARNING [MainThread] hidapi.udev: Report Descriptor not processed for BID 0003 VID 0000046D PID 0000C548: No module named 'hid_parser'
2023-02-08 20:16:19,933,933     INFO [MainThread] hidapi.udev: Found device BID 0003 VID 0000046D PID 0000C548 HID++ None None USB 2 2
2023-02-08 20:16:19,933,933     INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw3', bus_id=3, vendor_id='046D', product_id='C548', interface=2, driver='hid-generic', manufacturer=None, product=None, serial='', release=None, isDevice=None, hidpp_short=None, hidpp_long=None)
2023-02-08 20:16:19,989,989     INFO [MainThread] logitech_receiver.base: New lock 14
2023-02-08 20:16:19,991,991     INFO [ReceiverListener:hidraw3] logitech_receiver.listener: started with <BoltReceiver(/dev/hidraw3,14)> (14)
2023-02-08 20:16:19,991,991     INFO [ReceiverListener:hidraw3] solaar.listener: <BoltReceiver(/dev/hidraw3,14)>: notifications listener has started (14)
2023-02-08 20:16:19,992,992     INFO [ReceiverListener:hidraw3] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw3)>
2023-02-08 20:16:19,993,993  WARNING [MainThread] hidapi.udev: Report Descriptor not processed for BID 0003 VID 0000046D PID 0000C52B: No module named 'hid_parser'
2023-02-08 20:16:19,993,993     INFO [MainThread] hidapi.udev: Found device BID 0003 VID 0000046D PID 0000C52B HID++ None None USB 2 2
2023-02-08 20:16:19,993,993     INFO [MainThread] solaar.listener: receiver event add DeviceInfo(path='/dev/hidraw4', bus_id=3, vendor_id='046D', product_id='C52B', interface=2, driver='logitech-djreceiver', manufacturer=None, product=None, serial='', release=None, isDevice=None, hidpp_short=None, hidpp_long=None)
2023-02-08 20:16:19,994,994     INFO [MainThread] logitech_receiver.base: New lock 15
2023-02-08 20:16:19,997,997     INFO [ReceiverListener:hidraw3] logitech_receiver.receiver: <BoltReceiver(/dev/hidraw3,14)>: receiver notifications enabled => ('wireless', 'software present')
2023-02-08 20:16:20,001,001     INFO [ReceiverListener:hidraw4] logitech_receiver.listener: started with <UnifyingReceiver(/dev/hidraw4,15)> (15)
2023-02-08 20:16:20,001,001     INFO [ReceiverListener:hidraw4] solaar.listener: <UnifyingReceiver(/dev/hidraw4,15)>: notifications listener has started (15)
2023-02-08 20:16:20,001,001     INFO [ReceiverListener:hidraw4] logitech_receiver.base: New lock <_ThreadedHandle(/dev/hidraw4)>
2023-02-08 20:16:20,002,002  WARNING [MainThread] hidapi.udev: Report Descriptor not processed for BID 0018 VID 000004F3 PID 0000307A: No module named 'hid_parser'
2023-02-08 20:16:20,008,008     INFO [ReceiverListener:hidraw3] solaar.listener: status_changed <BoltReceiver(/dev/hidraw3,14)>: present, No paired devices. (0) 
2023-02-08 20:16:20,013,013     INFO [ReceiverListener:hidraw4] logitech_receiver.receiver: <UnifyingReceiver(/dev/hidraw4,15)>: receiver notifications enabled => ('wireless', 'software present')
2023-02-08 20:16:20,021,021     INFO [ReceiverListener:hidraw4] solaar.listener: status_changed <UnifyingReceiver(/dev/hidraw4,15)>: present, No paired devices. (0) 
2023-02-08 20:16:20,022,022     INFO [ReceiverListener:hidraw4] solaar.listener: ignoring DJ pairing notification Notification(20,1,41,01,8A401E4000000400000000)
2023-02-08 20:16:20,022,022     INFO [ReceiverListener:hidraw4] solaar.listener: ignoring DJ pairing notification Notification(20,2,41,01,8240060000000400000000)
2023-02-08 20:16:20,022,022     INFO [ReceiverListener:hidraw4] solaar.listener: ignoring DJ pairing notification Notification(20,0,41,02,0000000000000000000000)
2023-02-08 20:16:20,024,024     INFO [ReceiverListener:hidraw4] logitech_receiver.receiver: <UnifyingReceiver(/dev/hidraw4,15)>: found new device 1 (408A)
2023-02-08 20:16:20,024,024     INFO [ReceiverListener:hidraw4] solaar.listener: connection Notification(10,1,41,04,318A40) for <Device(1,408A,MX Keys Keyboard,1AD9BE9F)> (keyboard)
2023-02-08 20:16:20,027,027     INFO [ReceiverListener:hidraw4] solaar.listener: status_changed <UnifyingReceiver(/dev/hidraw4,15)>: present, 1 paired device. (0) 
2023-02-08 20:16:20,041,041     INFO [ReceiverListener:hidraw4] logitech_receiver.base: New lock 18
2023-02-08 20:16:20,275,275     INFO [ReceiverListener:hidraw4] solaar.listener: status_changed <Device(1,408A,MX Keys Keyboard,1AD9BE9F)>: paired online, {'LINK ENCRYPTED': True, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 
2023-02-08 20:16:21,014,014     INFO [ReceiverListener:hidraw3] logitech_receiver.receiver: <BoltReceiver(/dev/hidraw3,14)>: found new device 1 (B034)
2023-02-08 20:16:21,014,014     INFO [ReceiverListener:hidraw3] solaar.listener: connection Notification(10,1,41,10,0234B0) for <Device(1,B034,MX Master 3S,CF638E2B)> (mouse)
2023-02-08 20:16:21,179,179     INFO [ReceiverListener:hidraw3] solaar.listener: status_changed <BoltReceiver(/dev/hidraw3,14)>: present, 1 paired device. (0) 
2023-02-08 20:16:21,275,275     INFO [ReceiverListener:hidraw3] solaar.listener: status_changed <Device(1,B034,MX Master 3S,CF638E2B)>: paired online, {'LINK ENCRYPTED': True, 'BATTERY LEVEL': 90, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': None, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 
2023-02-08 20:16:21,890,890     INFO [ReceiverListener:hidraw3] logitech_receiver.hidpp20: Setting host name to bytearray(b'david-asustufgaminga15fa506qmfa506qm')
2023-02-08 20:16:21,980,980     INFO [ReceiverListener:hidraw3] logitech_receiver.status: <Device(1,B034,MX Master 3S,CF638E2B)> pushing device settings [<Setting([feature:toggle] MX Master 3S:hires-smooth-invert=None)>, <Setting([feature:toggle] MX Master 3S:hires-smooth-resolution=None)>, <Setting([feature:toggle] MX Master 3S:hires-scroll-mode=None)>, <Setting([feature:choice] MX Master 3S:scroll-ratchet=None)>, <Setting([feature:range] MX Master 3S:smart-shift=None)>, <Setting([feature:toggle] MX Master 3S:thumb-scroll-invert=None)>, <Setting([feature:toggle] MX Master 3S:thumb-scroll-mode=None)>, <Setting([feature:choice] MX Master 3S:dpi=None)>, <Setting([feature:map choice] MX Master 3S:reprogrammable-keys=None)>, <Setting([feature:map choice] MX Master 3S:divert-keys=None)>, <Setting([feature:choice] MX Master 3S:change-host=None)>]
2023-02-08 20:16:22,257,257  WARNING [ReceiverListener:hidraw3] logitech_receiver.settings: smart-shift: error applying value 0 so ignore it (<Device(1,B034,MX Master 3S,CF638E2B)>)
2023-02-08 20:16:22,329,329     INFO [ReceiverListener:hidraw4] logitech_receiver.hidpp20: Setting host name to bytearray(b'david-asustufgaminga15fa506qmfa506qm')
2023-02-08 20:16:22,491,491     INFO [ReceiverListener:hidraw4] logitech_receiver.status: <Device(1,408A,MX Keys Keyboard,1AD9BE9F)> pushing device settings [<Setting([feature:toggle] MX Keys:backlight=None)>, <Setting([feature:toggle] MX Keys:fn-swap=None)>, <Setting([feature:map choice] MX Keys:divert-keys=None)>, <Setting([feature:multiple toggle] MX Keys:disable-keyboard-keys=None)>, <Setting([feature:choice] MX Keys:multiplatform=None)>, <Setting([feature:choice] MX Keys:change-host=None)>]
2023-02-08 20:16:22,662,662     INFO [ReceiverListener:hidraw3] solaar.listener: status_changed <Device(1,B034,MX Master 3S,CF638E2B)>: paired online, {'LINK ENCRYPTED': True, 'BATTERY LEVEL': 90, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': None, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 
2023-02-08 20:16:23,619,619     INFO [ReceiverListener:hidraw4] solaar.listener: status_changed <Device(1,408A,MX Keys Keyboard,1AD9BE9F)>: paired online, {'LINK ENCRYPTED': True, 'BATTERY LEVEL': 50, 'BATTERY STATUS': NamedInt(0, 'discharging'), 'BATTERY NEXT LEVEL': 20, 'BATTERY VOLTAGE': None, 'BATTERY CHARGING': False, 'ERROR': None} (0) 
2023-02-08 20:16:23,622,622     INFO [ReceiverListener:hidraw4] logitech_receiver.receiver: <UnifyingReceiver(/dev/hidraw4,15)>: found new device 2 (4082)
2023-02-08 20:16:23,622,622     INFO [ReceiverListener:hidraw4] solaar.listener: connection Notification(10,2,41,04,728240) for <Device(2,4082,MX Master 3 Wireless Mouse,5EAEC96C)> (mouse)
2023-02-08 20:16:23,625,625     INFO [ReceiverListener:hidraw4] solaar.listener: status_changed <UnifyingReceiver(/dev/hidraw4,15)>: present, 2 paired devices. (0) 
2023-02-08 20:16:23,626,626     INFO [ReceiverListener:hidraw4] solaar.listener: status_changed <Device(2,4082,MX Master 3 Wireless Mouse,5EAEC96C)>: paired offline, {'LINK ENCRYPTED': True} (0) 
2023-02-08 20:16:23,626,626     INFO [ReceiverListener:hidraw4] logitech_receiver.notifications: <Device(1,408A,MX Keys Keyboard,1AD9BE9F)>: spurious BATTERY status Notification(11,1,07,10,0404C0060A0000000000000000000000)

Describe the bug The MX Master 3 and MX Master 3s mice have the option of smooth scroll, I activated it for the MX Master 3 with the option 'Scroll Whell Resolution' and it works very well the scroll moves in a very smooth way, but for the MX Master 3s if I activate this option it doesn't make smooth scroll but rather it accelerates the scroll in an exaggerated way. This option is very useful for reading texts.

To Reproduce Steps to reproduce the behavior: Use MX Master 3s instead of MX Master 3s.

  1. Open Solaar UI
  2. Enable the option 'Scroll Wheel Resolution'.
  3. Scroll in any application, scrolls at an exaggerated speed
pfps commented 1 year ago

Modifying the scroll wheel resolution setting in Solaar is not recommended. What is happening is that on the MX Master 3 the Linux HID++ driver is also changing the scroll wheel resolution and also changing how scroll messages are interpreted and so smooth scrolling correctly results. The driver has multiple issues and does not set up smooth scrolling for the 3S so all that changing the setting is doing is to make scrolling very fast.

s1davide commented 1 year ago

Thank you very much for answering, can the driver be changed to use this feature, or is this the only option for gnu/linux?

pfps commented 1 year ago

I believe that there are upcoming changes to the driver that will implement smooth scrolling for any Logitech mouse that supports it.

s1davide commented 1 year ago

Thank you again for your answer, is there any website or repository where I can check the progress, or notice new features or drivers?

pfps commented 1 year ago

As far as I know discussion of these changes occurs in the linux kernel mailing lists, linux-input@vger.kernel.org and linux-input@vger.kernel.org. I'm cc'd on the Logitech discussion because I commented earlier. I'm not aware of anything like GitHub for this.

Some Linux sites, like Phoronix, do mention changes of this sort. The changes were supposed to go in to the current version of Linux but were pulled out because of some problems and Phoronix mentioned both.

s1davide commented 1 year ago

I appreciate you taking the time to explain, thank you.