USB over IP-any interest in a VirtualHere plugin?


Recommended Posts

I've just started using VirtualHere which lets me plug in USB devices into a Raspberry PI and connect my windows VMs to these USB devices over the network. This gives me the following benefits.


1. I can put USB devices a long way away from my UnRaid server. I am not limited by USB extension cables.

2. I am not reliant on the quirks of USB passthrough with KVM.

3. I can move my VM from one UnRaid server to another without having to physically unplug and replug USB devices.


However, as more and more Dockers become available, I'd like to do the following.

1. Connect networked USB devices to Dockers, and into UnRaid directly. This requires the VirtualHere client to run on UnRaid.

2. Share USB devices plugged into the UnRaid server with other VMs. This requires the VirtualHere server to run on UnRaid.


Use case for 1 is if I move to a docker version of Homeseer Home Automation. This uses USB z-wave, RFXCOM 433 MHz receivers, and 868 MHz receivers for the wireless heating actuators.

Use case for 2 is if I still want to plug USB devices into 1 UnRaid box, but share those devices as I move the VM around between Live and Test UnRaid boxes.


I contacted Michael from VirtualHere who said that if there is enough interest he would look at implementing or supporting a plugin.


Please post if you're interested. I'll send Michael a link to this thread.




  • Like 1
Link to comment

I'm not sure why I need this :) but it is pretty cool technology.


The VirtualHere server is really easy to start, just ssh to your box and follow these instructions:

You can install the Windows client from here:


I started the Windows client and it immediately connected to the server.  However... it is dangerous :) By default, it lets you take over unRAID's flash drive(!) which requires a reboot to fix (if you plan to test this, I'd recommend stopping the array first). It also lets you take over the UPS, which means unRAID loses access to it.


From the Windows client you have the ability to right click on devices and "ignore" them.  That adds an entry in the config.ini file on the server, so from then on those devices won't be available across the network.  So it is fairly easy to solve this manually.


Unfortunately, the Linux client:

won't run because unRAID doesn't have the vhci_hcd module built-in.  This means an unRAID plugin can't use the client API to modify the VirtualHere server:

it would have to modify the config.ini instead:



If someone does create a plugin for the server, it should do a few things automatically:

* Give the VirtualHere server the same name as the unRAID system

* Ignore the unRAID boot drive, the UPS, and probably the "Virtual Keyboard and Mouse"

* Ignore any USB drive that is part of the array or that has been mounted by Unassigned Devices


Link to comment

You guys are welcome to create a plugin for VirtualHere if you want as you already know more about the config of unraid than i do. 


Regarding the server name you can right click on the server in the virtualhere client and select "Rename..." and then type in $HOSTNAME$ and it will use the


as its name from then on.


Or you can just add this line to the server config.ini




Regarding licensing, virtualhere is free to use for one device at a time, if you need more at once consider purchasing a license.


Also regarding server configuration, if you cant use the client_api you can actually just set all the configuration directly in the config.ini file which is equivalent. Just make sure the server is not running when you do this.





VirtualHere Pty. Ltd.



Link to comment
  • 1 year later...


i want to use VirtualHere to be able to connect my optical usb drive to a docker container. With this setup i would be able to use backup software/files from optical drives directly from my server in combination with web client software.


The way in want to reach this:

- Docker container with backup software/access to files on optical drives over ip ->

- web client software for accessing docker container with backup software->

- virtualhere CLIENT installed in docker container->

- virtualhere server used/installed on laptop or computer


ideally would be support from virtualhere for internal usb optical drives for example from laptop built in optical drives.

Edited by dockerstarter
Link to comment
  • 1 month later...

+1  I want to connect a Z-wave USB stick to my Home-Assistant Docker. Right now I'm running Home-Assistant on a raspberrypi 3 because the z-wave usb stick needs to be at a certain location for my z-wave network to function properly. However the rpi3 is slow and I'd love to put back my Home-Assistant on my unRAID server.


I came here after googling how to modprobe vhci-hcd, because I was trying to follow this guide:

I don't know whether VirtualHere is better than this method. But I thought I'd paste it here because maybe putting the kernel module  USB Virtual Host Controller Interface in unRAID is a good idea?  If I can get the same result via VirtualHere then that's also perfect ofcourse.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.