Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
uhubctl — uhubctl - Controllo dell'alimentazione per porta degli hub USB | Kitploit
Strumenti/GitHubGitHub/mvp/uhubctl
Sicurezza Sistemi EmbeddedUtilità GenericheSicurezza IoTHacking HardwareSicurezza Hardware
GitHubmvp/uhubctl

uhubctl

uhubctl - Controllo dell'alimentazione per porta degli hub USB

Vedi Repository
2.8k25526 giorni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

uhubctl

uhubctl è una utility per controllare l'alimentazione USB per porta su hub USB intelligenti. Un hub intelligente è definito come uno che implementa la commutazione dell'alimentazione per porta.

L'idea originale per questo codice è stata ispirata da hub-ctrl.c di Niibe Yutaka: https://www.gniibe.org/development/ac-power-control-by-USB-hub

Hub USB compatibili

Nota che non molti hub USB supportano correttamente la commutazione dell'alimentazione per porta. Alcuni di essi non sono più in produzione e possono essere difficili da trovare.

Questa è la lista degli hub USB compatibili noti:

ProduttoreProdottoPorteUSBVID:PIDRilascioEOL
Acermonitor BE270U (vedi)43.02109:28112016
AmazonBasicsHU3641V1 (problema RPi)43.02109:28112013
AmazonBasicsHU3770V1 (problema RPi)73.02109:28112013
AmazonBasicsHU9003V1EBL, HUC9003V1EBL73.12109:28172018
AmazonBasicsHU9002V1SBL, HU9002V1EBL, HU9002V1ESL, HHU9002V1EZPR01 (nota)103.12109:28172018
AmazonBasicsHUC9002V1SBL, HUC9002V1EBL, HUC9002V1ESL103.12109:28172018
AmazonBasicsU3-7HUB (funziona solo con 1 porta di ricarica)73.02109:28132020
AnkerAK-68ANHUB-BV7A-0004 (nota)73.0

Questa tabella non è affatto completa. Se il tuo hub funziona con uhubctl, ma non è elencato sopra, segnalalo aprendo una nuova issue su https://github.com/mvp/uhubctl/issues, così possiamo aggiungerlo alla tabella dei supportati. Nel tuo report, fornisci il modello esatto del prodotto e aggiungi l'output di uhubctl e testa il supporto per lo spegnimento della VBUS come descritto di seguito nelle FAQ.

Nota che diverse schede madri moderne hanno hub root integrati che supportano questa funzione: potresti non aver nemmeno bisogno di comprare un hub esterno.

Nota sulla dualità USB 3.0

Se hai un hub USB 3.0 collegato a una porta upstream USB3, verrà rilevato come 2 hub virtuali indipendenti: USB2 e USB3, e i tuoi dispositivi USB verranno collegati all'hub virtuale USB2 o USB3 a seconda delle loro capacità e della velocità di connessione. Per controllare l'alimentazione di tali hub, è necessario spegnere/accendere l'alimentazione su entrambi gli hub virtuali USB2 e USB3 affinché le modifiche di spegnimento/accensione abbiano effetto. uhubctl proverà a farlo automaticamente (a meno che non si disabiliti questo comportamento con l'opzione -e).

Sfortunatamente, mentre la maggior parte degli hub interromperà la connessione dati USB, alcuni potrebbero non interrompere la VBUS verso la porta, il che significa che il telefono collegato potrebbe continuare a caricarsi dalla porta che è stata spenta da uhubctl.

Installazione

Per Linux e MacOS, uhubctl è disponibile nei gestori di pacchetti standard e può essere installato con i seguenti comandi:

  • MacOS: brew install uhubctl oppure sudo port install uhubctl
    • ⚠️ MacOS 26+ richiede libusb 1.0.30 o successivo!
  • Ubuntu/Debian/Raspbian: sudo apt install uhubctl
  • Redhat/EPEL/Fedora/CentOS: sudo yum install uhubctl
  • OpenSUSE: sudo zypper install uhubctl
  • FreeBSD: cd /usr/ports/sysutils/uhubctl && sudo make install

Tuttavia, la versione di uhubctl installata dal gestore di pacchetti standard potrebbe non essere necessariamente l'ultima versione, o addirittura essere molto indietro rispetto alla versione corrente. Se la ultima versione pubblicata di uhubctl è più nuova di quella offerta dal tuo gestore di pacchetti, potresti dover compilare e installare dal sorgente come descritto di seguito.

