pyusb Time Out ändern

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
GMAch
User
Beiträge: 19
Registriert: Dienstag 4. September 2018, 07:32

Montag 10. September 2018, 10:42

Ich probier gerade (ohne wirklich zu wissen was ich da tue) mit einem Messgerät über mittels pyusb zu kommunizieren.

Ich hab mich am ersten Beispiel im Tutorial orientiert und mir zusammen gereimt das ich analog zum schreiben das lesen einer 64Byte Antwort wie folgt Realisieren kann.

Code: Alles auswählen

ep2 = usb.util.find_descriptor(
    intf,
    custom_match = \
    lambda e: \
        usb.util.endpoint_direction(e.bEndpointAddress) == \
        usb.util.ENDPOINT_IN)

aw1=ep2.read(64)
Das hat (Glücklicher weise) auch auf Anhieb geklappt.

Mein Problem ist nun das ich einen Time Out Fehler bekomme wenn ich die Integrationszeit meines Messgeräts zu hoch setze (und die muss ich unter Umständen für die Messungen auf ein paar Sekunden setzen).

Kann mir jemand sagen wie ich denn Time Out für das Lesen hoch setzen kann? Ich kann dazu leider nichts finden.
Benutzeravatar
__blackjack__
User
Beiträge: 1229
Registriert: Samstag 2. Juni 2018, 10:21

Montag 10. September 2018, 11:53

Die `read()`-Methode hat da ein Argument für.

Du solltest übrigens aufhören Namen aus zwei Buchstaben und angehängten Nummern zu verwenden. Dann muss man nicht rätselraten was das bedeuten soll und kommt auch nicht mit irgendwelchen nichtssagenden Nummern durcheinander. `intf` ist ebenfalls kein sinnvoller Name.
“Pets are always a great help in times of stress. And in times of starvation too, o'course.” — Terry Pratchett, Small Gods
GMAch
User
Beiträge: 19
Registriert: Dienstag 4. September 2018, 07:32

Montag 10. September 2018, 13:34

__blackjack__ hat geschrieben:
Montag 10. September 2018, 11:53
Die `read()`-Methode hat da ein Argument für.
Danke.
__blackjack__ hat geschrieben:
Montag 10. September 2018, 11:53
Du solltest übrigens aufhören Namen aus zwei Buchstaben und angehängten Nummern zu verwenden. Dann muss man nicht rätselraten was das bedeuten soll und kommt auch nicht mit irgendwelchen nichtssagenden Nummern durcheinander. `intf` ist ebenfalls kein sinnvoller Name.
Hatte ich so aus dem Tutorial kopiert, wobei ich inzwischen auch raus gekriegt habe habe das ich die End Point Adresse auch einfach direkt in die read bzw. write Befehle schreiben kann und mir und mir die Suche spare.
Antworten