You are not logged in.

#1 2020-12-23 23:46:45

mepqfilho
Member
Registered: 2017-01-02
Posts: 32

Configuring Logitech MX Anywhere 2S extra buttons

I am trying to set up my Logitech MX Anywhere 2S to be able to use the extra buttons in Arch Linux. However, I am having troubles with what is proposed on the MX Master guide.
Walking through the whole process:

  1. Use grep for device name

    $ egrep "Name|Handlers" /proc/bus/input/devices | egrep -B1 'Handlers.*mouse'
    N: Name="ELAN Touchscreen"
    H: Handlers=event12 mouse1 
    --
    N: Name="ETPS/2 Elantech Touchpad"
    H: Handlers=event19 mouse2 
    --
    N: Name="Logitech MX Anywhere 2S"
    H: Handlers=sysrq kbd event11 mouse0 leds
  2. Set configuration file on etc/logid.cfg

    devices: ({
        name: "Logitech MX Anywhere 2S";
    
        buttons: (
            // Side button back
            { cid: 0x0053; action = {type: "Keypress"; keys: ["KEY_LEFTCTRL", "KEY_C"];};},
    
            // Scroll button right
            { cid: 0x005d; action = {type: "Keypress"; keys: ["KEY_LEFTCTRL", "KEY_V"];};}
        );
    });
  3. Run logiops through logid: error which has to be exited through Ctrl+C

    $ logid
    [ERROR] I/O Error while reading /etc/logid.cfg: FileIOException
    [WARN] Error adding device /dev/hidraw0: open failed: Permission denied
    [WARN] Error adding device /dev/hidraw1: open failed: Permission denied
    [WARN] Error adding device /dev/hidraw3: open failed: Permission denied
    [WARN] Error adding device /dev/hidraw2: open failed: Permission denied
    [WARN] Error adding device /dev/hidraw5: open failed: Permission denied
  4. Run logiops through systemctl: runs without errors, but messes up the scroll and does not enable the custom configurations

Also, the mouse buttons guide seems to be outdated as it instructs to set configuration on the now archaic xorg.conf file, so I'm unsure to follow it.

The logiops repository does state that only devices with HID++ 2.0 or higher are supported, and the guide only refers to the Master line of products, but judging from the existence of issues mentioning my exact model in the repository, I would say it should work as intended.

Any ideas on what could be happening and how to fix it?

Offline

#2 2020-12-24 17:48:41

yochananmarqos
Member
Registered: 2020-02-05
Posts: 197

Re: Configuring Logitech MX Anywhere 2S extra buttons

Why not use piper? It's available in the community repo.

Offline

#3 2020-12-24 19:31:34

mepqfilho
Member
Registered: 2017-01-02
Posts: 32

Re: Configuring Logitech MX Anywhere 2S extra buttons

yochananmarqos wrote:

Why not use piper? It's available in the community repo.

An out-of-the-box solution is also very welcome. Unfortunately, it seems that there are some troubles with my specific model, and no one really knows how to circumvent it.

I'll keep an eye out for it, as well as for other alternatives.

Last edited by mepqfilho (2020-12-24 19:31:51)

Offline

#4 2022-12-27 18:11:32

bricks973
Member
Registered: 2022-12-27
Posts: 1

Re: Configuring Logitech MX Anywhere 2S extra buttons

I know this is late and i'm not sure if you still have this issue, but I have this same issue everytime I need to setup my laptop and I forget to save the configs so I don't have to figure this out again.

Anyway, logid only works for me if I use sudo.

As far as your config goes, it looks right to me ??

Only difference I can see is in the CID codes. I'm missing the preceding "00".  Where you're using 0x0053 from the CID list, the Arch wiki shows 0x53 in their example, so thats what I went with and it works for me. 

Here's what I have to make the scroll buttons switch virtual desktops (I just left the first 2 rules the way they were since I copied them from the wiki):

    // Make thumb button 10.
    { cid: 0x53; action = { type: "Keypress"; keys: ["KEY_FORWARD"]; }; },

    // Make top button 11.
    { cid: 0x56; action = { type: "Keypress"; keys: ["KEY_BACK"];    }; },

    // Right scroll button switches to next virtual desktop
    { cid: 0x5d; action = { type: "Keypress"; keys: ["KEY_LEFTMETA", "KEY_LEFTCTRL", "KEY_LEFT"]; }; },

    // Left scroll button switches to previous virtual desktop
    { cid: 0x5b; action = { type: "Keypress"; keys: ["KEY_LEFTMETA", "KEY_LEFTCTRL", "KEY_RIGHT"]; }; }

I hope this helps if you haven't already worked it out by now.

Offline

Board footer

Powered by FluxBB