Forum: PC Hard- und Software Per Software schaltbarer USB-Hub?


von Erwin M. (nobodyy)


Lesenswert?

Ich verwende eine Webcam unter Ubuntu 16.04 und es zeigte sich das die 
nicht stabil läuft, selbst wenn sie direkt am Mainboard angeschlossen 
ist.
Es zeigt sich das zunächst der Treiber nach einige Stunden plötzlich 
verweigerte mit "uvcvideo: Failed to set UVC probe control : -110 (exp. 
26).".
Dagegen hilft der Workaround

rmmod uvcvideo
modprobe uvcvideo

aber nun zeigt sich das sich das etwas anderes streikt, vielleicht die 
Kamera, den ein Scan mit "v4l2-ctl --list-devices" zeigte das die Webcam 
nicht gefunden wird!
Also habe ich den Stecker gezogen und neu gesteckt und danach war sie 
wieder da; der Scan zeigt:

Microsoft® LifeCam Studio(TM) (usb-0000:00:14.0-2):
        /dev/video0

Ähnliches hatte ich schon mit USB-Speichersticks und anderen 
USB-Geräten.
Deshalb brauche ich das ziehen/stecken, also Strom aus/ein, per 
Software, aber welcher USB-Hub kann das?

von Bernard B. (bernard_b)


Angehängte Dateien:

Lesenswert?

Moin,

Vor einigen Jahren stolperte ich in ein ähnliches Problem. Für mich 
hatte es über den Anschluss mehrerer USB Speicher-Sticks zu tun, die ich 
oft tauschen musste. Nach einer Weile begann ich einen Quad-Port USB-Hub 
zu entwerfen, die mit den Tasten und über serielle COM (per USB) 
gesteuert werden kann.
Also, man kann es selber fertigen / bauen.

Anbei gibt es Bilder davon.

P.S.1. Meine Entschueldigungen für die Verwendung von "Google translate" 
alles in deutscher Sprache zu schreiben.
P.S.2. Pro Port ist auch eine blaue LED (0603), um anzuzeigen, wenn er 
aktiv ist.
P.S.3. Es war 2014 ! Ich habe gerade noch eine Batch mit Platinen 
gefunden, die gepland waren als 2x 4 USB Hub. Sind noch immerhin 
Verpackt (Ab.3)
P.S.4. Habe gerade noch eine Abbildung gefunden mit Drucktaster darauf.

: Bearbeitet durch User
von tmomas (Gast)


Lesenswert?

Vor dem Einsatz eine schaltbaren Hubs steht der Versuch, die Sache via 
usbreset zu lösen.

Läßt sich das Problem beheben, indem du
1) einen usbreset auf die Cam
2) einen usbreset auf den Hub an dem die Cam angeschlossen ist

durchführst?

von Konrad S. (maybee)


Lesenswert?

Erwin M. schrieb:
> Deshalb brauche ich das ziehen/stecken, also Strom aus/ein, per
> Software, aber welcher USB-Hub kann das?

Leider wechselt zuweilen bei gleicher Modellbezeichnung das Innenleben, 
wie z.B. hier festgestellt:
Beitrag "Re: USB Hub mit Strom versorgen und über SW ein - bzw. ausschalten"
Hinweise auf bestimmte Modelle sind daher keine Garantie für Erfolg.

von Erwin M. (nobodyy)


Lesenswert?

tmomas schrieb:
> Vor dem Einsatz eine schaltbaren Hubs steht der Versuch, die Sache via
> usbreset zu lösen.
>
> Läßt sich das Problem beheben, indem du
> 1) einen usbreset auf die Cam
> 2) einen usbreset auf den Hub an dem die Cam angeschlossen ist
>
> durchführst?

Ich versuche mal 1), denn ich schließe direkt an das Mainboard (X11SAE) 
an und die USB-Hubs dort funktionieren problemlos.

Gefunden habe ich auch Tipps wie

echo on > /sys/bus/usb/devices/usb1/power/level       # turn on
echo suspend > /sys/bus/usb/devices/usb1/power/level  # turn off

aber das sollte das gleiche wie usbreset machen.

von Erwin M. (nobodyy)


Lesenswert?