Compilazione

Questa utility è stata testata per la compilazione e il funzionamento su Linux (Ubuntu/Debian/Raspbian, Redhat/EPEL/Fedora/CentOS, Arch Linux, Gentoo, openSUSE, Buildroot), FreeBSD, NetBSD, SunOS e MacOS.

Mentre uhubctl compila su Windows, la commutazione dell'alimentazione USB non funziona su Windows perché libusb usa il driver winusb.sys, che secondo Microsoft non supporta le necessarie richieste di controllo USB. Questo potrebbe essere risolto se libusb iniziasse a supportare un driver diverso su Windows.

Nota che è altamente raccomandato avere installata l'utility pkgconf (o pkg-config) (spesso è installata di default).

Prima di tutto, devi installare la libreria libusb-1.0 (è richiesta la versione 1.0.13 o successiva, è consigliata la 1.0.23 o successiva):

  • Ubuntu: sudo apt-get install libusb-1.0-0-dev pkgconf
  • Redhat: sudo yum install libusb1-devel pkgconf
  • OpenSUSE: sudo zypper install libusb-1_0-devel pkgconf
  • MacOS: brew install libusb pkgconf, oppure sudo port install libusb-devel pkgconf
  • FreeBSD: pkg install gmake pkgconf (libusb è incluso di default)
  • NetBSD: sudo pkgin install libusb1 gmake pkgconf
  • Windows: TBD?

Per scaricare il sorgente di uhubctl e compilarlo:

root@kitploit:~
git clone https://github.com/mvp/uhubctl
cd uhubctl
make

Questo dovrebbe generare il binario uhubctl. Puoi installarlo nel tuo sistema come /usr/sbin/uhubctl usando:

root@kitploit:~
sudo make install

Nota che su alcuni sistemi operativi (es. FreeBSD/NetBSD) devi usare gmake per compilare.

Utilizzo

⚠️ Su Linux, usa sudo o configura i permessi USB come descritto di seguito!

Per elencare tutti gli hub supportati:

root@kitploit:~
uhubctl

Puoi controllare l'alimentazione su una o più porte USB in questo modo:

root@kitploit:~
uhubctl -a off -p 2

Ciò significa agire sull'hub intelligente predefinito e spegnere l'alimentazione (-a off, oppure -a 0) sulla porta 2 (-p 2). Le azioni supportate sono off/on/cycle/toggle (oppure 0/1/2/3). cycle significa spegnere l'alimentazione, attendere un certo ritardo (configurabile con -d) e riaccenderla. Le porte possono essere un elenco separato da virgole e possono usare - per gli intervalli, es. 2, oppure , oppure , oppure .> ⚠️ La disattivazione delle porte USB integrate potrebbe scollegare tastiera o mouse, quindi fai attenzione a quali porte stai disattivando!

Se hai più di uno smart USB hub collegato, dovresti scegliere l'hub specifico da controllare usando il parametro -l (posizione). Per trovare le posizioni degli hub, esegui semplicemente uhubctl senza parametri. Le posizioni degli hub sono nel formato b-x.y.z, dove b è il numero del bus USB, e x, y, z... sono i numeri di porta per tutti gli hub nella catena, a partire dall'hub root per un dato bus USB. Questo indirizzo è semi-stabile: non cambia se scolleghi/ricolleghi (o spegni/accendi) un dispositivo USB nella stessa porta fisica USB (questo metodo è usato anche nel kernel Linux).

Permessi USB su Linux

Su Linux, dovresti configurare i permessi USB di udev (altrimenti dovrai eseguirlo come root usando sudo uhubctl).

A partire dal kernel Linux 6.0 esiste un'interfaccia standard per accendere o spegnere le porte degli hub USB, e uhubctl proverà a usarla (invece di libusb) per impostare lo stato delle porte. È per questo che ci sono regole aggiuntive per i kernel 6.0+. Non c'è alcun danno nell'avere queste regole su sistemi che eseguono versioni precedenti del kernel.

Per correggere i permessi USB, esegui prima sudo uhubctl e annota tutti i vid:pid per gli hub che devi controllare. Quindi, aggiungi regole udev come quelle sotto al file /etc/udev/rules.d/52-usb.rules (sostituisci 2001 con il tuo vendor id dell'hub, oppure rimuovi completamente il filtro ATTR{idVendor} per consentire l'accesso a qualsiasi hub USB):

