I have a piece of usb hardware, for which I know the driver. However, the vendor id and product id do not match the VID, PID pair registered in the driver. Is there a way in lin
In case you want to make this change permanent and assign specific driver to device (VID, PID) you may find this answer useful.
For example create new file/etc/udev/rules.d/98-joystick.rules with content:
ACTION=="add", ATTRS{idVendor}=="1345", ATTRS{idProduct}=="6005", RUN+="/sbin/modprobe xpad" RUN+="/bin/sh -c 'echo 1345 6005 > /sys/bus/usb/drivers/xpad/new_id'"
Replace 1345 with your VID and 6005 with your PID.
Replace xpad with appropriate driver.
Run following command:
$ sudo udevadm control --reload
Unplug and plug your device back and check if the new driver is loaded.
Example shown here is for fixing driver issues with Speedlink Strike FX Gamepad (SL-6537-BK)