Kategorien
Raspberry Pi

USB over IP, Netz, WLAN verlängern – über Raspberry Pi Arduino zu nutzen

Anleitung die USB Strecke über IP / WLAN zu verlängern, um z.B. eine an der Raspberry Pi angeschlossene Arduino bequem vom PC aus zu programmieren.

USB over IP – erster Anlaufpunkt:

Aktionen auf der Server Seite – Raspberry Pi

USB über IP soll auf der Raspberry Pi ab Kernel Linux-3.17 ohne weitere Installation verfügbar sein.

Check, welchen Kernel ich habe:

17:45:46|pi@raspberrypi:~|$ uname -r
4.1.13+

Kernelversion ist höher :-)
Test:

17:49:05|pi@raspberrypi:~|$ usbip
-bash: usbip: Kommando nicht gefunden.

Satz mit x :-(

Weiter mit den Tipps aus dem Forum https://www.raspberrypi.org/forums/viewtopic.php?p=121691

usbip installieren

17:49:25|pi@raspberrypi:~|$ sudo apt-get install usbip

Kernelmodul laden

17:54:16|pi@raspberrypi:~|$ sudo modprobe usbip-host

usbip daemon starten

08:52:50|pi@raspberrypi:~|$ sudo usbipd -D

USB Geräte auflisten (ohne Arduino)

18:01:48|pi@raspberrypi:~|$ lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.

USB Geräte auflisten (mit Arduino)

18:02:30|pi@raspberrypi:~|$ lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. 
Bus 001 Device 005: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter

In meinem Fall ist die ID des USB Gerätes 1a86:7523
Das selbe nochmal mit dem Programm usbip

18:05:21|pi@raspberrypi:~|$ sudo usbip list -l
Local USB devices
=================
 - busid 1-1 (0424:9512)
         1-1:1.0 -> hub
 
 - busid 1-1.1 (0424:ec00)
         1-1.1:1.0 -> smsc95xx
 
 - busid 1-1.2 (1a86:7523)
         1-1.2:1.0 -> ch341

Binden des USB Gerätes

09:22:48|pi@raspberrypi:~/deb_pakete|$ sudo usbip bind -b 1-1.2
bind device on busid 1-1.2: complete

Aktionen auf der Client Seite – in meinem Falle Laptop mit Ubuntu

usbip installieren

Details auf Ubuntuusers: https://wiki.ubuntuusers.de/USBIP/

sudo apt-get install linux-tools-generic

Kernelmodul laden

10:06:22|henry@t410:~/deb_pakete|$ sudo modprobe vhci-hcd
10:08:30|henry@t410:~/deb_pakete|$ lsmod | grep vhci
vhci_hcd               33435  0 
usbip_core             27617  1 vhci_hcd

Auflisten der USB Devices, welche auf der PI zur Verfügung gestellt wurden

10:11:10|henry@t410:~/deb_pakete|$ sudo usbip list -r 192.xxx.xxx.xxx
Exportable USB devices
======================
 - 192.xxx.xxx.xxx
      1-1.2: QinHeng Electronics : HL-340 USB-Serial adapter (1a86:7523)
           : /sys/devices/platform/bcm2708_usb/usb1/1-1/1-1.2
           : Vendor Specific Class / unknown subclass / unknown protocol (ff/00/00)
           :  0 - Vendor Specific Class / unknown subclass / unknown protocol (ff/01/02)

Hinzufügen des USB Devices

10:24:20|henry@t410:~/deb_pakete|$ sudo usbip attach -h 192.xxx.xxx.xxx -b 1-1.2
10:24:45|henry@t410:~/deb_pakete|$ lsusb
Bus 003 Device 002: ID 1a86:7523 QinHeng Electronics HL-340 USB-Serial adapter

Check mit Arduino Programmieroberfläche

Arduiono Remote programmiert über IP

Aktionen auf der Server Seite – Raspberry Pi

Nach Benutzung auf der Server Seite – Das USB Gerät wieder freigeben

09:22:54|pi@raspberrypi:~/deb_pakete|$ sudo usbip unbind -b 1-1.2
unbind device on busid 1-1.2: complete

Von Henry Koch

take a look at: http://www.henrykoch.de/privat.html

2 Antworten auf „USB over IP, Netz, WLAN verlängern – über Raspberry Pi Arduino zu nutzen“

Vielen Dank, wirklich. Ich bin den ganzen Tag am probieren und am Kernel compilieren :D. Das hat alles nicht funktioniert, weil die Version, die mein Raspi hat, die neueste ist. Nun bin ich auf deinen Blog gestoßen kurz und knapp erklärt und es funktioniert. Fucking yes :D.

Wie es der Zufall will bin ich auch gerade dabei mit usbip zu arbeiten. Ich habe den Beitrag aktualisiert. Man kann sich usbip im Ubuntu auf client Seite jetzt einfach über apt-get installieren anstatt Ihn irgendwo vornweg downloaden zu müssen.
Ich freue mich sehr, wenn der beschriebene Weg zum Erfolg geführt hat.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.