root@kitploit:~
SUBSYSTEM=="usb", DRIVER=="hub|usb", MODE="0666", ATTR{idVendor}=="2001"
# Linux 6.0 or later (its ok to have this block present for older Linux kernels):
SUBSYSTEM=="usb", DRIVER=="hub|usb", \
  RUN="/bin/sh -c \"chmod -f 666 $sys$devpath/*port*/disable || true\""

Nota che per gli hub USB3, alcuni hub usano un vendor ID diverso per i componenti USB2 rispetto a USB3 dello stesso chip, ed entrambi necessitano dei permessi per far funzionare correttamente uhubctl. Ad esempio, per Raspberry Pi 4B, devi aggiungere queste 2 righe (o rimuovere il filtro idVendor):

root@kitploit:~
SUBSYSTEM=="usb", DRIVER=="hub|usb", MODE="0666", ATTR{idVendor}=="2109"
SUBSYSTEM=="usb", DRIVER=="hub|usb", MODE="0666", ATTR{idVendor}=="1d6b"

Se non ti piace la modalità completamente aperta 0666, puoi limitare l'accesso per gruppo in questo modo:

root@kitploit:~
SUBSYSTEM=="usb", DRIVER=="hub|usb", MODE="0664", GROUP="dialout"
# Linux 6.0 or later (its ok to have this block present for older Linux kernels):
SUBSYSTEM=="usb", DRIVER=="hub|usb", \
  RUN+="/bin/sh -c \"chown -f root:dialout $sys$devpath/*port*/disable || true\"" \
  RUN+="/bin/sh -c \"chmod -f 660 $sys$devpath/*port*/disable || true\""

e poi aggiungi gli utenti autorizzati al gruppo dialout:

root@kitploit:~
sudo usermod -a -G dialout $USER

Affinché le modifiche alle regole udev abbiano effetto, riavvia o esegui:

root@kitploit:~
sudo udevadm trigger --attr-match=subsystem=usb

Per tua comodità, una regola udev pronta all'uso è fornita qui.

FAQ

Cos'è la commutazione di alimentazione per-porta USB?

Secondo la specifica USB 2.0, gli hub USB possono dichiarare nessuna commutazione di alimentazione, commutazione di alimentazione di gruppo (tutte le porte contemporaneamente) o commutazione di alimentazione per-porta (individuale). Nota che di default uhubctl rileva solo gli hub USB che supportano la commutazione di alimentazione per-porta (ma puoi forzarlo a provare a operare su hub non supportati con l'opzione -f). Puoi scoprire che tipo di commutazione di alimentazione supporta il tuo hardware usando sudo lsusb -v:

Nessuna commutazione di alimentazione:

root@kitploit:~
wHubCharacteristic 0x000a
  No power switching (usb 1.0)
  Per-port overcurrent protection

Commutazione di alimentazione di gruppo:

root@kitploit:~
wHubCharacteristic 0x0008
  Ganged power switching
  Per-port overcurrent protection

Commutazione di alimentazione per-porta:

root@kitploit:~
wHubCharacteristic 0x0009
  Per-port power switching
  Per-port overcurrent protection

Come faccio a verificare se il mio hub USB è supportato da uhubctl?

  1. Esegui sudo uhubctl. Se il tuo hub non è elencato, non è supportato. In alternativa, puoi eseguire sudo lsusb -v e cercare Per-port power switching - se non vedi questa riga nell'output di lsusb, l'hub non è supportato.
  2. Verifica il supporto per lo spegnimento di VBUS (tensione): collega un telefono, una luce USB o una ventola USB alla porta USB del tuo hub. Prova a usare uhubctl per spegnere l'alimentazione su quella porta e verifica che il telefono smetta di caricarsi, la luce USB smetta di illuminare o la ventola USB smetta di girare. Se VBUS non si spegne, il produttore del tuo hub non ha incluso il circuito per tagliare effettivamente l'alimentazione. Un tale hub funzionerebbe comunque per interrompere la connessione dati USB, ma non può spegnere l'alimentazione, e non lo consideriamo un dispositivo supportato.
  3. Se i test sopra sono riusciti, segnala il tuo hub aprendo una nuova issue su https://github.com/mvp/uhubctl/issues, così possiamo aggiungerlo all'elenco dei dispositivi supportati. Per favore non segnalare hub non supportati, a meno che non sia una revisione hardware diversa di un modello supportato già elencato.

I dispositivi USB non vengono rimossi dopo lo spegnimento dell'alimentazione della porta su Linux

Dopo lo spegnimento della porta USB, udev non riceve alcun evento, quindi mantiene i file di dispositivo. Tuttavia, tentare di accedere ai file di dispositivo causerà un errore di I/O.

Questo è un problema del kernel Linux ed è risolto dalla versione uhubctl 2.5.0 per i sistemi con kernel Linux 6.0 o successivo.

Se stai ancora usando Linux 5.x o precedente, puoi usare questa soluzione alternativa per questo problema:

root@kitploit:~
sudo uhubctl -a off -l ${location} -p ${port}
sudo udevadm trigger --action=remove /sys/bus/usb/devices/${location}.${port}/

Il file di dispositivo verrà rimosso da udev, ma il dispositivo USB sarà ancora visibile in lsusb. Nota che il percorso /sys/bus/usb/devices/${location}.${port} esiste solo se il dispositivo è stato rilevato su quella porta. Quando riattivi l'alimentazione, il dispositivo dovrebbe ri-enumerarsi correttamente (non c'è bisogno di chiamare di nuovo udevadm).