Also ich habe nun usbreset verwendet, aber a) gibt das eine 
Fehlermeldung bei einem Modul:

uvcvideo: Failed to query (GET_CUR) UVC control 2 on unit 1: -110 (exp. 
1)

Und der Strom wird damit nicht geschaltet.
Ein weiteres Problem hierbei: Bei jedem ziehen/stecken wird die Device 
ID hochgezählt; sie ist also nicht eindeutig zu einem Gerät an einem 
Anschluss, so das man zu usbreset noch ein Skript benötigt um zumindest 
die ID zu ermitteln.

von Georg (Gast)


Angehängte Dateien:

Lesenswert?

Bernard B. schrieb:
> Also, man kann es selber fertigen / bauen.

Dein Gerät sieht auch nicht unhübsch aus, aber das gibt es fertig zu 
kaufen und spottbillig. Ich habe so einen 4fach-Minihub mit Schaltern 
und Kontroll-LEDs.

Was es offenbar nicht gibt ist das gleiche mit Software-Fernsteuerung. 
Aber ob ich nun eine App aufrufe oder den Schalter aus- und wieder 
einschalte macht keinen grossen Unterschied, Schalten ist eher 
schneller.

Georg

von Planlos (Gast)


Lesenswert?

Georg schrieb:
> Was es offenbar nicht gibt ist das gleiche mit Software-Fernsteuerung.

Doch. Ist im USB-Standard eigentlich so vorgesehen, dass es das geben 
soll. Und gefühlt 75% aller USB-Hubs behaupten in ihrem USB-Deskriptor 
auch, dass sie über die nötige Hardware zum gezielten An- und 
Ausschalten einzelner Ports per Software haben. (Per-Port-Powerswitching 
Bit im Hub-Characteristics Bitfeld gesetzt)

Gab auch mal bei Reichelt einen HUB der 5€-Klasse, der das vorbildlich 
implementiert hat.

Der ist leider inzwischen, Geiz-ist-Geil, einer der üblichen "Alles 
parallelgeschaltet"-Version gewichen, im gleichen Gehäuse...


So sind eigentlich die Abmahn-Anwälte, wenn man sie mal braucht?

Ein Produkt mit "USB" bewerben, was es offensichtlich nicht ist, wär 
doch ganz klar ein abmahnfähiger Wettbewerbsverstoß...

von Erwin M. (nobodyy)


Lesenswert?

Planlos schrieb:
> Georg schrieb:
>> Was es offenbar nicht gibt ist das gleiche mit Software-Fernsteuerung.
>
> Doch. Ist im USB-Standard eigentlich so vorgesehen, dass es das geben
> soll. Und gefühlt 75% aller USB-Hubs behaupten in ihrem USB-Deskriptor
> auch, dass sie über die nötige Hardware zum gezielten An- und
> Ausschalten einzelner Ports per Software haben. (Per-Port-Powerswitching
> Bit im Hub-Characteristics Bitfeld gesetzt)
>
> Gab auch mal bei Reichelt einen HUB der 5€-Klasse, der das vorbildlich
> implementiert hat.

Ja, einige User berichten das es bei ihnen funktionierte:

http://stackoverflow.com/questions/4702216/controlling-a-usb-power-supply-on-off-with-linux

Aber mit aktuellen Kerneln geht es nicht mehr:

http://superuser.com/questions/371068/is-there-a-way-to-power-down-a-usb-device-using-software

Siehe auch

zless /usr/share/doc/linux-doc/usb/power-management.txt.gz


Inzwischen habe ich weitergeskriptet und für usbreset nun in einem 
Skript von Root, das über crontab minütlich läuft:
1
#!/bin/bash
2
# no unset variables
3
set -u
4
5
BUS=`lsusb | grep LifeCam | cut -d " " -f2`
6
ID=`lsusb | grep LifeCam | cut -d " " -f4 | cut -d: -f1`
7
8
rmmod uvcvideo
9
sleep 1
10
11
/usr/local/bin/usbreset /dev/bus/usb/$BUS/$ID
12
sleep 3
13
14
modprobe uvcvideo 
15
sleep 1
16
17
sudo -H -u nobodyy /home/nobodyy/sh/webcam_cycl0.sh
18
19
exit 0

