Pseudo-Audiogerät auslesen :-) (USB-Kommunikation)

  • VB6

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von peterfido.

    Pseudo-Audiogerät auslesen :-) (USB-Kommunikation)

    Hallo, zusammen,

    ich habe ein spezielles Problem :) Ich habe hier ein HID-Gerät (einen Drehknopf) stehen, der sich in der Systemsteuerung als Audio-Gerät tarnt. Man kann damit nur nach links drehen, nach rechts drehen, und draufdrücken (also quasi am ehesten wie ein Game Controller), siehe Screenshot.

    Mit einem USB Sniffer habe ich schon gemerkt, dass die Drehbewegungen einfache 4 Byte Pakete sind, die ich mir auch ganz gut erklären kann inhaltlich.

    Wie kann ich eine solche Kommunikation auslesen? (Eigentlich soll das ganze in VBA sein, aber wenn ich ein Beispiel in VB bekomme, kann ich das bestimmt anpassen).

    Danke und viele Grüße,
    Martin

    *Topic verschoben*
    Bilder
    • timebuzzer.jpg

      40,07 kB, 405×254, 115 mal angesehen
    • sniffer.jpg

      46,68 kB, 899×142, 109 mal angesehen

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Ich stehe sogar mit dem Hersteller in Kontakt :) Der will aber eigentlich, dass man seine Abo-App nutzt. Was ja auch verständlich ist. Da ich das Gerät aber anders einsetzen möchte, würde ich das gerne selbst auslesen. Kann ja auch eigentlich nicht so schwer sein, an die vier Byte zu kommen :)

    Das Gerät tarnt sich ja als Audiogerät. Könnte ich nicht z.B. einen Code nutzen, der normalerweise Sound von einer Soundkarte entgegennimmt?
    Moin,

    ich nehme an, das ist ein Audioeingabegerät? Dann hätte ich mir das Signal mal mit einem Aufnahmeprogramm deiner Wahl (z. B. Audacity) angesehen.

    Als Tag hast du VB6 angegeben. Möchtest du nicht vielleicht eher .NET verwenden? Hier könntest du zur Verarbeitung CSCore oder auch NAudio verwenden.
    Mit freundlichen Grüßen,
    Thunderbolt
    Das Gerät tarnt sich nicht als Audiogerät, sondern als Gamecontroller (wie du in Post #1 schon sagst). Quasi wie ein Joystick. Ich denke, der Audio-Ansatz ist daher falsch.
    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum
    Also falls sich das Gerät als GameController anmeldet, solltest du das als Joystick ansprechen können. Schau mal hier, da machen die das mit SharpDx: stackoverflow.com/a/20432710

    //Edit: Bei VB6 wirst du mit SharpDx allerdings nicht weit kommen. Hier wirst du dann wohl auf die WinAPI zurückgreifen müssen: msdn.microsoft.com/de-de/libra…op/dd757108(v=vs.85).aspx
    Mit freundlichen Grüßen,
    Thunderbolt

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Thunderbolt“ ()

    Marcus Gräfe schrieb:

    Das Gerät tarnt sich nicht als Audiogerät, sondern als Gamecontroller (wie du in Post #1 schon sagst). Quasi wie ein Joystick. Ich denke, der Audio-Ansatz ist daher falsch.


    Danke für die Info! Das wäre natürlich optimal, weil es dafür wohl schon so einiges an Libraries gibt.

    Wie kommst Du darauf? (Ich besitze leider keinen echten Joystick, um zu testen, wie der in der Systemsteuerung ausschaut). In den Eigenschaften steht "USB Audiogerät"

    /edit:
    Habe einmal einen Joysticktester runtergeladen, der findet aber keinen Joystick. Spricht für die Audio-Theorie.
    Habe einmal Audacity heruntergeladen, dort wird das Gerät leider nicht als Audio-Quelle angezeigt.. Hmmm... :)


    Viele Grüße,
    Martin

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „illusionfactory“ ()

    Hallo,

    wie wäre es mit mehr Infos? Foto von dem Teil selbst, evtl. den Hersteller nennen.

    HID Geräte listet der Gerätemanager bei mir unter Eingabegeräte (Human Interface Devices) auf. USB Joysticks landen entweder unter Eingabegeräte (HID) oder bekommen einen eigenen Eintrag (z.B. der XBOX Controller)

    Klassische Joysticks mit dem 15 poligen Stecker tauchen unter Audio-, Video- und Gamecontroller auf, weil die A/D Wandlung die Soundkarte übernimmt. Diese hat(te) auch die 15 polige Buchse dafür. Sowas wurde hauptsächlich vor USB genutzt. Die Joysticks der Übergangszeit sprachen beides. Z.B. das Hammerhead 3dfx Gamepad von Interact. Das hat einen 15 poligen Stecker und ein passiver Adapter 15 polig auf USB war auch bei. Das Gamepad hat selbst erkannt, wenn es am USB-Port hing und hat dann im Display ein U angezeigt. Gleichzeitig wanderte es im Gerätemanager von Audio-, Video- und Gamecontroller nach Eingabegeräte (HID).

    Drehknopf und Taster klingt für mich nach Lautstärkeregler. Evtl. ist bei der Software von dem Teil auch eine DLL bei, welche sich in eigenen Projekten zur Abfrage nutzen lässt.

    Rohdaten von USB-Geräten lassen sich unter Linux recht einfach auslesen. Unter Windows habe ich sowas noch nicht gemacht. Evtl. ist es leichter, die Elektronik gegen einen kleinen AVR auszutauschen und per virtuellem Comport die Daten rüberzuschicken. Gerade wenn es VBA sein soll. Rohdaten klingt für mich nach Adminrechte.
    Gruß
    Peterfido

    Keine Unterstützung per PN!