L'alimentazione si riaccende dopo pochi secondi su Linux

Alcuni driver di dispositivo nel kernel vengono sorpresi dallo spegnimento del dispositivo USB e provano automaticamente a riaccenderlo.

Questo è un problema del kernel Linux ed è risolto dalla versione uhubctl 2.5.0 per i sistemi con kernel Linux 6.0 o successivo.

Se stai ancora usando Linux 5.x o precedente:

Puoi usare l'opzione -r N, dove N è un numero da 10 a 1000, per risolvere questo problema - uhubctl proverà a spegnere l'alimentazione molte volte in rapida successione, e dovrebbe sopprimerlo.

Disabilitare l'autorizzazione USB per il dispositivo in questione prima di spegnere l'alimentazione con uhubctl dovrebbe aiutare:

root@kitploit:~
echo 0 > sudo tee /sys/bus/usb/devices/${location}.${port}/authorized

Se il tuo dispositivo è un'unità di archiviazione di massa USB, invocare udisksctl prima di chiamare uhubctl dovrebbe aiutare anche in questo caso:

root@kitploit:~
sudo udisksctl power-off --block-device /dev/disk/...`
sudo uhubctl -a off ...

Vengono rilevati più hub a 4 porte, ma ho solo un hub a 7 porte collegato

Molti produttori di hub costruiscono i loro hub USB usando chip USB di base a 4 porte. Ad esempio, per realizzare un hub a 7 porte, collegano in cascata due hub a 4 porte - 1 porta è persa per il collegamento in cascata, quindi si ottiene un hub a 4+4-1=7 porte. Allo stesso modo, un hub a 10 porte potrebbe essere costruito come 3 hub a 4 porte collegati in cascata tra loro, che danno 4+4+4-2=10 porte utilizzabili.

Nota che non dovresti mai provare a cambiare lo stato di alimentazione per le porte usate per collegare in cascata gli hub interni. Farlo confonderà il circuito dell'hub interno e causerà un comportamento imprevedibile.

Raspberry Pi spegne l'alimentazione su tutte le porte, non solo su quella specificata

Questa è una limitazione del design hardware di Raspberry Pi. Come soluzione alternativa, puoi comprare un hub USB esterno dalla lista dei supportati qui sopra, collegarlo a qualsiasi porta USB di Raspberry Pi e controllare l'alimentazione sulle sue porte in modo indipendente. Inoltre, ci sono hub supportati progettati specificamente per Raspberry Pi, ad es. UUGear MEGA4.

Per riferimento, i modelli di Raspberry Pi supportati hanno la seguente topologia USB interna:

Raspberry Pi B+,2B,3B
  • Hub singolo 1-1, porte 2-5 raggruppate, tutte controllate dalla porta 2:

    root@kitploit:~
    uhubctl -l 1-1 -p 2 -a 0
    

    Tentare di controllare le porte 3,4,5 non farà nulla. La porta 1 controlla l'alimentazione per Ethernet+WiFi.

Raspberry Pi 3B+
  • Hub principale 1-1, tutte le 4 porte raggruppate, controllate dalla porta 2 (spegne anche le porte dell'hub secondario). La porta 1 collega l'hub 1-1.1 sotto, le porte 2 e 3 sono cablate all'esterno, la porta 4 non è cablata.

    root@kitploit:~
    uhubctl -l 1-1 -p 2 -a 0
    
  • Hub secondario 1-1.1 (collegato in cascata al principale): 3 porte, la porta 1 è usata per Ethernet+WiFi, e le porte 2 e 3 sono cablate all'esterno.

Raspberry Pi 4B

⚠️ Se il firmware VL805 è più vecchio di 00137ad (controlla con sudo rpi-eeprom-update), devi aggiornare il firmware per far funzionare la commutazione di alimentazione su RPi 4B.

  • Hub USB2 1, 1 porta, collega solo l'hub 1-1 sotto.

  • Hub USB2 1-1, 4 porte raggruppate, duale dell'hub USB3 2 sotto:

    root@kitploit:~
    uhubctl -l 1-1 -a 0
    
  • Hub USB3 2, 4 porte raggruppate, duale dell'hub USB2 1-1 sopra:

    root@kitploit:~
    uhubctl -l 2 -a 0
    
  • Hub USB2 3, 1 porta, controller OTG. La commutazione di alimentazione non è supportata.

Raspberry Pi 5

Raspberry Pi 5 ha due porte USB2 e due porte USB3 (4 in totale). Queste porte sono collegate a 4 hub USB distinti 1,2,3,4 in una configurazione davvero strana (ma a seconda del sistema operativo e della revisione hardware, gli hub di interesse possono essere 2,3,4,5). Se un dispositivo USB3 è collegato a una presa blu, verrà rilevato sull'hub USB3 2 o 4. Se un dispositivo USB2 è collegato a una qualsiasi presa o un dispositivo USB3 è collegato a una presa nera, verrà rilevato sull'hub USB2 1 o 3. Indipendentemente dal tipo di connessione USB2/USB3, le prese blu sono sempre la porta 1, e le prese nere sono sempre la porta 2.

Ciascuno dei 4 hub USB integrati dichiara di supportare la commutazione di alimentazione per-porta, ma non è vero. In realtà, su Raspberry Pi 5 tutte le 4 porte sono raggruppate insieme in un unico gruppo, nonostante appartengano a 4 hub USB logici diversi.

Per spegnere l'alimentazione VBUS, deve essere disattivata su tutti gli hub e le porte integrati con: ``` uhubctl -l 2 -a 0 uhubctl -l 4 -a 0