Da werde ich nachverfolgen ob das zumindest über Wochen stabil läuft.

: Bearbeitet durch User
von T.roll (Gast)


Lesenswert?

Erwin M. schrieb:
> Ubuntu 16.04

Erwin M. schrieb:
> Microsoft® LifeCam

Wohl nur ein Interessenkonflikt :)


Mal in eine andere Richtung gedacht:
Hast du Hardwareprobleme soweit ausgeschlossen (bsp: wackliger Stecker)? 
Gibt es eventuell ein passendes BIOS-Update?

Was steht in den Logs, wenn der Fehler auftritt?

von tmomas (Gast)


Lesenswert?

Sofern du denn doch noch einen Hub mit per-port-powerswitching finden 
solltest: Bei mir funktioniert das prima mit hub-ctrl bzw. hub_ctrl.py

https://github.com/codazoda/hub-ctrl.c

Der erwähnte bei reichelt mal erhältlich gewesene war ein DeLock 87445. 
Ich hab mir ein paar davon gesichert :)

von Erwin M. (nobodyy)


Lesenswert?

T.roll schrieb:
> Mal in eine andere Richtung gedacht:
> Hast du Hardwareprobleme soweit ausgeschlossen (bsp: wackliger Stecker)?

Ja, denn dann würde die USB-ID hochgezählt.


> Gibt es eventuell ein passendes BIOS-Update?

Nein, es ist das aktuellste BIOS installiert


> Was steht in den Logs, wenn der Fehler auftritt?

Nur das auf die Kamera nicht zugegriffen werden kann.
Und die Kernel-Meldung dazu ist ganz oben angegeben.

von Erwin M. (nobodyy)


Lesenswert?

tmomas schrieb:
> Sofern du denn doch noch einen Hub mit per-port-powerswitching finden
> solltest: Bei mir funktioniert das prima mit hub-ctrl bzw. hub_ctrl.py
>
> https://github.com/codazoda/hub-ctrl.c

Aha, das werde ich mal ausprobieren.
Das sollte ja bei den onboard-Hubs beim X11SAE funktionieren, denn bei 
Supermicro sind die Sachen bisher ganz gut, solide und standardkoform 
implementiert.


> Der erwähnte bei reichelt mal erhältlich gewesene war ein DeLock 87445.
> Ich hab mir ein paar davon gesichert :)

Aha, das ist so wie mit anderen raren technisch hervorragenden Geräten 
wie dem legendär empfindlichen WLAN-Adapter WL0162.

von Gerd E. (robberknight)


Lesenswert?

Erwin M. schrieb:
>> Der erwähnte bei reichelt mal erhältlich gewesene war ein DeLock 87445.
>> Ich hab mir ein paar davon gesichert :)
>
> Aha, das ist so wie mit anderen raren technisch hervorragenden Geräten
> wie dem legendär empfindlichen WLAN-Adapter WL0162.

Naja, nur mit dem Unterschied daß man nen USB-Hub (für USB2) noch gut 
selber bauen könnte. Hub-ICs gibts z.B. von Microchip. In den 
Datenblättern ist auch ziemlich genau erklärt was Du alles machen musst 
um die Ports einzeln schaltbar zu bekommen.

Nen richtig guter WLAN-Adapter wird dagegen schon schwerer, wenn Du die 
Anpassung genau treffen willst brauchst Du nen Vektor-Netzwerkanalyzer 
für 2,4GHz und impedanzkontrollierte Platinen.

von Erwin M. (nobodyy)


Lesenswert?

Ok, also inzwischen zeigte sich das usbreset andere Geräte stört, beim 
TV/Radio-Stick einen Audio-Aussetzer von 0,5 s bewirkt. Und es macht 
nicht wirklich stabiler, denn /dev/video0 verschwindet nach wenigen 
Tagen weiterhin. Ich brauche einen Schalter (Halbleiterrelais) für einen 
Power-On-Reset.

: Bearbeitet durch User
von Bernard B. (bernard_b)


Lesenswert?

OK,. Google translate didn't help me here, so it's in English this time.

How about consider building a device, with equal amounts of USB-in as 
USB-outputs ? Next you only switch the VBus-line, by a combination of 
N/P channel MOSFETS, controlled by a microcontroller (PIC or AVR).
Via PC you can send a command to the microcontroller over USB (i.e. 
CP2102 or FTDI-232)

