[RISOLTO] Riconoscimento porta USB

Bash, Perl, Python, Ruby, ...

Re: Riconoscimento porta USB

Messaggioda HAL 9000 » 05/11/2015, 16:51

Prova utilizzando 001:002, che dall'output di lsusb, identifica l'hub di cui fa parte il dispositivo che colleghi:
Codice: Seleziona tutto
./hubpower 001:002 power 3 off

Codice: Seleziona tutto
./hubpower 001:002 power 3 on
Ricordarsi di modificare il primo messaggio della discussione per aggiungere [RISOLTO] prima del titolo, quando conclusa.

Wiki: APT e Repository, Comandi utili, Collabora.
Manuali di Debian 9 "Stretch" (amd64): installazione, aggiornamento da Debian 8.
Avatar utente
HAL 9000
wiki member
wiki member
 
Messaggi: 1483
Iscritto il: 10/08/2009, 10:01

Re: Riconoscimento porta USB

Messaggioda Aki » 07/11/2015, 9:05

HAL 9000 ha scritto:Prova utilizzando 001:002, che dall'output di lsusb, identifica l'hub di cui fa parte il dispositivo che colleghi:
Codice: Seleziona tutto
./hubpower 001:002 power 3 off

Codice: Seleziona tutto
./hubpower 001:002 power 3 on

Confermo le indicazioni di HAL9000 anche se non è detto che il programma dia i risultati voluti (vi ho trovato anche un errore della dichiarazione di un include file che genera dei segfault se non corretto in caso di compilazione per architettura X86_64).

