Table of Contents

Joystick Research

uhidd

su -
pkg install 'uhidd'
dmesg | grep 'ugen'
uhidd -h -H 'uhid' -u '/dev/ugen0.6'

devd.conf

su -
pkg install 'uhidd'
ee '/usr/local/etc/devd/sidewinder-precision-pro-joystick-uhidd.conf'
notify 0 {
        match "type" "ATTACH";
        match "ugen" "ugen[0-9]+.[0-9]+";
        match "vendor" "0x045e";
        match "product" "0x0008";
        action "/usr/local/sbin/uhidd -h -H uhid -u /dev/$ugen";
};

TODO

su -l
mv '/usr/local/etc/devd/uhidd-devd.conf' '/usr/local/etc/devd/uhidd-devd.conf~'

TODO 2

su - root -c "sysctl 'hw.usb.usbhid.enable=0' && sleep 3 && sysctl 'hw.usb.usbhid.enable=1'"
1)
flightgear, neverball, seemingly doomsday but it freezes on launch
2)
it assigns a specific uhid# automatically
3)
it sounds like causing evdev to re-probe on the newly-created uhid# device could work? there's a cdev mention with devd -d, but FlightGear shows buttons fine without joystick/evdev binding?
4)
using these older drivers prevents USB multimedia keys from working and presumably would require uhidd to solve; hence use the newer usbhid driver with hw.usb.usbhid.enable=“1” and uhidd as-needed on game controllers