Symptom

I used the Roccat Ryos MK Pro for a while now. A few days ago, I installed Windows 10 on my second SSD to play some games I bought a few years back. After switching back to Linux, the volume keys on my Roccat Ryos MK Pro were not working anymore.

Cause

The problem is caused by the Windows driver of the Roccat Ryos keyboard. It switches the keyboard in a special mode so the windows driver can handle the volume / multimedia keys directly without passing them as ordinary Keyevents. I found a old Bugreport on sourceforge.

Fix

The suggested fix from the bugreport does not work anymore as the command changed but it lead to the right solution.

As you can see in the output below is the --driver-[on|off] switch.

[philipp@host ~]$ roccatryosmkcontrol --help
Usage:
  roccatryosmkcontrol [OPTION…] - controls extended capabilities of Roccat Ryos MK/Glow/Pro keyboards

Help Options:
  -h, --help                        Show help options

Application Options:
  -a, --activate-profile=NUMBER     activate profile NUMBER
  -d, --default-profile=NUMBER      set NUMBER as default profile
  --driver-off                      deactivate Windows driver state
  --driver-on                       activate Windows driver state
  -f, --read-firmware               read firmware version
  -l, --load=NUMBER                 load profile NUMBER
  -r, --read-rkp=FILENAME           read from rkp-file FILENAME
  -s, --save=NUMBER                 save as profile NUMBER
  --firmware=FILENAME               update firmware with FILENAME
  -v, --version                     print version
  -w, --write-rkp=FILENAME          write to rkp-file FILENAME
  --actual-profile                  print actual profile
  --reset                           reset to factory defaults

A simple call to roccatryosmkcontrol --driver-off made the keys work again. To make it change without calling the command, take a look at the update below.

Update - 2018-07-09 - roccat event handler configuration

I did stop searching for other solutions as this solution just worked for me. I do not boot Windows that much. Stefan sent me a link how to configure the roccat event handler to make it switch the mode automatically. Ok, I admit it. RTFM for the win :)

So here are the things you have to do to enable the event handler to set the driver mode:

Edit the roccat.ini file with nano ~/.config/roccat/roccat.ini. The content below will ensure that the keyboard is in the right mode after login.

[Eventhandler]
DriverState=off

The documentation of this event handler can be found on sourceforge. I updated the configuration on my system and it works like a charm.

Thank you Stefan for your hint and sorry for not RTFM from my side!