The device I developed for my task can switch between 4 USB-devices to 1 
USB-port, connected to PC.
When reading this topic back again, I come to the conclusion you're 
looking for a power-down or reset of a specific USB-device, not a USB 
switch.

Toggling a switch manually is possible, as like just removing the 
USB-connector from it's port and plugging it back in again. Initially I 
got the idea you we're looking for a "remote controlled"-solution per 
computer. However, if you can manage this by twiddling in the Operating 
System of a PC, like suggested by other users, it's a good way to go : 
it's a quicker and cheaper solution.

-=[ EDIT ]=-
I gave it a second thought. If you're still interested in a 
hardware-solution, it might be even possible without a microcontroller. 
If I'm not mistaken, FTDI232 and CP2102 both supporting additional pins, 
next to Tx/Rx for the RS-232 protocol. You might be able to (ab)use one 
of them (i.e. Ring-indicator) in combination with N/P MOSFET-suggestion, 
to reset the Vbus..
How ? I leave it up to you.

: Bearbeitet durch User
von Erwin M. (nobodyy)


Lesenswert?

tmomas schrieb:
> Sofern du denn doch noch einen Hub mit per-port-powerswitching finden
> solltest: Bei mir funktioniert das prima mit hub-ctrl bzw. hub_ctrl.py
>
> https://github.com/codazoda/hub-ctrl.c

Ich habe das versucht, aber schon das angegebene Beispiel funktioniert 
nicht, weil das Format nicht stimmt (fehlendes Leerzeichen).
Aber auch ein Device abzustellen geht nicht (./hub-ctrl -b 001 -d 033 -p 
0), mit der Fehlermeldung "Device not found", obwohl lsusb es auflistet.

Daneben stellt sich die Frage wie man denn die USB-Hubs auflistet, denn 
lsusb -t listet sie, aber ohne die Hubs zu numerieren.

von tmomas (Gast)


Lesenswert?

Erwin M. schrieb:
> Daneben stellt sich die Frage wie man denn die USB-Hubs auflistet, denn
> lsusb -t listet sie, aber ohne die Hubs zu numerieren.

So listet man die:

root@DIR-505-3:~# hub-ctrl
Hub #0 at 001:002
 INFO: ganged switching.
Hub #1 at 001:001
 INFO: individual power switching.
 WARN: Port indicators are NOT supported.
Hub #2 at 001:005
 INFO: ganged switching.
Hub #3 at 001:006
 INFO: ganged switching.
 WARN: Port indicators are NOT supported.
Hub #4 at 001:008
 INFO: individual power switching.
Hub #5 at 001:009
 INFO: individual power switching.


Und so funktioniert hub-ctrl bei mir mit 14 Webcams an 2x 7-port Hubs 
(Targus PAUH212):
hub-ctrl -h 5 -P 3 -p 0 -> Schaltet den Strom an Hub#5, Port#3 aus.

von Erwin M. (nobodyy)


Lesenswert?

tmomas schrieb:
> Erwin M. schrieb:
>> Daneben stellt sich die Frage wie man denn die USB-Hubs auflistet, denn
>> lsusb -t listet sie, aber ohne die Hubs zu numerieren.
>
> So listet man die:
>
> root@DIR-505-3:~# hub-ctrl
> Hub #0 at 001:002
>  INFO: ganged switching.
> Hub #1 at 001:001
>  INFO: individual power switching.
>  WARN: Port indicators are NOT supported.
> Hub #2 at 001:005
>  INFO: ganged switching.
> Hub #3 at 001:006
>  INFO: ganged switching.
>  WARN: Port indicators are NOT supported.
> Hub #4 at 001:008
>  INFO: individual power switching.
> Hub #5 at 001:009
>  INFO: individual power switching.
>
>
> Und so funktioniert hub-ctrl bei mir mit 14 Webcams an 2x 7-port Hubs
> (Targus PAUH212):
> hub-ctrl -h 5 -P 3 -p 0 -> Schaltet den Strom an Hub#5, Port#3 aus.

Ok, aber bei mir sieht es so aus:

