Anzeige:
Ergebnis 1 bis 4 von 4

Thema: USB Befehle "manuell" senden

  1. #1
    patch-aholic Avatar von 3qualizer
    Registriert seit
    Jul 2000
    Ort
    Stuttgart
    Beiträge
    1.673

    USB Befehle "manuell" senden

    Hallo.

    Ist zwar (noch) nicht selbstgebaut aber ich schätze hier könnte es am besten passen.

    Ich habe hier ein USB-Gerät für welches unter Windows ein Steuerprogramm existiert. Es ist ein USB-Raketenwerfer ^^

    Jetzt würde ich das Gerät gern selbst unter Linux ansprechen und die Steuerung evtl. etwas verbessern/verändern.

    Ich habe das Programm in einer VMware laufen lassen und konnte dank usbmon z.B. den Befehl zum Abschuss abfangen (das rote habe ich geschrieben):

    Code:
    # lsusb
    [...]
    Bus 006 Device 003: ID 1130:0202 Tenx Technology, Inc.
    Bus 006 Device 001: ID 1d6b:0001
    [...]
    
    # usbmon -i 6 -fh
    de2d1d40 0.840000 S Co:6:003:0 s 21 09 0200 0001 0008 8 = 55534243 00000400
    de2d1d40 0.850000 C Co:6:003:0 0 8 >
    de2d1d40 0.850000 S Co:6:003:0 s 21 09 0200 0001 0008 8 = 55534243 00400200
    de2d1d40 0.850000 C Co:6:003:0 0 8 >
    de2d1d40 0.850000 S Co:6:003:0 s 21 09 0200 0000 0040 64 = 00000000 00010808 00000000 00000000 00000000 00000000 00000000 00000000
    de2d1d40 0.870000 C Co:6:003:0 0 64 >
    Laut manpage steht dabei eine Zeile für ein Event.

    Die erste Zeile wäre also zu lesen:

    - Event Typ ist eine submission
    - Control output, Bus 6, Device 3, Endpoint 0
    - Status word ist "s"?
    - Request Type 0x21, Request 0x9, Value 0x200, Index 0x1, Length 0x8
    - Daten sind 55534243 00000400

    Diesen Befehl sollte man ja z.B. mit usb-robot-slave wieder an das Gerät schicken können:

    Code:
    $ usb-robot-slave vendor=0x1130 product=0x0202
    usb-robot-slave: starting usb-robot version 0.2.0
      (c) 2000, 2001 John Fremlin
      Licensed under the GNU Public License version 2, see file COPYING.
      You didn't pay me for this program. You have no rights.
    doing bus scan for:
            idVendor 0x1130
            idProduct 0x202
    found bus 007
    scanning bus 007
    device 003 on bus 007 does not match
    device 002 on bus 007 does not match
    device 001 on bus 007 does not match
    found bus 006
    scanning bus 006
    found device 003 on bus 006 (idVendor 0x1130 idProduct 0x202)
    opening device 003 on bus 006
    OK: id=0
    Type help and press return for a list of commands
    usb-robot>
    Soweit, so gut. Das Gerät ist gefunden und ich kann meine Befehle absetzen:

    Code:
    usb-robot> decoding hex
    Input format changed to hex
    OK: id=1
    Code:
    usb-robot> transfer type=control ep=0 dir=out requesttype=0x21 request=0x9 value=0x200 index=0x1 size=0x8
    Enter data in format FF FB 00 FC
    55 53 42 43 00 00 04 00
    doing control message id 3 to device, size 8, timeout 10000 frames, 21:9:200:1
    status: problem doing control msg
    usb error: No error
    ERROR: id=3
    Und genau an dieser Stelle hänge ich.
    Liegt es an meiner Daten-Eingabe, hat die USB-Lib ein Problem oder stimmt der Befehl einfach nicht so das das Gerät einen Fehler zurückmeldet?
    Eurebia - der UO Freeshard (www.eurebia.net) :)

  2. #2
    patch-aholic Avatar von 3qualizer
    Registriert seit
    Jul 2000
    Ort
    Stuttgart
    Beiträge
    1.673
    Ich habe bemerkt das usbmon die Ausgabe der Daten (insbesondere im human-readable format) kürzt.
    Nach einer kurzen Anpassung im Quellcode zeigt er jetzt im legacy format die Daten komplett an. Leider haben die zusätzlichen Daten bei usb-robot-slave keine Besserung gebracht.

    Ich habe während dem manuellen Absenden der Befehle auch usbmon zum Vergleich mitlaufen lassen. Die Ausgaben sind identisch, trotzdem macht das Gerät keinen Mucks
    Eurebia - der UO Freeshard (www.eurebia.net) :)

  3. #3
    Registrierter Benutzer
    Registriert seit
    Mar 2006
    Ort
    Hannover
    Beiträge
    240
    Moin,
    ich habe gerade dieses Video entdeckt, also muss es doch möglich sein, den USB-Raketenwerfer unter Linux anzusteuern. Schreib doch einfach mal den Ersteller dieses Videos an

    http://www.youtube.com/watch?v=EmZ-Q...eature=related

  4. #4
    Hardwarefreak Avatar von E S
    Registriert seit
    Jun 2003
    Ort
    Raum Bonn
    Beiträge
    1.252
    Hi,

    vermutlich fehlt die initialisierung des Gerätes! Also musst Du erst mal nachmachen was nach dem einstecken und starten der Steuersoftware passiert.

    Gruß
    Elmar
    Was in C nicht geht muß gelötet werden!

Ähnliche Themen

  1. suse 11 update probleme
    Von husky im Forum System installieren und konfigurieren
    Antworten: 13
    Letzter Beitrag: 08.08.08, 02:14
  2. USB Geräte (HD, Cam, Stick) werden nicht erkant
    Von lechuck07 im Forum System installieren und konfigurieren
    Antworten: 2
    Letzter Beitrag: 25.07.07, 23:21
  3. Usb-Geraete Konflikt (Tastatur / externe HDD)
    Von quasseln im Forum stationäre Hardware
    Antworten: 2
    Letzter Beitrag: 19.04.07, 11:16
  4. suse 10.2 vs. USB HDD
    Von gabs im Forum System installieren und konfigurieren
    Antworten: 2
    Letzter Beitrag: 18.04.07, 13:53
  5. wlan wird immer wieder unterbrochen
    Von mörteltier im Forum Anbindung an die Aussenwelt
    Antworten: 11
    Letzter Beitrag: 22.03.07, 19:44

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •