ThinLinX Support > ThinLinX Help Desk > Knowledgebase

Search help:

Why aren't my RDP mode USB redirections working?


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.  Consequently, if you want RDP mode to redirect any USB device you will have to use TMS or Tlxconfig 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:

  • If not grayed out, the RDP Submode option must be set to RemoteFX, because the RDP option downgrades the RDP protocol to v7, which lacks support for USB redirection.  We removed the RDP Submode option in TMS 8.2.0 and later / TLXOS 4.8.0 and later, because there is in practice never a good reason to force Submode = RDP (you'd only ever need that for Windows Server 2003 or earlier, and FreeRDP will fall back to that as needed anyway).
  • 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.

Please note also that you may have issues if your USB device is integrated into a monitor that you are directly connecting to a Raspberry Pi, because monitor manufacturers like to save a few dollars by not powering their built-in USB hubs, and the Raspberry Pi - being a very low-power device - often cannot provide sufficient power to operate an unpowered hub.  For best results, connect your monitor's unpowered USB hub to an external powered USB hub, and then connect the powered hub to your Pi.

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.  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 Why isn't USB redirection working for my Pi-connected peripheral?
Default USB redirection policies
CUPS printer redirection (using Citrix Universal Print Driver) isn't working!
Serial port redirection in RDP mode
How can I redirect a microphone in Horizon mode on the Pi?
Article details
Article ID: 16
Category: Frequently Asked Questions
Date added: 2019-05-29 02:08:39
Views: 4824

« Go back