Skip to content

Virtually Caffeinated

A double-shot of knowledge

Menu
  • About Me
  • Useful Links

About Me

Profile
Jeremy Wheeler

I am an experienced Consulting Architect for VMware’s Professional Services Organization, End-user Computing specializing in VMware Horizon Suite product-line and SDDC. I have over 23 years of experience in the IT industry. In addition to his past experience, I have a passion for technology and thrives on educating customers. Additionally, I have 10 years of hands-on virtualization experience deploying full-life cycle solutions using VMware, CITRIX, and Hyper-V. I also has 18 years of experience in computer programming in various languages ranging from basic scripting to C, C++, PERL, .NET, SQL, and PowerShell. I’ve received acclaim from several clients for my in-depth and varied technical experience and exceptional hands-on customer satisfaction skills. In February 2013, I received VMware’s Spotlight award for my outstanding persistence and dedication to customers and was nominated again in October of 2013. I was awarded 2015 – 2017 vEXPERT.

  • Home
  • 2016
  • March
  • 15
  • Composite USB Devices Step-by-Step
VMware Horizon View

Composite USB Devices Step-by-Step

Jeremy Wheeler
March 15, 2016 6 mins


The goal:

ACME Inc. has requirements for specific peripheral devices to work with VDI. One of the devices is a Microsoft LifeCam Cinema Webcam. ACME’s vision is for when an end-user plugs-in a USB device the device should auto-connect to the users VDI session.

The challenge:

Microsoft LifeCam Cinema, a frequently used Webcam has difficulty working in the VDI environment. The device appears in the drop-down list from the Horizon View Client. When enabled the camera uses the Microsoft Webcam drivers that are installed in the image. This would be fine, and in fact a preferred method according to Microsoft. However, the Webcam doesn’t work in VDI using normal pass-through. If enable redirect for the Webcam, it switches to using the VMware Webcam drivers and it works fine in VDI. So how do we exclude a single device, accept all the others, and still have a functioning Webcam?

Solution Summary:

By enabling USB device splitting we are providing a dedicated channel for each device which also in-turn gives us better visibility of unique peripheral devices in the VDI environment.

  • Import Horizon View templates into Active Directory
  • Identify your VIDs/PIDs
  • Enable Horizon View Client GPO policies
  • Enable Horizon View Agent GPO policies
  • Validation

Preparation Steps

Follow these steps at the domain level for the GPO that you will be placing in the View OU:

Open Microsoft Group Policy Editor (gpedit.msc)

  1. Modify or create a new GPO by executing a right-click on ‘Group Policy Objects’ (image1) and then select ‘New’.
  2. Give your GPO a name.
  3. Select ‘Ok’ to save your new GPO.

Image1:

Edit your GPO (Image2)

  1. Expand Group Policy Objects
  2. Select your GPO
  3. Select ‘Edit’

Image2:

Templates can be obtained by visiting vmware.com and downloading the latest Horizon GPO bundle (Image3).

Image3:

Importing Templates

  1. Expand Computer Configuration and Policies
  2. Expand Administrative Templates
  3. Right-click on ‘Administrative Templates’ and select ‘Add/Remove Templates…’ (Image4)

Image4:

Select templates to import and ‘Open’ (Image5)

  1. ‘vdm_agent.adm’
  2. ‘vdm_client.adm’

Image5:

That’s the preparation steps now let’s move onto the physical end-point (we will come back to configure the GPOs at later step.)

Physical Client Steps Required

Verify the USB Webcam is visible on the endpoint device by checking the Windows Device Manager on the physical end-point (Image6).

Image6:

Quick summary of VIDS and PIDS

USB devices are identified primarily by their vendor identification (VID) and product identification (PID). VIDs and PIDs are unique identifier numbers. A company that wishes to produce USB devices needs to register and pay for a VID. This ID is unique to that supplier. For example, Microsoft has a VID of 0x045E, and Apple has a VID of 0x05ac. Depending on how many products the company produces, they may have multiple VIDs within a single company. The product ID is a four-byte identifier that names the specific device. Coupled with the VID, the PID uniquely identifies a driver that the Operating System (OS) must load for a given device. Note that there may be multiple “products” that all use the same VID and PID if they all use the same device driver. You can see the VID and PID for a device if you look in the device manager. To do this, right-click a device and select Properties. Then click the Details tab and select Hardware Ids from the Property drop-down menu. You can see the VID and PID values reported. In the example below, this Microsoft Webcam has a VID of 045E and PID of 075D.

Locations to check for VID/PID beside device manager are in the View Client PCoIP logs (debug-XXX-XX-XX-XXXXXX.txt). (Image7)

Image7:

Steps to identify the Hardware ID for the USB device in question (Image8).

  1. Select ‘Device Manager’
  2. Select the device, i.e. ‘Microsoft LifeCam Cinema’ and select properties.
  3. Select the ‘Details’ tab
  4. In the properties pull-down, select ‘Hardware Ids’
  5. Write-down the Hardware Ids.

Image8:

Identify the ‘Device class guid’ for the USB device in question (Image9).

  1. Select ‘Device Manager’
  2. Select the device, i.e. ‘Microsoft LifeCam Cinema’ and properties.
  3. Select the ‘Details’ tab
  4. In the properties pull-down, select ‘Device class guid’
  5. Write-down the guid

Image9:

Wildcards in USB Device VIDs and PIDs

In USB configurations, you can use the ‘*’ wildcard to indicate unknown characters in the VID and PID specifications.