> ./hub-ctrl
Hub #0 at 004:000
 INFO: ganged switching.
 WARN: Port indicators are NOT supported.
Hub #1 at 004:000
 INFO: ganged switching.
 WARN: Port indicators are NOT supported.
Hub #2 at 004:001
 INFO: ganged switching.
 WARN: Port indicators are NOT supported.
Hub #3 at 003:000
 INFO: ganged switching.
 WARN: Port indicators are NOT supported.
Hub #4 at 003:000
 INFO: ganged switching.
 WARN: Port indicators are NOT supported.
Hub #5 at 003:002
 INFO: individual power switching.

Wo ist da die Kamera "Bus 001 Device 038: ID 045e:0772 Microsoft Corp. 
LifeCam Studio" angeschlossen?

von Erwin M. (nobodyy)


Lesenswert?

tmomas schrieb:
> Der erwähnte bei reichelt mal erhältlich gewesene war ein DeLock 87445.
> Ich hab mir ein paar davon gesichert :)

Ok, den habe ich gekauft, denn von denen auf der Projektseite genannten 
ist nur noch der erste, D-Link DUB-H7, am Markt erhältlich.
Sollte ich bei dem 87445 den Netzteilanschluss versorgen, oder komme ich 
bei nur einer Kamera am Hub auch ohne aus?

von tmomas (Gast)


Lesenswert?

Geht auch ohne Netzteil.

von Planlos (Gast)


Lesenswert?

Erwin M. schrieb:
> Wo ist da die Kamera "Bus 001 Device 038: ID 045e:0772 Microsoft Corp.
> LifeCam Studio" angeschlossen?

lsusb -t

Muss aber sowieso an Hub#5, nur der behauptet steuerbar zu sein.

von Erwin M. (nobodyy)


Lesenswert?

Planlos schrieb:
> Erwin M. schrieb:
>> Wo ist da die Kamera "Bus 001 Device 038: ID 045e:0772 Microsoft Corp.
>> LifeCam Studio" angeschlossen?
>
> lsusb -t
>
> Muss aber sowieso an Hub#5, nur der behauptet steuerbar zu sein.

Ok, also hier die Ausgabe:

> lsusb -t
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
    |__ Port 1: Dev 19, If 0, Class=Hub, Driver=hub/4p, 5000M
        |__ Port 2: Dev 20, If 0, Class=Hub, Driver=hub/4p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
    |__ Port 1: Dev 26, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 4: Dev 27, If 0, Class=Hub, Driver=hub/4p, 480M
    |__ Port 2: Dev 21, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 4: Dev 22, If 0, Class=Vendor Specific Class, 
Driver=usbfs, 480M
        |__ Port 4: Dev 22, If 1, Class=Vendor Specific Class, Driver=, 
480M
        |__ Port 4: Dev 22, If 2, Class=Vendor Specific Class, 
Driver=usbfs, 480M
        |__ Port 4: Dev 22, If 3, Class=Vendor Specific Class, Driver=, 
480M
        |__ Port 4: Dev 22, If 4, Class=Vendor Specific Class, Driver=, 
480M
        |__ Port 4: Dev 22, If 5, Class=Vendor Specific Class, Driver=, 
480M
        |__ Port 4: Dev 22, If 6, Class=Vendor Specific Class, Driver=, 
480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 5000M
    |__ Port 4: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 
5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/16p, 480M
    |__ Port 2: Dev 43, If 0, Class=Video, Driver=uvcvideo, 480M
    |__ Port 2: Dev 43, If 1, Class=Video, Driver=uvcvideo, 480M
    |__ Port 2: Dev 43, If 2, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 2: Dev 43, If 3, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 2: Dev 43, If 4, Class=Human Interface Device, 
Driver=usbhid, 480M
    |__ Port 3: Dev 3, If 0, Class=Human Interface Device, 
Driver=usbhid, 12M
    |__ Port 3: Dev 3, If 1, Class=Human Interface Device, 
Driver=usbhid, 12M
    |__ Port 11: Dev 6, If 0, Class=Human Interface Device, 
Driver=usbhid, 12M
    |__ Port 12: Dev 5, If 0, Class=Human Interface Device, 
Driver=usbhid, 12M

