Knowledgebase
ThinLinX Support > ThinLinX Help Desk > Knowledgebase

Search help:


USB redirection in RDP mode

Solution

Unlike Citrix and Horizon clients, the RDP client doesn't have a useful default position on USB device redirection and will not attempt to redirect anything by default.  FreeRDP also normally has hardcoded vetoes of redirections of some types of USB devices, which ThinLinX has had to remove.

Consequently, if you want RDP mode to redirect any USB device you will have to use TMS (the relevant option is not in Tlxconfig yet) to set "Redirect USB" to Manual in the Mode window, and then click on the "Show Redirections" button that appears, and select the eligible devices that you want to redirect (they will have to be already plugged in when you do this).

USB redirection will only work under a few specific conditions:

  • The RDP Subtype option must be set to RemoteFX, because the RDP option downgrades the RDP protocol to v7, which lacks support for USB redirection.
  • The RDP server must be running Windows 8 / Windows Server 2008 R2 or later, or Windows 7 Ultimate (but no other Windows 7 edition).
  • If the RDP server is Windows 10 or Windows Server 2016 or later, you will need to edit group policy to enable redirection of certain types of USB devices (e.g. printers/scanners) because this is disabled by default for recent Windows O/S releases.  In the Group Policy Editor, you must set "Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Device and Resource Redirection\Do not allow supported Plug and Play device redirection" to "Disabled", and then run "gpupdate /force" on your RDP server (or wait a few minutes).
  • It appears that USB redirection is not supported on Windows Server editions unless the RDSH role is installed, i.e. it does not work for "administrative" RDP connections.  It does work on desktop editions (Windows 7 Ultimate/8/8.1/10) however.

It is not normally necessary to redirect USB storage devices, because access to these will be automatically provided via client drive redirection.  Storage devices will appears subfolders under the share named "Storage on <client-hostname>" (or \\tsclient\storage on really old Windows systems), whose names correspond to the volume name (if any) or a Linux device pathname (e.g. sda1) otherwise. This share corresponds to the /media area on your client.  Because the API lacks any kind of "safe removal" callback, we have had to automount filesytems using a one-second idle timeout and the "sync" option (because we have no idea when they might be physically unplugged), which will make writes to redirected drives very slow.

When trying to determine why USB redirection isn't working in RDP mode, to save time you should first test that it works when using Windows' own RDP client, mstsc.exe, because there are several reasons why it might not (see above condition list).  The USB redirection option in mstsc.exe is somewhat hidden, and has nothing to do with more visible high-level audio/printer/port/drive redirection options:

Once you connect, you will see a new icon on the drop-down toolbar, which you can click on to see details of the redirections:

You can then check Device Manager to see whether the USB device has been detected by the server.

If all that seems to work, you can move on to testing USB redirection using TLXOS.  Right now TMS' Redirect USB option only does anything useful in RDP mode, but in future we will improve it to allow more redirection of specific USB devices in HDX, Horizon and SPICE modes also.  Please note that the FreeRDP client cannot handle USB hotplug events, so the USB device must be plugged in before the session begins and remain plugged in until you have finished using it.

 

Related articles Webcam / USB headset redirection problems on Raspberry Pi
High-level (CUPS) printer redirection in HDX mode
USB redirection in HDX mode
Serial port redirection in RDP mode
Article details
Article ID: 16
Category: Knowledgebase
Date added: 2019-05-29 02:08:39
Views: 166

 
« Go back