In alternativa puoi creare uno script (che disattiva l'intero hub usb interno al Raspberry Pi) in cui inserire i due seguenti comandi da avviare con i privilegi dell'utente root, ad esempio, tramite cron o nel momento che rilevi la specifica condizione che ti interessa (nota: '1-2' corrisponde al "bus" e "port" dell'hub usb interno al Raspberry Pi):
Codice: Seleziona tutto
echo '1-2' > /sys/bus/usb/drivers/usb/unbind
echo '1-2' > /sys/bus/usb/drivers/usb/bind

Considera, però, che allo stesso hub usb della macchina fotografica sono connessi sia il dongle wifi, sia la scheda di rete ethernet del Raspberry Pi, per cui, alla disconnessione del kernel dall'hub usb con reset delle periferiche, perderai istantaneamente la connessione di rete se, come credo, ti connetti da terminale remoto (tramite ethernet o tramite WiFi) e/o smetteranno di funzionare le periferiche USB eventualmente collegate (ad esempio, tastiera e mouse, se presenti).
Aki
Global Moderator
Global Moderator
 
Messaggi: 8298
Iscritto il: 27/12/2007, 16:59

Re: Riconoscimento porta USB

Messaggioda ferlino » 07/11/2015, 9:43

Sembra che la cosa sia sempre più complessa ! Ringrazio ancora per l'assistenza.
Avevo letto anch'io qualcosa relativamente al fatto che si poteva eseguire la medesima operazione con ripetute scritture di opportuni dati nei posti giusti, ma non avevo osato tentarci.
Comunque lo script, lanciato da root
Codice: Seleziona tutto
#!/bin/bash

echo '1-2' > /sys/bus/usb/drivers/usb/unbind
echo '1-2' > /sys/bus/usb/drivers/usb/bind

produce
root@raspberrypi:/home/pi/hubpower-deb/hubpower# ./hubpw.sh
./hubpw.sh: riga 3: echo: errore in scrittura: Nessun device corrisponde
./hubpw.sh: riga 4: echo: errore in scrittura: Nessun device corrisponde


Ho provato lo script, anche con qualche minima variante; ho timore che vada a scrivere qualcosa di non corretto da qualche parte e che ciò pregiudichi l'utilizzo delle porte, incasinando il tutto. Eventualmente un corretto riavvio ripristina la configurazione ?
ferlino
Newbie
Newbie
 
Messaggi: 31
Iscritto il: 03/10/2015, 17:48

Re: Riconoscimento porta USB

Messaggioda Aki » 07/11/2015, 10:12

Non corri il rischio di danneggiare alcunché.

Per comprendere meglio i nomi utilizzati per identificare hub e periferiche usb, puoi impartire i seguenti comandi:
Codice: Seleziona tutto
script log.txt
ls -la /sys/bus/usb/drivers/usb/
ls -la /sys/bus/usb/drivers/usb/1-1/*
exit

Il log dei comandi impartiti sarà nel file log.txt
Aki
Global Moderator
Global Moderator
 
Messaggi: 8298
Iscritto il: 27/12/2007, 16:59

Re: Riconoscimento porta USB

Messaggioda ferlino » 07/11/2015, 11:00

Qui ti seguo meno.
Ti allegherei il file log.txt ma non ci riesco, nonostante l'abbia compattato, rinominato, ecc. ecc.
Ecco l'inizio (non so se serve, se era quello che chiedevi)

Codice: Seleziona tutto
Script started on sab 07 nov 2015 10:46:27 CET
]0;pi@raspberrypi: /home/UGOpi@raspberrypi /home/UGO $ ls -la      ls -la /sys/bus/usb/drivers/usb/
totale 0
drwxr-xr-x 2 root root    0 nov  7 09:35 .
drwxr-xr-x 9 root root    0 nov  7 09:34 ..
lrwxrwxrwx 1 root root    0 nov  7 09:35 1-1 -> ../../../../devices/platform/soc/3f980000.usb/usb1/1-1
lrwxrwxrwx 1 root root    0 nov  7 09:35 1-1.1 -> ../../../../devices/platform/soc/3f980000.usb/usb1/1-1/1-1.1
lrwxrwxrwx 1 root root    0 nov  7 09:35 1-1.2 -> ../../../../devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2
lrwxrwxrwx 1 root root    0 nov  7 09:35 1-1.3 -> ../../../../devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3
--w------- 1 root root 4096 nov  7 09:40 bind
--w------- 1 root root 4096 nov  7 09:35 uevent
--w------- 1 root root 4096 nov  7 09:40 unbind
lrwxrwxrwx 1 root root    0 nov  7 09:35 usb1 -> ../../../../devices/platform/soc/3f980000.usb/usb1
]0;pi@raspberrypi: /home/UGOpi@raspberrypi /home/UGO $ ls -la /sys/bus/usb/drivers/usb/1-1/*
-rw-r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/authorized
-rw-r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/avoid_reset_quirk
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/bcdDevice
-rw-r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/bConfigurationValue
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/bDeviceClass
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/bDeviceProtocol
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/bDeviceSubClass
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/bmAttributes
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/bMaxPacketSize0
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/bMaxPower
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/bNumConfigurations
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/bNumInterfaces
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/busnum
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/configuration
-r--r--r-- 1 root root 65553 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/descriptors
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/dev
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/devnum
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/devpath
lrwxrwxrwx 1 root root     0 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/driver -> ../../../../../../bus/usb/drivers/usb
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/idProduct
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/idVendor
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/ltm_capable
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/maxchild
lrwxrwxrwx 1 root root     0 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/port -> ../1-0:1.0/usb1-port1
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/quirks
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/removable
--w------- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/remove
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/speed
lrwxrwxrwx 1 root root     0 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/subsystem -> ../../../../../../bus/usb
-rw-r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/uevent
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/urbnum
-r--r--r-- 1 root root  4096 nov  7 09:37 /sys/bus/usb/drivers/usb/1-1/version

/sys/bus/usb/drivers/usb/1-1/1-1.1:
totale 0
drwxr-xr-x 4 root root     0 nov  7 09:35 .
drwxr-xr-x 7 root root     0 nov  7 09:35 ..
drwxr-xr-x 6 root root     0 nov  6 21:14 1-1.1:1.0
-rw-r--r-- 1 root root  4096 nov  7 10:47 authorized
-rw-r--r-- 1 root root  4096 nov  7 10:47 avoid_reset_quirk
-r--r--r-- 1 root root  4096 nov  6 21:14 bcdDevice
-rw-r--r-- 1 root root  4096 nov  7 10:47 bConfigurationVa
ferlino
Newbie
Newbie
 
Messaggi: 31
Iscritto il: 03/10/2015, 17:48

Re: Riconoscimento porta USB

Messaggioda Aki » 07/11/2015, 11:02

Usa http://paste.debian.net per inviare il log.

Comunque, dal frammento di log che hai inviato lo script di reset dovrebbe essere:
Codice: Seleziona tutto
#!/bin/bash
echo '1-1' > /sys/bus/usb/drivers/usb/unbind
echo '1-1' > /sys/bus/usb/drivers/usb/bind
Aki
Global Moderator
Global Moderator
 
Messaggi: 8298
Iscritto il: 27/12/2007, 16:59

Re: Riconoscimento porta USB

Messaggioda ferlino » 07/11/2015, 11:27

Questa volta non è venuto fuori nessun messaggio di errore. Ci ha pensato un paio di secondi e poi è uscito dallo script.
Le porte USB e tutto il resto sembrano OK.
Il collaudo definitivo però dovrebbe essere fatto dopo che la macchina foto, per cause ancora da stabilire (probabilmente quando sta spenta per qualche mezza giornata o più), va in ibernazione.
In questo caso avvierò lo script e vedrò cosa succede. Se resuscita o no. Un altro modo per per farla resuscitare sarebbe quello di inserire un rele a 4 vie (tanti sono i fili del cavetto USB che unisce la macchina al Raspberry) e comandare questo relè dal Raspberry stresso, ma lascio questa come ultima possibilità, vista la complessità della cosa.
Per intanto grazie. Il problema non è risolto ma è in attesa di verifica.
Ad ogni buon conto ho inviato il file log.txt secondo quanto da te suggerito.
ferlino
Newbie
Newbie
 
Messaggi: 31
Iscritto il: 03/10/2015, 17:48

Re: Riconoscimento porta USB

Messaggioda Aki » 07/11/2015, 12:42

Grazie per il riscontro. Cosa accade alla macchina fotografica normalmente attiva quando è eseguito lo script ?
Aki
Global Moderator
Global Moderator
 
Messaggi: 8298
Iscritto il: 27/12/2007, 16:59

Re: Riconoscimento porta USB

Messaggioda ferlino » 07/11/2015, 14:58

Non accade nulla alla macchina fotografica. Viceversa se si togliesse e rimettesse il cavetto l'obiettivo rientrerebbe (ed a volte riuscirebbe dopo mezzo secondo; l'obiettivo è usualmente sempre fuori).
La funzione di scattare le foto non è pregiudicata.
ferlino
Newbie
Newbie
 
Messaggi: 31
Iscritto il: 03/10/2015, 17:48

Re: Riconoscimento porta USB

Messaggioda HAL 9000 » 13/11/2015, 13:10

Forse basta aggiungere una pausa tra unbind e bind?
Ricordarsi di modificare il primo messaggio della discussione per aggiungere [RISOLTO] prima del titolo, quando conclusa.

Wiki: APT e Repository, Comandi utili, Collabora.
Manuali di Debian 9 "Stretch" (amd64): installazione, aggiornamento da Debian 8.
Avatar utente
HAL 9000
wiki member
wiki member
 
Messaggi: 1483
Iscritto il: 10/08/2009, 10:01

Re: Riconoscimento porta USB

Messaggioda Aki » 18/11/2015, 20:10

Hai aggiornamenti ? In caso di esito non favorevole questa http://babaawesam.com/2014/01/24/power- ... pberry-pi/ potrebbe essere una soluzione.
Aki
Global Moderator
Global Moderator
 
Messaggi: 8298
Iscritto il: 27/12/2007, 16:59

Re: Riconoscimento porta USB

Messaggioda ferlino » 18/11/2015, 20:53

Non ho aggiornamenti. Sono stato occupato a perfezionare la parte hardware del mio progetto e non ci sono state occasioni di "ibernamento" della macchina fotografica per cui non ho potuto provare sul campo i precedenti tuoi suggerimenti.
Adesso se ne aggiunge un'altro. Bene !
Grazie ancora.
ferlino
Newbie
Newbie
 
Messaggi: 31
Iscritto il: 03/10/2015, 17:48

Re: Riconoscimento porta USB

Messaggioda Aki » 08/12/2015, 15:11

@ferlino: Hai aggiornamenti in merito alla presente discussione ?
Aki
Global Moderator
Global Moderator
 
Messaggi: 8298
Iscritto il: 27/12/2007, 16:59

Re: Riconoscimento porta USB

Messaggioda ferlino » 08/12/2015, 15:34

Sono ancora in una fase in cui mi dedico, nel poco tempo libero, a completare un'app per Android che gestisce il tutto. In allegato un'immagine di questa app che funziona perfettamente. Essa utilizza il server SSH del raspberry e - attenzione - la connessione Ethernet, in attesa di capire meglio come gestire la connessione wifi (argomento della nostra discussione).
Di questa app non funziona ancora il collegamento ad internet (al sito nomesitomio.ddns.com o nomesitomio.noip.com o simile).
Questo problema è argomento della discussione viewtopic.php?f=10&t=51480
Grazie ancora dell'interessamento.
P.S.: Non sono riuscito a caricare l'immagine. Eccola comunque qui http://imageshack.com/a/img910/6141/xCQSd5.png
ferlino
Newbie
Newbie
 
Messaggi: 31
Iscritto il: 03/10/2015, 17:48

Re: Riconoscimento porta USB

Messaggioda ferlino » 10/12/2015, 22:11

Ho trovato questo documento, in ispecie l'intervento di Climberhunt Wed Aug 15,2012
https://www.raspberrypi.org/forums/viewtopic.php?f=41&t=2276&sid=0f684f9762413948272612826d7041fc
che riporta a questo altro :
http://askubuntu.com/questions/645/how-do-you-reset-a-usb-device-from-the-command-line
il quale affronta proprio il problema di ibernazione e/o scollegamento della porta USB.
ferlino
Newbie
Newbie
 
Messaggi: 31
Iscritto il: 03/10/2015, 17:48

PrecedenteProssimo

Torna a Scripting

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti

cron