使用usb/ip把电脑主机的usb设备共享给树莓派

最近项目中采用的分布式视频控制系统,视频采用的是rtsp协议,分布式坐席(kvm)功能将输出节点的鼠标键盘的控制信号发送的输入节点的pc主机上,进行远程控制,实现网络kvm的功能。具体实现原理应该就是usb over ip方式,但怎么实现一直没有理解。今天找到一个开源软件usb/ip,基本原理、功能有点类似。
下面是使用电脑主机的usb无线鼠标远程控制树莓派的桌面,效果还不错(局域网),鼠标基本上感觉不到延时!
一、电脑主机作为服务器:
(1)安装usbip软件

  sudo apt-get install usbip

(2)安装3个模块

sudo modprobe  usbip-core  usbip-host  usbip-vudc
查看:lsmod | grep usbip
也可添加到:/etc/modules 每次开机自启

(3)查看电脑主机上的usb设备

usbip list -l
 - busid 1-4 (046d:c52b)
   Logitech, Inc. : Unifying Receiver (046d:c52b)

 - busid 1-6 (5986:2113)
   Acer, Inc : unknown product (5986:2113)

 - busid 1-8 (06cb:00a2)
   Synaptics, Inc. : unknown product (06cb:00a2)
(4)启动服务,并把usb设备添加到usbip中去:可以添加多个
usbipd -D &
sleep 1
usbip bind -b 1-4   #1-4就是上面的编号,无线usb鼠标
(5)解除绑定usb设备
sudo usbip unbind -b 1-4

二、树莓派作为客户端:
(1)安装usbip软件

sudo apt-get install usbip

(2)安装模块

sudo modprobe vhci_hcd   #也就是:USB Virtual Host Controller Interface
查看:lsmod | grep vhci_hcd
也可添加到:/etc/modules 每次开机自启

(3)查看远端服务器电脑主机上的usb设备

usbip list -r 192.168.1.1
Exportable USB devices
======================
 - 192.168.1.1
        1-4: Logitech, Inc. : Unifying Receiver (046d:c52b)
           : /sys/devices/pci0000:00/0000:00:14.0/usb1/1-4
           : (Defined at Interface level) (00/00/00)

(4)将远端服务器电脑主机上的usb设备添加到本地

usbip attach -r 192.168.1.1 -b 1-4
lsusb #可以查看到本地已经添加上无线鼠标了

(5)解除远程usb设备

usbip port
usbip detach -p 0  #端口号根据上面的查到

三、命令参数总结–自己的理解

usage: usbip [--debug] [--log] [--tcp-port PORT] [version]
             [help] <command> <args>

  attach     Attach a remote USB device           #客户端添加远程usb设备
  detach     Detach a remote USB device           #客户端解除远程usb设备
  list       List exportable or local USB devices #客户端远端usb设备、服务器端查看本地usb设备
  bind       Bind device to usbip-host.ko         #服务器端添加(绑定)本地usb设备到usbip
  unbind     Unbind device from usbip-host.ko     #服务器端从usbip中解除(解绑)本地usb设备
  port       Show imported USB devices            #客户端已添加的远端usb设备

在openwrt上也可以用:
https://openwrt.org/docs/guide-user/services/usb.iptunnel

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值