Die Kamera ist Dev 43, wobei die nach circa einem Tag verschwindet, d. 
h. das lsusb zeigt sie nicht mehr.
Die Frage die sich nun stellt ist wo den Hub Nummer 0 bis 5 hier sind.
Hubs werden ja angezeigt, aber mit Bus und Port, nicht mit Hub-Nummer.
Wie findet man in der Ausgabe von lsusb den Hub Nummer x?

von tmomas (Gast)


Lesenswert?

Ich hab weiter oben doch schon geschrieben, wie man die Hubs incl. 
Hub-Nummer listet...

von Konrad S. (maybee)


Lesenswert?

@Erwin Meyer

Ruf hub-ctrl doch mal als root auf. Das macht einen Unterschied!

von Erwin M. (nobodyy)


Lesenswert?

Ok, ich habe nochmal nachgesehen und die Hubs nun zuordnen können; Bus 
und Device ID stimmen bei lsusb und usb-ctrl überein.
Das funktionierte zunächt nicht weil zwischen lsusb und hub-ctrl ein 
Power-on-Reset von einem Hub lag, weil keine Geräte an dem Hub erkannt 
wurden.

von Erwin M. (nobodyy)


Lesenswert?

Also ich habe das nun ausprobiert und es funktioniert:

Den Delock 87445 meldet hub-ctrl mit "INFO: individual power switching".
Der Strom-/Spannungsmesser zeigt das hub-ctrl das Ausschalten
für eine Sekunde durchführt, wenn ein Gerät wie ein Stick
angeschlossen ist. Ohne bleibt die Buchse dauerhaft aus.
Aber auch mit einer Webcam bleibt sie dauerhaft aus!
Das Einschalten ist immer dauerhaft.
Der scheinbar gleiche Delock VP-H209 verhält sich auch genau gleich.

Bei dem 7x-Hub von XYSTECH, PX-4894-675, zeigt sich das hub-ctrl nichts 
schalten kann; das "individual power switching" geht dort nur mit den 
manuellen Schaltern.

Bei den onboard-Hubs des X11SAE, alle auf Bus 04, zeigt sich das die, a) 
als ganged switching gemeldet werden und b) offenbar intern sind, denn 
auch wenn ich an alle Buchsen vom Mainboard etwas anschließe, wird 
nichts an den Hubs angezeigt:

/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
    |__ Port 1: Dev 22, If 0, Class=Hub, Driver=hub/4p, 5000M
        |__ Port 2: Dev 23, If 0, Class=Hub, Driver=hub/4p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
    |__ Port 1: Dev 57, If 0, Class=Mass Storage, Driver=usb-storage, 
480M
    |__ Port 2: Dev 55, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 4: Dev 56, If 0, Class=Vendor Specific Class, 
Driver=usbfs, 480M
        |__ Port 4: Dev 56, If 1, Class=Vendor Specific Class, Driver=, 
480M
        |__ Port 4: Dev 56, If 2, Class=Vendor Specific Class, Driver=, 
480M
        |__ Port 4: Dev 56, If 3, Class=Vendor Specific Class, Driver=, 
480M
        |__ Port 4: Dev 56, If 4, Class=Vendor Specific Class, Driver=, 
480M
        |__ Port 4: Dev 56, If 5, Class=Vendor Specific Class, Driver=, 
480M
        |__ Port 4: Dev 56, If 6, Class=Vendor Specific Class, Driver=, 
480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 5000M
    |__ Port 4: Dev 3, If 0, Class=Mass Storage, Driver=usb-storage, 
5000M
    |__ Port 5: Dev 4, If 0, Class=Mass Storage, Driver=usb-storage, 
5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/16p, 480M
    |__ Port 1: Dev 82, If 0, Class=Mass Storage, Driver=usb-storage, 
480M
    |__ Port 2: Dev 83, If 0, Class=Video, Driver=uvcvideo, 480M
    |__ Port 2: Dev 83, If 1, Class=Video, Driver=uvcvideo, 480M
    |__ Port 2: Dev 83, If 2, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 2: Dev 83, If 3, Class=Audio, Driver=snd-usb-audio, 480M
    |__ Port 2: Dev 83, If 4, Class=Human Interface Device, 
