Skip to main content

A client-server application for remotely sharing USB devices with usbip

Project description

CI Coverage PyPI License

usb-remote

Client-server software to share USB devices over the network.

Source https://github.com/epics-containers/usb-remote
PyPI uvx usb-remote --version
Docker docker run ghcr.io/epics-containers/usb-remote:latest
Documentation https://epics-containers.github.io/usb-remote
Releases https://github.com/epics-containers/usb-remote/releases

Overview

usb-remote allows USB devices to be very easily shared over a network using the linux usbip service. A usb-remote server runs on a machine with physical USB devices attached, and clients can connect to the server to access and control those devices as if they were locally connected.

Comparison to Digi's AnyWhereUSB

usb-remote is an FOSS alternative to commercial USB-over-Ethernet solutions like Digi's AnyWhereUSB.

Advantages of Digi's AnyWhereUSB:

  • Commercial product with support and warranty
  • Dedicated hardware servers for USB device sharing
  • Excellent security features controlling access to USB devices

Advantages of usb-remote:

  • Good support for UVC isochronous Webcams that do not work with AnyWhereUSB
  • Very simple to setup and use in trusted network environments
  • Free and open source software (FOSS)
  • The server runs on standard hardware such as a $55 Raspberry Pi

Installation

See the Server Setup and Client Setup guides for installation instructions.

Example Client Commands

# List devices on all configured servers
usb-remote list

# List devices on a specific server
usb-remote list --host raspberrypi1

# Attach a device (scans all servers, fails if multiple matches)
usb-remote attach --desc "Camera"

# Attach first matching device across servers
usb-remote attach --desc "Camera" --first

# Attach a device based on serial number - recommended for guaranteed unique match
usb-remote attach --serial=5072D8DF

# Detach a device
usb-remote detach --serial=5072D8DF

Architecture

See the Architecture Reference for full details.

See https://epics-containers.github.io/usb-remote for more detailed documentation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

usb_remote-2.2.0.tar.gz (6.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

usb_remote-2.2.0-py3-none-any.whl (29.2 kB view details)

Uploaded Python 3

File details

Details for the file usb_remote-2.2.0.tar.gz.

File metadata

  • Download URL: usb_remote-2.2.0.tar.gz
  • Upload date:
  • Size: 6.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for usb_remote-2.2.0.tar.gz
Algorithm Hash digest
SHA256 b92ed7248113903012188673d8ecce486963dbd3babdc632e350758eaeba34e5
MD5 ca70ed53a9b3b63a10fd71ac1361255f
BLAKE2b-256 ca46b5e5ff7be596262a20a1da07531d6175e8e32570f50cc33df2a0efdfce86

See more details on using hashes here.

File details

Details for the file usb_remote-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: usb_remote-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 29.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for usb_remote-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cc5467e28d85862dffd79a119e59dc4a84f6e28fc8c5d8020fa40363126691f6
MD5 6cc587053afd8b1dae8b81d7b5065ae4
BLAKE2b-256 f8945f0d97389f3daab2b37f048bf47a2b283475f8116cbff027c013d0037212

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page