I bought this footswitch to improve my workflow and the only tool that support this specific keyboard (Scythe) is https://github.com/rgerganov/footswitch.
Now this tool is Ubuntu only on Linux that require a specific option in the kernel that add support for https://packages.debian.org/sid/utils/fnfxd. In my case with Debian this not work, I documented all my issues on https://github.com/rgerganov/footswitch/issues/36.
So for me was a problem and I chosen to do a mini driver (that is not a real driver) in python. I don’t know C++ pretty well and probably will require more time than do it with python.
Infact I made a little program in less of 60 lines with cli parameters, autodiscovery of the device (using the name and not ids or other things) with a config file.
My script support key status (up/down), a specific button and to run a custom script that can be bash or python ass your prefer.
In that way you can everything you want doing only the scripts that you need and don’t care about the system that execute them.
In few words you can remap any keyboard you want (not only the one in the photo), do not do only macro but scripts (that can do macros of course).
The idea is to have 2 keyboard, the mainly one with all the keys (and also multimedia keys that are easily to configure from your DE) and another one.
Usually the footswitch or pedal on key pressure write on output keys like numbers and from your DE you cannot configure what keyboard to use for a remapping, this script is there to help you.
The project is on https://github.com/Mte90/pydal, get fun!
The readme contain the installation, configure and how to use it with my examples and an introduction.