Driver=usbhid, 480M
    |__ Port 3: Dev 56, If 0, Class=Human Interface Device, 
Driver=usbhid, 12M
    |__ Port 3: Dev 56, If 1, Class=Human Interface Device, 
Driver=usbhid, 12M
    |__ Port 6: Dev 68, If 0, Class=Mass Storage, Driver=usb-storage, 
480M
    |__ Port 7: Dev 73, If 0, Class=Mass Storage, Driver=usb-storage, 
480M
    |__ Port 8: Dev 72, If 0, Class=Mass Storage, Driver=usb-storage, 
480M
    |__ Port 10: Dev 71, If 0, Class=Mass Storage, Driver=usb-storage, 
480M
    |__ Port 11: Dev 67, If 0, Class=Human Interface Device, 
Driver=usbhid, 12M
    |__ Port 12: Dev 66, If 0, Class=Human Interface Device, 
Driver=usbhid, 12M
    |__ Port 13: Dev 69, If 0, Class=Mass Storage, Driver=usb-storage, 
480M
    |__ Port 14: Dev 70, If 0, Class=Mass Storage, Driver=usb-storage, 
480M

Das Delock 10 m USB-Kabel wird als Hub mit 4 Ports angezeigt, aber
die lassen sich nicht schalten.

: Bearbeitet durch User
von tmomas (Gast)


Lesenswert?

Freut mich, daß es nun doch noch mit hub-ctrl funktioniert :)

von Erwin M. (nobodyy)


Lesenswert?

tmomas schrieb:
> Und so funktioniert hub-ctrl bei mir mit 14 Webcams an 2x 7-port Hubs
> (Targus PAUH212):
> hub-ctrl -h 5 -P 3 -p 0 -> Schaltet den Strom an Hub#5, Port#3 aus.

Und wie sieht es da mit der Stabilität aus, also bezüglich Vertauschen 
der Hubs (deren Reihenfolge)?

Ich habe jetzt einige Delock VP-H209, aka Delock 87445, aber wegen 
gleicher ID 05e3:0608 und gleicher SerialNumber=0 kann ich die nicht 
ohne weiteres unterscheiden.

von Erwin M. (nobodyy)


Lesenswert?

Also bei dem Delock VP-H209, aka Delock 87445 schaltet hub-ctrl beim 
Schalten von Port 1 auch wieder den Port 4 ein, nach circa 50 
Schaltvorgängen bei Port 1.
Und wird Port 1 geschaltet, flackert meist Port 4.
Also die Ports unabhängig voneinander schalten funktioniert nicht 
zuverlässig.

: Bearbeitet durch User
von tmomas (Gast)


Lesenswert?

Erwin M. schrieb:
> Ich habe jetzt einige Delock VP-H209, aka Delock 87445, aber wegen
> gleicher ID 05e3:0608 und gleicher SerialNumber=0 kann ich die nicht
> ohne weiteres unterscheiden.

Ich weiß zu jeder meiner 14 Webcams an welchem Hub und an welchem Port 
die Cam eingesteckt ist (wird via Skript ermittelt). Ich schalte alle 
gemeinsam ein, und nach erfolgter Aufnahme eine nach der anderen wieder 
aus. Ich hatte noch nie das Problem, daß ein falscher Port geschaltet 
wurde.

Wenn du allerdings gleiche USB Endgeräte hast, die absolut nicht 
unterscheidbar sind, dann hast du ein Problem.
Ich habe hier zwei Billig-Webcams mit gleicher VID:PID, die ich mit dem 
oben erwähnten Skript nur über die Auflösung unterscheiden kann.
Es kann in diesem Fall hilfreich sein, die Port-Zuordnung am Hub zu 
kennen, denn die ist fix. Port 1 ist immer Port 1 etc.
Wenn du also weißt, daß Endgerät A and Port1 hängt und B and Port2, hast 
du eine eindeutige Zuordnung und kannst entsprechend schalten.

Dir Port-Zuordnung mußt du selber herausfinden. Sie ist nicht zwingend 
linear, z.B. 1,2,3,4,5,6,7, sondern kann gerne mal wild gewürfelt sein, 
z.B. 1,3,5,4,2,6,7.

von tmomas (Gast)


Lesenswert?

