Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • S Solaar
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 10
    • Issues 10
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 2
    • Merge requests 2
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • pwr-Solaar
  • Solaar
  • Merge requests
  • !350

Mx anywhere2 v4

  • Review changes

  • Download
  • Email patches
  • Plain diff
Closed Administrator requested to merge github/fork/mchehab/mx_anywhere2-v4 into master Mar 23, 2017
  • Overview 2
  • Commits 4
  • Pipelines 0
  • Changes 5

Created by: mchehab

Add support for controlling and events for the MX Anyware 2 High-res Wheel

The high-res wheel allows setting 3 properties:

if the wheel will scroll inverted;
if the wheel will use high-resolution (e. g. will scroll faster);
if the wheel will send HID++ or HID notifications.

Currently, the Logitech HID Kernel driver doesn't handle HID++ wheel notifications. So, when this mode is set, the scroll won't work on apps. It is possible to see the HID++ messages, though, by enabling solaar debug logs.

With this mouse, mouse movement and wheel HID events, on HID mode are like those:

000009159 ms 000008 ms (007961 us EP=83, Dev=6a) >>> 20 03 02 00 00 ff ff ff 00 00 00 00 00 00 00
000009167 ms 000008 ms (007957 us EP=83, Dev=6a) >>> 20 03 02 00 00 00 f0 ff 00 00 00 00 00 00 00
000009175 ms 000008 ms (007905 us EP=83, Dev=6a) >>> 20 03 02 00 00 ff ff ff 00 00 00 00 00 00 00
000009183 ms 000008 ms (007972 us EP=83, Dev=6a) >>> 20 03 02 00 00 00 f0 ff 00 00 00 00 00 00 00
000009191 ms 000008 ms (007940 us EP=83, Dev=6a) >>> 20 03 02 00 00 00 f0 ff 00 00 00 00 00 00 00
000009199 ms 000008 ms (007913 us EP=83, Dev=6a) >>> 20 03 02 00 00 00 f0 ff 00 00 00 00 00 00 00
000009207 ms 000008 ms (077958 us EP=83, Dev=6a) >>> 20 03 02 00 00 ff 0f 00 00 00 00 00 00 00 00
000009285 ms 000078 ms (007967 us EP=83, Dev=6a) >>> 20 03 02 00 00 00 f0 ff 00 00 00 00 00 00 00
000009293 ms 000008 ms (007916 us EP=83, Dev=6a) >>> 20 03 02 00 00 00 f0 ff 00 00 00 00 00 00 00
000009301 ms 000008 ms (615980 us EP=83, Dev=6a) >>> 20 03 02 00 00 00 10 00 00 00 00 00 00 00 00
000009917 ms 000616 ms (007940 us EP=83, Dev=6a) >>> 20 03 02 00 00 00 10 00 00 00 00 00 00 00 00
000009925 ms 000008 ms (007926 us EP=83, Dev=6a) >>> 20 03 02 00 00 01 00 00 00 00 00 00 00 00 00

Those packets start with "20" and have "00" for feature request_id (with is supposed to be DEVICE_FW_VERSION).

Ratchet HID events always come from feature 0x2121.

When the mouse is in HID++, wheel events also come from feature 0x2121.

When called via CLI, solaar show will display the settings for the mouse just after the high-res feature:

    11: HIRES WHEEL            {2121}   
        Multiplier: 8
        Has invert
          Normal wheel motion
        Has ratchet switch
          Free wheel mode
        Low resolution mode
        HID notification

Tested on my MX Anywhere 2 device on both CLI and GUI.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: github/fork/mchehab/mx_anywhere2-v4