Duas câmeras USB causam falha no USB

0

Eu tenho duas câmeras USB que eu corro em uma das duas resoluções. São câmeras USB 3 em execução no mesmo hub USB 3.0. Se eu executá-las em 1280x720 e 12 qps (cerca de 23 MB / s de dados), uma câmera irá falhar após cerca de uma hora, a segunda continuará indefinidamente, tanto quanto eu saiba. Se eu os executar a 640x480 a 30 fps (cerca de 18,5 MB / s), uma câmera tende a falhar após cerca de 24 horas, enquanto a outra continuará trabalhando. Qualquer uma das taxas de dados é imensamente dentro da especificação para um hub usb 3.0 ou até mesmo um hub usb 2.0.

Quando uma câmera falha, é devido a aparente falha da porta USB à qual ela está conectada. Nada parece capaz de reviver essa porta antes de desligar o dispositivo, removê-lo e iniciá-lo novamente. Uma simples reinicialização não resolve o problema, suspeito que isso ocorra porque as portas USB não desligam, a menos que a energia seja removida do computador.

Alguém já experimentou algo assim ou tem dicas sobre como depurar ainda mais esse problema? Posso atualizar com mais dados, mas no momento não tenho certeza de quais dados são úteis.

Obrigado.

Update1: Não tenho certeza do significado, mas confirmei que minhas câmeras estão sendo lidas como dispositivos USB 2.0, e não dispositivos usb 3.0:

$:~/locus_dev/src/locus_calibration$ lsusb -d 2560:c110 -v | grep USB
  bcdUSB               2.00

Update2: Ao contrário da minha atualização anterior, descobri que algumas câmeras estão sendo lidas como usb 2.0 e algumas como 3.0 aparentemente aleatórias. A falha não parece estar ligada a câmeras 2.0 ou 3.0. Eu verifiquei o log dmesg em torno do tempo de uma falha e encontrei o texto abaixo. Houve também referências a processos de morte devido a 'Out Of Memory':

[14754.261924] uvcvideo: Non-zero status (-71) in video completion handler.
[14754.278012] uvcvideo: Non-zero status (-71) in video completion handler.
[14754.297514] uvcvideo: Non-zero status (-71) in video completion handler. [14754.311271] uvcvideo: Non-zero status (-71) in video completion handler.
[14754.402011] uvcvideo: Non-zero status (-71) in video completion handler.
[14760.459965] uvcvideo: Failed to query (130) UVC probe control : -110 (exp. 26).
[14775.656667] usb 3-2: reset SuperSpeed USB device number 2 using xhci_hcd
[14775.672307] usb 3-2: descriptor type invalid, skip
[14775.672311] usb 3-2: No LPM exit latency info found, disabling LPM.
[14775.672314] usb 3-2: device firmware changed
[14775.723768] usb 3-2: USB disconnect, device number 2
[14775.931744] usb 3-2: new SuperSpeed USB device number 4 using xhci_hcd
[14775.948235] usb 3-2: no configurations
[14775.950077] usb 3-2: can't read configurations, error -22
[14776.143814] usb 3-2: new SuperSpeed USB device number 5 using xhci_hcd
[14776.162902] usb 3-2: no configurations
[14776.164689] usb 3-2: can't read configurations, error -22
[14776.355745] usb 3-2: new SuperSpeed USB device number 6 using xhci_hcd
[14776.372164] usb 3-2: no configurations
[14776.374073] usb 3-2: can't read configurations, error -22
[14776.567733] usb 3-2: new SuperSpeed USB device number 7 using xhci_hcd
[14776.584193] usb 3-2: no configurations
[14776.586088] usb 3-2: can't read configurations, error -22
[14776.611732] usb usb3-port2: unable to enumerate USB device
    
por David 24.10.2017 / 23:55

0 respostas