Comment empêcher le périphérique USB (action cam) de s'endormir?

8

J'ai une caméra d'action ( iON Air Pro Lite WiFi ). Il utilise une carte SD et peut être connecté au PC via un câble USB. Il n'est fourni qu'avec la prise en charge de Windows et Mac. Cependant, une fois connectée via USB et allumée , la caméra apparaît comme un volume de 32 Go (taille de la SD) dans Nautilus , ce qui me permet de modifier la configuration de la caméra via un fichier simple et, surtout, de visualiser, copier et supprimer les fichiers vidéo réels. C'est tout ce dont j'ai besoin. Cela fonctionne de la même manière sous Windows, essentiellement.

Lorsqu'elle est connectée et sous tension, elle lsusbmontre la came comme:

Bus 003 Device 013: ID 4255:1000 GoPro 9FF2 [Digital Photo Display]

Le problème est : connectée à ma machine Linux (Debian 9), la came s'éteint à nouveau après seulement 1 à 10 secondes. Si je parviens à naviguer vers le dossier des fichiers vidéo et à commencer à copier un fichier, la caméra restera allumée tant que le processus de copie fera son travail. Une fois le fichier copié, la came s'éteint au bout de quelques instants. Cela ne se produit pas lors de la connexion à une machine Windows.

Ma question est, que puis-je faire pour empêcher l'appareil de s'éteindre?
Voyant comment cela ne se produit pas lorsque vous êtes connecté à Windows et pas tout en gardant l'appareil occupé, je suppose qu'il devrait y avoir un moyen. Cependant, je n'ai vraiment aucune idée par où commencer. Ma ligne de pensée est actuellement:

  • Cela pourrait être un problème de pilote. Comme je n'ai aucune connaissance des pilotes, je ne saurais pas comment partir d'ici, à moins que quelqu'un ne me tienne la main ou ne puisse me diriger vers des sources incroyables.
  • Il existe peut-être un moyen d'interroger / exécuter un ping sur un périphérique USB d'une manière générique et peut-être que cela suffirait à le maintenir en vie. Si c'est le cas, cela ressemble à quelque chose qui pourrait être résolu avec du code. Mes recherches actuelles m'ont conduit à la GET_STATUSdemande d'appareil standard, mais cela ne semble pas faire l'affaire (voir ci-dessous).
  • Dans le pire des cas, un script qui copie constamment des fichiers factices depuis et / ou vers l'appareil (ou même simplement renomme / déplace des fichiers sur l'appareil) devrait probablement faire l'affaire. J'aurais besoin de trouver un moyen de le faire fonctionner automatiquement lorsque cet appareil particulier est connecté. Cette option semble faisable, mais pas très propre (après tout, les lectures / écritures constantes raccourcissent la durée de vie d'une carte SD, et étant donné que quelques instants d'inactivité peuvent conduire à une mise hors tension, ces opérations devraient être exécutées en permanence).

EDIT 1 : J'ai trouvé PyUSB et j'ai écrit un script simple qui enverrait un GET_STATUSà la caméra toutes les 2 ms (via la ctrl_transferfonction). Cela n'a pas empêché la came de s'éteindre du tout.

EDIT 2 : Je n'ai toujours pas trouvé de solution. De plus, dans environ un cas sur 5, la caméra s'éteint même lors de la copie d'un fichier . Veuillez partager vos idées concernant les causes et / ou les solutions possibles.

domsson
la source
C'est peut-être lié au mode Powernap / ordinateur portable? /ubuntu/80638/how-to-disable-auto-power-off-of-usb-devices-like-usb-mouse
Dfaure
@Dfaure merci pour le pointeur. Malheureusement, aucune de ces suggestions n'a fonctionné. De plus, je suis sur une machine de bureau.
domsson
1
Votre sortie lsusb m'a donné l'idée que votre caméra apparaît peut-être sous Linux comme une GoPro et que des astuces / problèmes pour la GoPro peuvent s'appliquer à votre iON Air Pro. C'est là que je commencerais. Cela peut être applicable: copie-fichiers-de-gopro-sur-usb-sur-linux
Glenn
Bien que ce lien puisse répondre à la question, il est préférable d'inclure les parties essentielles de la réponse ici et de fournir le lien de référence. Les réponses de lien uniquement peuvent devenir invalides si la page liée change. - De l'avis
Jeff Schaller
@jeffschaller Faisons-nous une exception pour les réponses contenant uniquement des liens lorsque le lien est un autre site SE?
Shadur

Réponses:

0

Il peut s'agir d'une suspension automatique USB.

Regardez / sys / fs:

find /sys/devices/ -name autosuspend

Et voyez si le fichier sysfs correspondant contient "1"

V13
la source