The standard VID-PID combination in a configuration looks like this:

vid-xxxx_pid-yyyy

With the number of characters for the VID and PID variable, which is not necessarily four digits long. To use a wildcard to specify USB devices from any vendor (here, the device type is 5593):

vid-*_pid-5593

To use a wildcard to specify all USB devices from one vendor (here, the vendor is FA11):

vid-FA11_pid-*

You can use multiple ‘*’s to indicate the exact number of unknown characters:

vid-0781_pid-55**

In this example, PIDs have four characters, all starting with ’55

Reference this link for more information on VIDS/PIDS formats. http://www.vmware.com/files/pdf/techpaper/vmware-horizon-view-usb-device-redirection.pdf

The following steps should be configured on the View Client GPO (vdm_client.adm).

Physical desktop GPO configuration steps needed (Image 10)

  1. Expand ‘User Configuration’
  2. Expand ‘Administrative Templates’
  3. Expand ‘Classic Administrative Templates (ADM)’, ‘VMware View Client Configuration’, and select ‘View USB Configuration’
  4. Select and enable, ‘Allow Auto Device Splitting’

Image10:

USB Auto-connect GPO configuration steps needed (Image 11)

  1. Expand ‘User Configuration’
  2. Expand ‘Administrative Templates’
  3. Expand ‘Classic Administrative Templates (ADM)’ and ‘VMware View Client Configuration’
  4. Select ‘Scripting definitions’
  5. Select and enable:
  • ‘Connect all USB devices to the desktop on launch’
  • ‘Connect USB devices to the desktop when they are plugged in’

Image11:

Guest OS Steps Required

The following steps should be configured on the View Agent GPO (vdm_agent.adm).

Guest desktop GPO configuration steps needed:

  1. Expand ‘User Configuration’
  2. Expand ‘Administrative Templates’
  3. Expand ‘Classic Administrative Templates (ADM)’ and ‘VMware View Agent Configuration’
  4. Select ‘View USB Configuration’
  5. Select ‘Exclude Vid/Pid Device’
  6. Enable policy
  7. Enter the VID/PID, i.e. ‘o:vid-045e_pid-075d’ in our example we are using an override agent modifier (Horizon Client uses the View Agent policy setting instead of the Horizon Client policy setting.)

Image12:

Validation

This is the final step of validation. When connecting to your VDI environment verify a few steps to see if all the changes you did above, worked.

We should see from the Horizon View Client pull-down for ‘Connect USB Device’ showing a similar image:

  • Grey ‘Automatically Connect at Startup’
  • Grey ‘Automatically Connect when Inserted’
  • Additional USB devices

Note: You should NOT see the Microsoft Webcam (LifeCam) as we are excluding it from pass-through, but instead forcing a redirect connection of the camera to the VDI desktop which will use VMware’s native webcam drivers. (Image13)

Image13:

m and have it operate as normal inside your VDI session. Additionally, you should not see the Microsoft Webcam driver listed in the device chain. (Image14)

Image14:

You can also verify the policy is in effect by checking the Horizon View Agent logs on the guest OS. In this example we are looking at ‘log-2016-03-09.txt’ from DriveLetter:\ProgramData\VMware\VDM\logs location on the VDI desktop.

Image15:


Share :
whosay

Written by  Jeremy Wheeler: Jeremy

Post navigation

Previous: Omnigraffle efficiency with searchable objects
Next: Configure App Volumes log rolling

Related Post

Horizon 7.0.2, What’s New?

VMware Horizon 6 RDS- hosted apps and imprivata failover with new firmware

AppVolumes and Horizon Recompose Workaround

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Categories

Recent Posts

  • Log Parsing Cheat Sheet
  • Virtually There: Presentations that Pop!
  • Cool Resources for your Kids at home during this time..
  • Move OmniGraffle Package to Flat Format
  • VMware User Environment Manager and Sysinternals BGinfo

Archives

RSS Press Releases

  • VMware Helps Partners Perform and Transform with the Next Evolution of VMware Partner Connect August 18, 2022
    Singular partner program includes multiple business models and routes to market with VMware Enhancements will recognize and reward partner capabilities and performance while delivering an elevated partner experience Incentives accelerate partner transition to SaaS, subscription, and services-based business models PALO ALTO, Calif.--(BUSINESS WIRE)-- VMware, Inc. (NYSE: VMW) today announced the ...
  • VMware Named a Leader in the 2022 Gartner® Magic Quadrant™ for Unified Endpoint Management for Fifth Year in a Row August 16, 2022
    Company Also Receives Highest Product Scores in all Four Use Cases in 2022 Gartner® Critical Capabilities for Unified Endpoint Management Tools Report PALO ALTO, Calif.--(BUSINESS WIRE)-- VMware, Inc. (NYSE: VMW) today announced it has been positioned by Gartner, Inc. as a Leader in the 2022 Magic Quadrant for Unified Endpoint Management (UEM). This is the […]
  • VMware Report Warns of Deepfake Attacks and Cyber Extortion August 8, 2022
    Burned out security teams fight back against geopolitically motivated attacks and lateral movement inside networks PALO ALTO, Calif.--(BUSINESS WIRE)-- At Black Hat USA 2022, VMware, Inc. (NYSE: VMW) released its eighth annual Global Incident Response Threat Report, which takes a deep dive into the challenges faced by security teams amid pandemic disruptions, burnout, and geopolitically […]
Copyright VMBUCKET.COM © 2020