Einzelnen Beitrag anzeigen

Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
378 Beiträge
 
Delphi 11 Alexandria
 
#36

Re: HID Komponente - Komme nicht zurecht

  Alt 29. Mär 2008, 14:08
Bin hier über diesen extrem interessanten Thread gestolpert und habe (auch) noch einige Fragen dazu.
Vorweg vielleicht erst einmal eine Beschreibung des 'Problems':

Ich habe mir 2 schicke HPTC-Gehäuse zugelegt (dieses und dieses), die in Verbindung mit jeweils einer DVB-S-TV-Karte (Satelliten TV) einmal im Wohnzimmer meinen großen LCD-TV beschicken und im Schlafzimmer als multimediale Einschlafhilfe dienen.
Beide Kisten haben ein VFD, diverse Bedienelemente, einen IR-Empfänger und ne FB selbst. Dieses 'Zubehör' stammt von SOUNDGRAPH und benötigt die Soft IMON / IMEDIAN.
Display, Bedienelemente und Empfänger sitzt alles auf einen Board, wird via USB angeschlossen und wird als diverse HIDs eingebunden.
Die Soft hat zig Einstellmöglichkeiten und ist prinzipiell nicht schlecht, aber.... A) optisch nicht mein Fall, B) läuft nicht wirklich gut mit der Empfängersoft zusammen (DVBDream) und C) ist irgendwie total überladen.
Es gibt auch eine API dazu (logo in C), aber damit kann ich nur Text auf das Display geben.

Ich möchte nun mehr oder weniger dieses IMON-Gerümpel 'entsorgen' und die Informationen der FB/Bedienlemente selbst auslesen und mit meinen eigenen Tools verwalten. Für das DVBDream habe ich schon einige Module/Plugins geschrieben, die auf meinem 'Normal-PC' mit einem USB-IR-Stick (IgorPlug - falls den jemand kennt...) super laufen. Auch eine Remote-Frontend für VLC ist so gut wie fertig.

Wie bekomme ich das nun an den Start ?
Wenn ich mir die Logs so ansehe, welche die Demo-Tools aus der HID-Komponente so alles hergeben, sehe ich eher lauter Bäume im Wald...
Wenn auch mir jemand ein wenig Starthilfe geben könnte ? Was soll ich als Info noch posten ?
Delphi-Quellcode:
HID-Devices
   VID=$046A PID=$002A
      UsagePage=Generic Desktop ($0001) Usage=Keyboard ($0006) CollectionType=Application ($01)
         Button Input Range: UsagePage=Keyboard ($0007) 224..231
         Button Input Range: UsagePage=Keyboard ($0007) 0..140
         Button Output Range: UsagePage=LED ($0008) 1..5
   VID=$046A PID=$002A
      UsagePage=Consumer ($000C) Usage=Consumer Control ($0001) CollectionType=Application ($01)
         Button Input Range: UsagePage=Consumer ($000C) 0..771
   VID=$046A PID=$002A
      UsagePage=Generic Desktop ($0001) Usage=System Control ($0080) CollectionType=Application ($01)
         Button Input Range: UsagePage=Generic Desktop ($0001) 129..131
   VID=$046A PID=$002A
      UsagePage=FF00 ($FF00) Usage=1 ($0001) CollectionType=Application ($01)
         Button Output: UsagePage=FF00 ($FF00) Usage=0 ($0000)
   VID=$046A PID=$002A
      UsagePage=Generic Desktop ($0001) Usage=Mouse ($0002) CollectionType=Application ($01)
         UsagePage=Generic Desktop ($0001) Usage=Pointing Device ($0001) CollectionType=Physical ($00)
            Button Input Range: UsagePage=Button ($0009) 1..7
            Value Input: UsagePage=Generic Desktop ($0001) Usage=Wheel ($0038)
            Value Input: UsagePage=Generic Desktop ($0001) Usage=Y Axis ($0031)
            Value Input: UsagePage=Generic Desktop ($0001) Usage=X Axis ($0030)
   "USB Multimedia Keyboard" VID=$046D PID=$C312
      UsagePage=Generic Desktop ($0001) Usage=Keyboard ($0006) CollectionType=Application ($01)
         Button Input Range: UsagePage=Keyboard ($0007) 224..231
         Button Input Range: UsagePage=Keyboard ($0007) 0..255
         Button Output Range: UsagePage=LED ($0008) 1..3
   "USB Multimedia Keyboard" VID=$046D PID=$C312
      UsagePage=Generic Desktop ($0001) Usage=System Control ($0080) CollectionType=Application ($01)
         Button Input: UsagePage=Generic Desktop ($0001) Usage=System Control Wake Up ($0083)
         Button Input: UsagePage=Generic Desktop ($0001) Usage=System Control Sleep ($0082)
         Button Input: UsagePage=Generic Desktop ($0001) Usage=System Control Power Down ($0081)
   "USB Multimedia Keyboard" VID=$046D PID=$C312
      UsagePage=Consumer ($000C) Usage=Consumer Control ($0001) CollectionType=Application ($01)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Control Refresh ($0227)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Launch Calculator ($0192)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Launch Local Machine Browser ($0194)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Launch Consumer Control Configuration ($0183)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Control Select All ($021E)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Control Paste ($021D)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Control Cut ($021C)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Control Copy ($021B)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Control Stop ($0226)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Control Forward ($0225)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Control Back ($0224)
         Button Input: UsagePage=Consumer ($000C) Usage=Eject ($00B8)
         Button Input: UsagePage=Consumer ($000C) Usage=Scan Previous Track ($00B6)
         Button Input: UsagePage=Consumer ($000C) Usage=Play/Pause ($00CD)
         Button Input: UsagePage=Consumer ($000C) Usage=Scan Next Track ($00B5)
         Button Input: UsagePage=Consumer ($000C) Usage=Stop ($00B7)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Launch Email Reader ($018A)
         Button Input: UsagePage=Consumer ($000C) Usage=Help ($0095)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Control Bookmarks ($022A)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Control Home ($0223)
         Button Input: UsagePage=Consumer ($000C) Usage=Application Control Search ($0221)
         Button Input: UsagePage=Consumer ($000C) Usage=Mute ($00E2)
         Button Input: UsagePage=Consumer ($000C) Usage=Volume Decrement ($00EA)
         Button Input: UsagePage=Consumer ($000C) Usage=Volume Increment ($00E9)
   "USB Multimedia Keyboard" VID=$046D PID=$C312
      UsagePage=FF00 ($FF00) Usage=1 ($0001) CollectionType=Application ($01)
         Button Input Range: UsagePage=FF00 ($FF00) 96..103
         Button Input: UsagePage=FF00 ($FF00) Usage=69 ($0069)
         Button Input: UsagePage=FF00 ($FF00) Usage=68 ($0068)
         Button Input Range: UsagePage=FF00 ($FF00) 106..111
         Button Input Range: UsagePage=FF00 ($FF00) 112..119
         Value Feature: UsagePage=FF00 ($FF00) Usage=20 ($0020)
Die oberen 5 'Geräte' scheinen die meiner Funk-Taste/-Maus zu sein (Cherry cyMotion Pro).
Aber was ist das alles darunter ? Irgendwie kann ich das den vorhandenen Eingabemöglichkeiten (Gerät / FB) nicht so wirklich zuordnen....
  Mit Zitat antworten Zitat