It is written as a C native complied binary (not java) for increased performance. It will utilize multiple CPU cores if available and supports all USB transfer modes, control, bulk, interrupt and isochronous.

This app will support sharing one (1) USB device at a time. If you want to use advanced features like sharing multiple devices from a single Android server, or running the client as a service, please purchase a license from https://www.virtualhere.com

Clients are available for Windows, Linux and OSX.

The VirtualHere USB Server removes the need for an actual USB cable and instead transmits USB signals over a wireless or wired network. The USB device appears as if it was directly attached to a client machine even though it is remotely plugged into your android device. All existing client drivers work as is, the client machine doesn't know the difference! Its like replacing the USB cable with a network connection (or alternatively giving a USB device an IP address)

For example:

1. Remotely control your digital camera by plugging it into your phone and controlling it remotely via a desktop2. Turn any printer into a wireless printer3. Use USB devices in virtual machines4. Plug in your gaming controller and remotely play streaming games over the LAN or Internet5. Use a USB-to-serial converter to remotely access serial devices6. Use USB devices in the cloud. Plug in the device and it can be directly used from a cloud server with no special programming required!7. Mount USB drives connected to your android device directly in windows/linux/osx

Your Android device needs to have USB host abilities (most larger or new devices have this). Also you may need to buy a Micro-USB OTG to Host adapter if you only have a Micro-USB plug.

The client software is available for download from https://www.virtualhere.com/usb_client_software

The first screenshot shows a USB webcam plugged into a remote Android Device and being used on a local Windows machine. i.e converting a normal webcam into an IP webcam. When sharing a webcam it is recommended your Android device connects via Ethernet for minimum network latency.

The next screenshot shows a Apple Mac machine accessing a FTDI serial device that is plugged into a remote android device. ie. serial over IP