Erwin M. schrieb:
> Also bei dem Delock VP-H209, aka Delock 87445 schaltet hub-ctrl beim
> Schalten von Port 1 auch wieder den Port 4 ein, nach circa 50
> Schaltvorgängen bei Port 1.

Wie prüfst du den Schaltvorgang?
Kleine USB LED Leuchten können hilfreich sein:
http://www.aliexpress.com/item/5pcs-pack-Soshine-Portable-Mini-USB-Power-3-LEDs-Night-Light-Lamp-Warm-Light-Universal-for/32597776814.html

von Erwin M. (nobodyy)


Lesenswert?

tmomas schrieb:
> Erwin M. schrieb:
>> Also bei dem Delock VP-H209, aka Delock 87445 schaltet hub-ctrl beim
>> Schalten von Port 1 auch wieder den Port 4 ein, nach circa 50
>> Schaltvorgängen bei Port 1.
>
> Wie prüfst du den Schaltvorgang?

Ganz einfach mit einem USB-Insektenkiller BioMetrixx S100.
Der braucht nur 200 mA und erscheint nicht als UB-Gerät. Er soll nur von 
Abend bis Morgen arbeiten.
Durch das Schalten der Webcam funktioniert das nicht.

von Entropiker (Gast)


Lesenswert?

per Software schaltbarer USB-Hub:

Reichelt DELOCK 87445
aktueller Preis (09.07.2016) EUR 5,50

Funktioniert, habe ich vor einigen Jahren ausprobiert; Weiß aber die 
softwareseitige Behandlung nicht mehr.

LG,
Entropievermehrer

von Christian (Gast)


Lesenswert?

Unter
Beitrag "Re: [S] USB Hub mit per port power switching"
steht:
"Achtung: Die DeLOCK Hubs die derzeit (Mitte September 2014) von 
Reichelt
geliefert werden haben keine LM3526L verbaut und können die Versorgung
nicht mehr schalten. Es ist nur ein GL850G verbaut!!!"

Kennt jemand noch eine Lieferquelle für schaltbare USB-Hubs?

von Erwin M. (nobodyy)


Lesenswert?

D-Link DUB-H7 und Gembird UHB-C247 sind noch am Markt.

von Christian (Gast)


Lesenswert?

Beim "D-Link DUB-H7" muss man auch aufpassen:
http://superuser.com/a/568404
"7-port USB hub D-Link DUB_H7 revision 2 (black) does NOT have Per-port 
power switching, it only supports Ganged power switching."

Der "Gembird UHB-C247" ist mit 32 EUR recht teuer. Wo steht, dass er 
wirklich geeignet ist?

von Konrad S. (maybee)


Lesenswert?

Erwin M. schrieb:
> D-Link DUB-H7 und Gembird UHB-C247 sind noch am Markt.

Zum D-Link DUB-H7:
Beitrag "Re: USB Hub mit Strom versorgen und über SW ein - bzw. ausschalten"
Das neuere Modell ist nicht mehr portweise schaltbar.

von Erwin M. (nobodyy)


Lesenswert?

Christian schrieb:
> Beim "D-Link DUB-H7" muss man auch aufpassen:
> http://superuser.com/a/568404
> "7-port USB hub D-Link DUB_H7 revision 2 (black) does NOT have Per-port
> power switching, it only supports Ganged power switching."
>
> Der "Gembird UHB-C247" ist mit 32 EUR recht teuer. Wo steht, dass er
> wirklich geeignet ist?

Das steht hier:

http://tiebing.blogspot.de/2011/01/use-linux-to-control-outlet.html

Ich habe noch ein paar Delock VP-H209, aka Delock 87445, abzugeben. Nur 
50 Euro pro Stück.

von Erwin M. (nobodyy)


Lesenswert?

Heute zeigte sich ein weiterer Nebeneffekt von hub-ctrl: Eine USB-HDD, 
2,5", am Nachbar-Port am Mainboard bewirkt das das Monitor-Bild für ein 
paar Sekunden verschwindet, obwohl das Video-Signal per HDMI zum Monitor 
geht, also mit USB nicht zu tun hat!
Erst Umstecken auf eine weiter entfernte USB3-Buchse schaffte Abhilfe.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.