Symptoms
While forwarding an HID device with USB instead of sharing it between the client host system and the guest VM desktop. The Automatically connect when inserted is set but when he disconnects and reconnects the keyboard/HID device, it does not automatically reconnect as a USB device to the VM.Example:A USB composite device(keyboard) falls into the hid bootable category(its interface 1 is hid-bootable).vmware-view-usbd-XXXX.log:
2023-10-13T15:04:31.414-05:00| vmware-usbd| I125: DevFltr: Interface [0] - Family(s): keyboard
2023-10-13T15:04:31.414-05:00| vmware-usbd| I125: DevFltr: Interface [1] - Family(s): hid,hid-bootable
2023-10-13T15:04:31.414-05:00| vmware-usbd| I125: DevFltr: Interface [2] - Family(s): hid
Behaviour:
When we connect to the desktop, the device is automatically connected to the desktop, because the "Automatically connect at Startup" is checked.If you unplug the device and replug it, the device does not get connected to the desktop automatically because of the above rules.
Cause
The default Horizon Client behaviour is not to auto-reconnect USB HID-bootable devices, even if the "Automatically connected when inserted " option is checked.This is by design as HID devices are not usually redirected as USB devices, they are shared between the local system and the VM.When the HID device is multi-function, for instance, a keyboard with a card reader, you may want to forward the device with USB.However, the default behaviour on reconnecting is to make the HID device available to the local client system.
Resolution
This is a known issue.
Workaround
Configuration file Location
Guest O/SFile LocationWindowsC:\ProgramData\VMware\VMware USB Arbitrator Service\config.iniLinux/etc/vmware/configmacOSLibrary/Preferences/VMware Fusion/config
Procedure to add a device quirk to a Horizon Client:
This will force the client to automatically re-attach a device Document the usage of this key within your organization and ideally validate functionality after a client upgrade Back up and edit the appropriate configuration file.Edit the config file by adding a line to set the device quirk:
usb.quirks.device0="<Device Vendor ID>:<Device Product ID> allow”
Note: You can obtain the Device Vendor ID and Product ID by following the VMware Docs page Using Log Files for Troubleshooting and to Determine USB Device IDs.Restart the VMware USB arbitrator service or reboot the Client endpoint for the quirks to take effect.