One of my biggest "frustrations" when migrating from OpenBSD to FreeBSD as my daily driver, was the loss of of working media keys on my Das Keyboard - especially the very convenient volume jog wheel.
After some poking around i confirmed that the usbhid driver was working - and also default enabled in FreeBSD15 kernel. Xev tool printed the correct keycode events
keycode 122 = XF86AudioLowerVolume
keycode 123 = XF86AudioRaiseVolume
keycode 172 = XF86AudioPlay
The problem narrowed down to how to map these event to something useful
I found a working solution in this discussion thread, by using the x11/sxhkd daemon to pass the events to mixer(8)
https://forums.freebsd.org/threads/howto-enabling-multimedia-keys-gamepads-joysticks-for-desktop-usbhid.84464/
I had to tweak the sxhkd config a bit to work properly with mixer
~/.config/sxhkd/sxhkdrc
XF86Audio{Play,LowerVolume,RaiseVolume}
mixer {vol.mute="toggle",vol="-3%", vol="+3%"}
Then I invoke the sxhkd daemon from my ~/.xsession file
sxhkd &
exec /usr/local/bin/fvwm3
Viola!
#FreeBSD #Solved #X11 #FVWM3 #Xorg #AskFedi