Composite USB devices consist of a combination of two or more different devices, such as a video input device and a storage device or a microphone and a mouse device. If you want to allow one or more of the components to be available for redirection, you can split the composite device into its component interfaces, exclude certain interfaces from redirection and include others.
You can set a policy that automatically splits composite devices. If automatic device splitting does not work for a specific device, or if automatic splitting does not produce the results your application requires, you can split composite devices manually.
Automatic Device Splitting
If you enable automatic device splitting Horizon attempts to split the functions, or devices, in a composite device according to the filter rules that are in effect. For example, a dictation microphone might be split automatically so that the mouse device remains local to the client, but the rest of the devices are forwarded to the remote desktop.
The following table shows how the value of the Allow Auto Device Splitting setting determines whether Horizon Client attempts to split composite USB devices automatically. By default, automatic splitting is disabled.
Allow Auto Device Splitting Policy on Horizon Agent | Allow Auto Device Splitting Policy on Horizon Client | Combined Effective Allow Auto Device Splitting Policy |
---|---|---|
Allow - Default Client Setting | false (automatic splitting disabled) | Automatic splitting disabled |
Allow - Default Client Setting | true (automatic splitting enabled) | Automatic splitting enabled |
Allow - Default Client Setting | Not defined | Automatic splitting enabled |
Allow - Override Client Setting | Any or not defined | Automatic splitting enabled |
Not defined | Not defined | Automatic splitting disabled |
By default, Horizon disables automatic splitting, and excludes any audio-output, keyboard, mouse, or smart-card components of a composite USB device from redirection.
Horizon applies the device splitting policy settings before it applies any filter policy settings. If you have enabled automatic splitting and do not explicitly exclude a composite USB device from being split by specifying its vendor and product IDs, Horizon examines each interface of the composite USB device to decide which interfaces should be excluded or included according to the filter policy settings. If you have disabled automatic device splitting and do not explicitly specify the vendor and product IDs of a composite USB device that you want to split, Horizon applies the filter policy settings to the entire device.
If you enable automatic splitting, you can use the Exclude Vid/Pid Device From Split policy to specify the composite USB devices that you want to exclude from splitting.
Manual Device Splitting
You can use the Split Vid/Pid Device policy to specify the vendor and product IDs of a composite USB device that you want to split. You can also specify the interfaces of the components of a composite USB device that you want to exclude from redirection. Horizon does not apply any filter policy settings to components that you exclude in this way.
Splitting Modifiers for Device-Splitting Policy Settings on Horizon Agent shows the modifiers that specify how Horizon Client handles a Horizon Agent device splitting policy setting if there is an equivalent device splitting policy setting for Horizon Client. These modifiers apply to all device-splitting policy settings.
Modifier | Description |
---|---|
m (merge) | Horizon Client applies the Horizon Agent device splitting policy setting in addition to the Horizon Client device splitting policy setting. |
o (override) | Horizon Client uses the Horizon Agent device splitting policy setting instead of the Horizon Client device splitting policy setting. |
Examples of Applying Splitting Modifiers to Device-Splitting Policy Settings shows examples of how Horizon Client processes the settings for Exclude Device From Split by Vendor/Product ID when you specify different splitting modifiers.
Exclude Device From Split by Vendor/Product ID on Horizon Agent | Exclude Device From Split by Vendor/Product ID on Horizon Client | Effective Exclude Device From Split by Vendor/Product ID Policy Setting Used by Horizon Client |
---|---|---|
m:vid-XXXX_pid-XXXX | vid-YYYY_pid-YYYY | vid-XXXX_pid-XXXX;vid-YYYY_pid-YYYY |
o:vid-XXXX_pid-XXXX | vid-YYYY_pid-YYYY | vid-XXXX_pid-XXXX |
m:vid-XXXX_pid-XXXX;vid-YYYY_pid-YYYY | vid-YYYY_pid-YYYY | vid-XXXX_pid-XXXX;vid-YYYY_pid-YYYY |
o:vid-XXXX_pid-XXXX;vid-YYYY_pid-YYYY | vid-YYYY_pid-YYYY | vid-XXXX_pid-XXXX;vid-YYYY_pid-YYYY |
Horizon Agent does not apply the device splitting policy settings on its side of the connection.
- Exclude Vid/Pid Device From Split
- Split Vid/Pid Device
A device splitting policy setting that excludes a device from being split takes precedence over any policy setting to split the device. If you define any interfaces or devices to be excluded from splitting, Horizon Client excludes the matching component devices from being available for redirection.
Examples of Setting Policies to Split Composite USB Devices
Set splitting policies for desktops to exclude devices with specific vendor and product IDs from redirection after automatic splitting and pass these policies to client computers:
- For Horizon Agent, set the Allow Auto Device Splitting policy to Allow - Override Client Setting.
- For Horizon Agent, se the Exclude VidPid From Split policy to o:vid-xxx_pid-yyyy, where xxx and yyyy are the appropriate IDs.
Allow automatic device splitting for desktops and specify policies for splitting specific devices on client computers:
- For Horizon Agent, set the Allow Auto Device Splitting policy to Allow - Override Client Setting.
- For the client device, set the Include Vid/Pid Device filter policy to include the specific device that you want to split; for example, vid-0781_pid-554c.
- For the client device, set the Split Vid/Pid Device policy to vid-0781_pid-554c(exintf:00;exintf:01) for example, to split a specified composite USB device so that interface 00 and interface 01 are excluded from redirection.