root@kitploit:~
Per riattivarlo:   ```
uhubctl -l 2 -a 1
uhubctl -l 4 -a 1

Nota: l'alimentazione VBUS si spegne solo se tutte le porte sono spente - abilitare una qualsiasi porta riattiva la VBUS per tutte e 4 le porte.

Progetti notevoli che utilizzano uhubctl

Copyright

Copyright (C) 2009-2026 Vadim Mikhailov

Questo file può essere distribuito secondo i termini e le condizioni della GNU General Public License versione 2.

Scarica lo strumento
2109:0812
2014
AppleMac Mini M4 (solo 2 porte frontali)23.205AC:800B2024
AppleMacBook Air (fine 2010)22.01D6B:000220102020
ApplePro Display XDR MWPE2LL/A (hub USB interno)42.005AC:91392019
AppleThunderbolt Display 27" (hub USB interno)62.020112016
AppleUSB Keyboard With Numeric Pad (hub USB interno)32.02011
Asusscheda madre Z77 Sabertooth (hub USB integrato)62.02012
Asusscheda madre Z87-PLUS (hub USB integrato)43.020132016
AukeyCB-C5943.02109:28132017
B+B SmartWorxUHR20442.00856:DB002013
B+B SmartWorxUSH30443.004B4:650620172019
Basler200003623443.00451:80462016
BelkinF5U10142.00451:204620052010
BelkinF5U238UKCRL-MOB42.00409:005920042010
BenQmonitor PD2700U 4K (funziona solo in modalità USB2)43.005E3:06102018
BenQPD3220U43.105E3:06102019
ByteccBT-UH340 (avviso)43.02109:81102010
CentechCT-USB4HUB ReTRY HUB (nota)43.00424:27442017
CircuitcoBeagleboard-xM (hub USB interno)42.00424:95142010
Club3DCSV-3242HD Dual Display Docking Station43.02109:28112015
CoolgearUSBG-12U2ML122.005E3:06072015
CypressCY4608 HX2VL (nota)42.004B4:65702012
D-LinkDUB-2332 rev A133.02022
D-LinkDUB-H4 rev D,E (nero). Nota: rev A,C,F non supportate42.005E3:06082012
D-LinkDUB-H7 rev A (argento)72.02001:F10320052010
D-LinkDUB-H7 rev D,E (nero). Rev B,C,F,G non supportate72.005E3:06082012
DellDA300 adattatore mobile USB-C23.02109:28202018
Dellmonitor P2416D 24" QHD (nota)42.02017
DellS2719DGF 27" WQHD monitor gaming53.00424:57342018
DellUltraSharp 1704FPT 17" monitor LCD42.00424:A70020052015
DellUltraSharp U2415 24" monitor LCD53.02014
DellUltraSharp U3419W 34" monitor curvo63.02020
DellWyse 3040 (-f richiesto)63.02017
Delock6253743.020172021
Delock87445 (nota)42.005E3:060820092013
ElecomU2H-G4S42.020062011
Gigabytemonitor G27Q (vedi)43.02109:08172020
GlobalScaleESPRESSObin SBUD102 V513.01D6B:00032017
HardkernelODROID-C4 (nota)43.02020
Hawking TechnologyUH21442.020032008
Hewlett PackardUSB-C Dock G5 5TW10AA53.003F0:076B2019
Hewlett PackardP5Q58UT33.02019
IBMSK-8815 tastiera USB31.104B3:301A2004
InateckHB2025A (solo USB2)43.12109:28222021
IOIU3H415E143.02012
j5createJUH377 (nota)73.02016
j5createJUH470 (nota)33.005E3:06102014
Juiced Systems6HUB-0173.00BDA:041120142018
KUNBUS GmbHRevPi Connect (+) / S / SE22.00424:95142018
KUNBUS GmbHRevPi Connect 423.02022
KUNBUS GmbHRevPi Core 3 / S / SE22.00424:95142017
LG Electronicsmonitor 27MD5KL-B43.0043E:9A602019
LG Electronicsmonitor 27GL850-B43.00451:81422019
LG Electronicsmonitor 27UK850-W23.02018
LG Electronicsmonitor 27UN83A-W23.00451:81422020
LG Electronicsmonitor 38WK95C-W43.00451:81422018
LenovoThinkPad Mini Dock Series 3 (433710U)62.017EF:100A2016
LenovoThinkPad Ultra Docking Station (40A20090EU)62.017EF:100F2015
LenovoThinkPad Ultra Docking Station (40AJ0135EU)73.117EF:30702018
LenovoThinkPad USB 3.0 Ultra Dock (40A8) DK-152363.017EF:10142015
LenovoThinkPad X200 Ultrabase 42X496332.017EF:100520082011
LenovoThinkPad X6 Ultrabase 42W310742.017EF:100020062009
LenovoThinkPlus 4-in-1 hub USB-C 4X90W8649733.02021
Lenovomonitor ThinkVision T24i-1042.017EF:06102018
LenovoHub USB-C a 4 porte USB-A (solo USB2)42.017EF:103A2020
Lindyconvertitore seriale USB a 4 porte41.1058F:92542008
LinksysUSB2HUB4 (nota)42.020042010
MaplinA08CQ (solo porte rosse)72.00409:005920082011
MetadotDas Keyboard 423.02014
MicrochipEVB951222.02009
MicrochipEVB-USB251772.02008
MicrochipEVB-USB2534BC42.02013
MicrochipEVB-USB580773.02016
MoxaUport-40772.0110A:04072009
NVidiaJetson Nano B01 (dettagli)43.02019
NVidiaJetson Orin Nano Devkit (dettagli)43.02023
NVidiaJetson Xavier NX (dettagli)43.02020
PhidgetsHUB0003_072.01A40:02012017
Philips346B1C UltraWide 34" monitor curvo43.005E3:06102019
PlugableUSB3-HUB7BC73.02109:08132015
PlugableUSB3-HUB7C (funziona solo con 2 porte di ricarica)73.02109:08132015
PlugableUSBC-HUB7BC (funziona per 6/7 porte, non per quella più a destra)73.02109:08172021
PlugableUSB3-HUB10-C2 (funziona solo con 2 porte di ricarica)103.02014
Port IncNWUSB0141.10451:144619992003
Raspberry PiB+, 2B, 3B (vedi sotto)42.02011
Raspberry Pi3B+ (vedi sotto)42.00424:25142018
Raspberry Pi4B (vedi sotto)43.02109:34312019
Raspberry Pi5 (vedi sotto)43.01D6B:00022023
RenesasuPD720202 controller host PCIe USB 3.023.02013
RosewillRHUB-21042.00409:005A20112014
RosonwayRSH-518C (nota)73.02109:08172021
RosonwayRSH-A10 (vedi)103.00BDA:04112020
RosonwayRSH-A13 (avviso)133.12109:28222021
RosonwayRSH-A16 (nota, avviso)163.00bda:04112020
RosonwayRSH-A37S73.02109:28222021
RosonwayRSH-A104 (solo USB2)43.12109:28222022
RosonwayRSH-ST07C (solo 4)73.02109:28222023
RosonwayRSH-ST10C-6 (nota)103.10BDA:04232024
Sanwa SupplyUSB-HUB14GPH41.120012003
SatechiMac Mini Hub (M1/M2)43.02109:28172023
SeagateBackup Plus Hub STEL800010023.00BC2:AB442016
Seeed StudioreTerminal CM410403222.00424:25142021
StarTechDKT30CSDHPD3 dock da viaggio USB-C33.02109:28172018
StarTechHB30A4AIB (avviso)43.02109:28172018
StarTechHB31C2A2CB (nota)53.014B0:013D2020
StarTechHB31C3A1CPD3 (nota)53.114B0:013A2019
SunixSHB4200MA42.00409:005820062009
System TalksSugoi USB2-HUB4X (avviso)42.02007
TargusACH155 (la porta 3 controlla tutte le porte)43.02022
TargusPA095UZ22.02004
TargusPAUH212/PAUH212U72.020042009
Texas InstrumentsTUSB4041PAPEVM42.10451:81422015
UUGearMEGA4 (per Raspberry Pi 4B)43.02109:08172021
VirtualHerehub USB3 a 4 porte (nota)43.02024
2,4
2-5
1-2,5-8
ProjectDescription
Morse code USB lightLampeggia un messaggio in codice Morse con una luce USB
Webcam USB lightAccende/spegne il LED quando la webcam viene accesa/spenta
Cinema LightboxAccende/spegne il Cinema Lightbox dall'app Casa su iOS
Build Status LightCrea una spia dello stato di build in meno di 10 minuti
BuildenlightsStato di build di progetti GitLab/GitHub come luce verde/rossa
Weather StationResetta la stazione meteorologica quando si blocca
sysmoQMODResetta i modem cellulari quando necessario
Smog SensorReset dell'alimentazione del sensore di smog basato su Raspberry Pi
Terrible ClusterAccende/spegne i nodi del cluster Raspberry Pi secondo necessità
Ideal Music ServerSpegne le porte USB inutilizzate per migliorare la qualità audio
USB drives with no phantom loadAlimenta le unità USB solo quando serve per risparmiare energia
USB drive data recoveryRecupera dati da un disco rigido USB guasto
Control power to 3D printerPlugin web OctoPrint per il controllo dell'alimentazione USB
USB fan for Raspberry PiControlla la ventola USB per evitare il surriscaldamento del Raspberry Pi
Raspberry Pi Reboot RouterRiavvia automaticamente il router se Internet non funziona
Control USB Lamp With VoiceControllo vocale della lampada USB tramite Siri e Raspberry Pi
Control USB LED StripControllo di una striscia LED alimentata via USB
Brew beer with Raspberry PiSistema automatizzato per la produzione di birra con Raspberry Pi
Webcam On-Air SignAccende automaticamente un'insegna quando la webcam è in uso
Do it yourself PPPSSaldare i fili nel tuo hub USB per supportare uhubctl
Open source PPPS hubProgetto hardware open source per un hub compatibile con uhubctl
Python Wrapper for uhubctlModulo per usare uhubctl con Python
labgridFramework per testare Linux embedded su hardware
Thermal CameraAccende/spegne la termocamera del robot quando necessario
Mobile Device FarmCicli di alimentazione USB remoti per Device Farm tramite uhubctl