Touchpads unter OpenBSD 7.7: Sammlung I2C Daten

dettus

Bicycle User
Hey!
Ich hoffe, dass bei Euch ein paar Kernelhacker dabei sind.
Und zwar: Mein Kernel erkennt mein touchpad nicht als Multitouch, weswegen nur ein Singletouch moeglich ist.

Ich habe auch schonmal mein Fuehler in Richtung Kernel Entwickler ausgestreckt.
Aber, zu meiner Anfrage...
Traut ihr Euch zu, mal ein paar printfs() in den Kernel zu hacken und hier die ausgabe vom dmesg zu posten?

Ein einfaches
Code:
cd /usr/src/sys/dev/hid
cat patch_sys_dev_hid_hidmt.txt | patch -p1
cd /usr/src/arch/amd64/conf
cp GENERIC.MP MYKERNEL
config MYKERNEL
cd ../compile/MYKERNEL
make
cp /bsd /bsd.okay
make install
reboot
dmesg
sollte reichen.

Dann interessiert mich das hier:

Code:
ihidev0 at iic0 addr 0x15 gpio 171, vendor 0x4f3 product 0x3195, ELAN0676
ihidev0: 92 report ids
imt0 at ihidev0

debug> here we go 679  0xffff800000577400
debug> 05 01 09 02 A1 01 85 01 09 01 A1 00 05 09 19 01 29 02 15 00 25 01 75 01 95 02 81 02 95 06 81 03 05 01 09 30 09 31 15 81 25 7F 75 08 95 02 81 06 75 08 95 05 81 03 C0 06 00 FF 09 01 85 0E 09 C5 15 00 26 FF 00 75 08 95 04 B1 02 C0 06 00 FF 09 01 A1 01 85 5C 09 01 95 0B 75 08 81 06 85 0D 09 C5 15 00 26 FF 00 75 08 95 04 B1 02 85 0C 09 C6 96 10 03 75 08 B1 02 85 0B 09 C7 96 02 02 96 02 02 75 08 B1 02 C0 05 0D 09 05 A1 01 85 54 05 09 09 01 15 00 25 01 75 01 95 01 81 02 75 01 95 03 81 03 05 0D 09 54 25 0F 75 04 95 01 81 02 05 0D 09 56 15 00 25 64 55 0C 66 01 10 47 FF FF 00 00 27 FF FF 00 00 75 10 95 01 81 02 05 0D 09 22 A1 02 09 47 09 42 15 00 25 01 75 01 95 02 81 02 75 01 95 02 81 03 09 51 25 0F 75 04 95 01 81 02 05 01 09 30 15 00 26 C8 0D 35 00 46 D4 2B 55 0D 65 11 75 10 95 01 81 02 09 31 26 01 07 46 53 16 46 53 16 81 02 C0 05 0D 09 22 A1 02 09 47 09 42 15 00 25 01 75 01 95 02 81 02 75 01 95 02 81 03 09 51 25 0F 75 04 95 01 81 02 05 01 09 30 15 00 26 C8 0D 35 00 46 D4 2B 55 0D 65 11 75 10 95 01 81 02 09 31 26 01 07 46 53 16 46 53 16 81 02 C0 05 0D 09 22 A1 02 09 47 09 42 15 00 25 01 75 01 95 02 81 02 75 01 95 02 81 03 09 51 25 0F 75 04 95 01 81 02 05 01 09 30 15 00 26 C8 0D 35 00 46 D4 2B 55 0D 65 11 75 10 95 01 81 02 09 31 26 01 07 46 53 16 46 53 16 81 02 C0 05 0D 09 22 A1 02 09 47 09 42 15 00 25 01 75 01 95 02 81 02 75 01 95 02 81 03 09 51 25 0F 75 04 95 01 81 02 05 01 09 30 15 00 26 C8 0D 35 00 46 D4 2B 55 0D 65 11 75 10 95 01 81 02 09 31 26 01 07 46 53 16 46 53 16 81 02 C0 05 0D 09 22 A1 02 09 47 09 42 15 00 25 01 75 01 95 02 81 02 75 01 95 02 81 03 09 51 25 0F 75 04 95 01 81 02 05 01 09 30 15 00 26 C8 0D 35 00 46 D4 2B 55 0D 65 11 75 10 95 01 81 02 09 31 26 01 07 46 53 16 46 53 16 81 02 C0 05 0D 85 02 09 55 09 59 75 04 95 02 25 0F B1 02 85 07 09 60 75 01 95 01 15 00 25 01 B1 02 95 0F B1 03 06 00 FF 06 00 FF 85 06 09 C5 15 00 26 FF 00 75 08 96 00 01 B1 02 C0 05 0D 09 0E A1 01 85 03 09 22 A1 00 09 52 15 00 25 0A 75 10 95 01 B1 02 C0 09 22 A1 00 85 05 09 57 09 58 75 01 95 02 25 01 B1 02 95 0E B1 03 C0 C0 >>   @ 0xffff800000577400

imt0: invalid max X/Y 0/0
ims0 at ihidev0 reportid 1: 2 buttons
wsmouse0 at ims0 mux 0
hid at ihidev0 reportid 5 not configured
Alternativ koennt ihr euch den von mir gepatchten Kernel auch von https://dettus.net/bsd77.patched runterladen.

Wenn ihr die Zeilen aus dem imt0 Treiber posten koenntet, waere das toll!
Schreibt doch bitte noch dazu, ob das Multitouch bei euch geht oder nicht.
 

Anhänge

Code:
bsdforen> 381 bytes> 05 01 09 02 A1 01 85 01 09 01 A1 00 05 09 19 01 29 02 15 00
25 01 75 01 95 02 81 02 95 06 81 03 05 01 09 30 09 31 15 81 25 7F 75 08 95 02 81
06 75 08 95 05 81 03 C0 06 00 FF 09 01 85 0E 09 C5 15 00 26 FF 00 75 08 95 04 B1
02 C0 06 00 FF 09 01 A1 01 85 5C 09 01 95 0B 75 08 81 06 85 0D 09 C5 15 00 26 FF
00 75 08 95 04 B1 02 85 0C 09 C6 96 00 03 75 08 B1 02 85 0B 09 C7 95 82 75 08 B1
02 C0 05 0D 09 05 A1 01 85 04 09 22 A1 02 15 00 25 01 09 47 09 42 95 02 75 01 81
02 75 01 95 02 81 03 95 01 75 04 25 0F 09 51 81 02 05 01 15 00 26 F4 0B 75 10 55
0D 65 11 09 30 35 00 46 02 26 95 01 81 02 46 CD 14 26 85 06 26 85 06 09 31 81 02
05 0D 15 00 25 64 95 03 C0 55 0C 66 01 10 47 FF FF 00 00 27 FF FF 00 00 75 10 95
01 09 56 81 02 09 54 25 7F 95 01 75 08 81 02 05 09 09 01 25 01 75 01 95 01 81 02
95 07 81 03 09 C5 75 08 95 02 81 03 05 0D 85 02 09 55 09 59 75 04 95 02 25 0F B1
02 85 07 09 60 75 01 95 01 15 00 25 01 B1 02 95 0F B1 03 06 00 FF 06 00 FF 85 06
09 C5 15 00 26 FF 00 75 08 96 00 01 B1 02 C0 05 0D 09 0E A1 01 85 03 09 22 A1 00
09 52 15 00 25 0A 75 10 95 01 B1 02 C0 09 22 A1 00 85 05 09 57 09 58 75 01 95 02
25 01 B1 02 95 0E B1 03 C0 C0
Code:
$ sysctl hw.version
hw.version=ThinkPad X1 Nano Gen 1

$ dmesg | grep wsmouse0
wsmouse0 at imt0 mux 0
 
Zuletzt bearbeitet:
Vielen Dank!
Bei dir funktoinieren also die zwei Fingergesten?


Anbei ds geparste:
(nach https://www.usb.org/sites/default/files/hid1_11.pdf und


Code:
read 381 bytes
   0/ 381;  05 01          ;global;usage page (01)   ;Generic Desktop
   2/ 381;  09 02          ;local;usage (02)         ;Generic Desktop/Mouse;Report ID FFFFFFFF
   4/ 381;  A1 01          ;main;COLLECTION (001)    ;APPLICATION
   6/ 381;  85 01          ;    global;report id (01)  
   8/ 381;  09 01          ;    local;usage (01)         ;Generic Desktop/Pointer;Report ID 01
  10/ 381;  A1 00          ;    main;COLLECTION (000)    ;PHYSICAL
  12/ 381;  05 09          ;        global;usage page (09)   ;Button
  14/ 381;  19 01          ;        local;usage minimum (01) ;Button/Button 1;Report ID 01
  16/ 381;  29 02          ;        local;usage maximum (02) ;Button/Button 2;Report ID 01
  18/ 381;  15 00          ;        global;logical minimum (    0)
  20/ 381;  25 01          ;        global;logical maximum (    1)
  22/ 381;  75 01          ;        global;report size (  1)
  24/ 381;  95 02          ;        global;report count (  2)
  26/ 381;  81 02          ;        main;INPUT (002)         ;data, variable, absolute
  28/ 381;  95 06          ;        global;report count (  6)
  30/ 381;  81 03          ;        main;INPUT (003)         ;constant, variable
  32/ 381;  05 01          ;        global;usage page (01)   ;Generic Desktop
  34/ 381;  09 30          ;        local;usage (30)         ;Generic Desktop/X;Report ID 01
  36/ 381;  09 31          ;        local;usage (31)         ;Generic Desktop/Y;Report ID 01
  38/ 381;  15 81          ;        global;logical minimum ( -127)
  40/ 381;  25 7F          ;        global;logical maximum (  127)
  42/ 381;  75 08          ;        global;report size (  8)
  44/ 381;  95 02          ;        global;report count (  2)
  46/ 381;  81 06          ;        main;INPUT (006)         ;data, variable, relative
  48/ 381;  75 08          ;        global;report size (  8)
  50/ 381;  95 05          ;        global;report count (  5)
  52/ 381;  81 03          ;        main;INPUT (003)         ;constant, variable
  54/ 381;  C0             ;    main;COLLECTION END    
  55/ 381;  06 00 FF       ;    global;usage page (FF00)   ;VENDOR SPECIFIC
  58/ 381;  09 01          ;    local;usage (01)         ;VENDOR SPECIFIC;Report ID 01
  60/ 381;  85 0E          ;    global;report id (0E)  
  62/ 381;  09 C5          ;    local;usage (C5)         ;VENDOR SPECIFIC;Report ID 0E
  64/ 381;  15 00          ;    global;logical minimum (    0)
  66/ 381;  26 FF 00       ;    global;logical maximum (  255)
  69/ 381;  75 08          ;    global;report size (  8)
  71/ 381;  95 04          ;    global;report count (  4)
  73/ 381;  B1 02          ;    main;FEATURE (002)     
  75/ 381;  C0             ;main;COLLECTION END    
  76/ 381;  06 00 FF       ;global;usage page (FF00)   ;VENDOR SPECIFIC
  79/ 381;  09 01          ;local;usage (01)         ;VENDOR SPECIFIC;Report ID 0E
  81/ 381;  A1 01          ;main;COLLECTION (001)    ;APPLICATION
  83/ 381;  85 5C          ;    global;report id (5C)  
  85/ 381;  09 01          ;    local;usage (01)         ;VENDOR SPECIFIC;Report ID 5C
  87/ 381;  95 0B          ;    global;report count ( 11)
  89/ 381;  75 08          ;    global;report size (  8)
  91/ 381;  81 06          ;    main;INPUT (006)         ;data, variable, relative
  93/ 381;  85 0D          ;    global;report id (0D)  
  95/ 381;  09 C5          ;    local;usage (C5)         ;VENDOR SPECIFIC;Report ID 0D
  97/ 381;  15 00          ;    global;logical minimum (    0)
  99/ 381;  26 FF 00       ;    global;logical maximum (  255)
 102/ 381;  75 08          ;    global;report size (  8)
 104/ 381;  95 04          ;    global;report count (  4)
 106/ 381;  B1 02          ;    main;FEATURE (002)     
 108/ 381;  85 0C          ;    global;report id (0C)  
 110/ 381;  09 C6          ;    local;usage (C6)         ;VENDOR SPECIFIC;Report ID 0C
 112/ 381;  96 00 03       ;    global;report count (768)
 115/ 381;  75 08          ;    global;report size (  8)
 117/ 381;  B1 02          ;    main;FEATURE (002)     
 119/ 381;  85 0B          ;    global;report id (0B)  
 121/ 381;  09 C7          ;    local;usage (C7)         ;VENDOR SPECIFIC;Report ID 0B
 123/ 381;  95 82          ;    global;report count (130)
 125/ 381;  75 08          ;    global;report size (  8)
 127/ 381;  B1 02          ;    main;FEATURE (002)     
 129/ 381;  C0             ;main;COLLECTION END    
 130/ 381;  05 0D          ;global;usage page (0D)   ;Digitizer
 132/ 381;  09 05          ;local;usage (05)         ;Digitizer/Touch Pad;Report ID 0B
 134/ 381;  A1 01          ;main;COLLECTION (001)    ;APPLICATION
 136/ 381;  85 04          ;    global;report id (04)  
 138/ 381;  09 22          ;    local;usage (22)         ;Digitizer/Finger;Report ID 04
 140/ 381;  A1 02          ;    main;COLLECTION (002)    ;LOGICAL
 142/ 381;  15 00          ;        global;logical minimum (    0)
 144/ 381;  25 01          ;        global;logical maximum (    1)
 146/ 381;  09 47          ;        local;usage (47)         ;Digitizer/Touch Valid;Report ID 04
 148/ 381;  09 42          ;        local;usage (42)         ;Digitizer/Tip Switch;Report ID 04
 150/ 381;  95 02          ;        global;report count (  2)
 152/ 381;  75 01          ;        global;report size (  1)
 154/ 381;  81 02          ;        main;INPUT (002)         ;data, variable, absolute
 156/ 381;  75 01          ;        global;report size (  1)
 158/ 381;  95 02          ;        global;report count (  2)
 160/ 381;  81 03          ;        main;INPUT (003)         ;constant, variable
 162/ 381;  95 01          ;        global;report count (  1)
 164/ 381;  75 04          ;        global;report size (  4)
 166/ 381;  25 0F          ;        global;logical maximum (   15)
 168/ 381;  09 51          ;        local;usage (51)         ;Digitizer/Contact Identifier;Report ID 04
 170/ 381;  81 02          ;        main;INPUT (002)         ;data, variable, absolute
 172/ 381;  05 01          ;        global;usage page (01)   ;Generic Desktop
 174/ 381;  15 00          ;        global;logical minimum (    0)
 176/ 381;  26 F4 0B       ;        global;logical maximum ( 3060)
 179/ 381;  75 10          ;        global;report size ( 16)
 181/ 381;  55 0D          ;        global;unit exponent (13)
 183/ 381;  65 11          ;        global;unit (11)       
 185/ 381;  09 30          ;        local;usage (30)         ;Generic Desktop/X;Report ID 04
 187/ 381;  35 00          ;        global;physical minumum (    0)
 189/ 381;  46 02 26       ;        global;physical maximum ( 9730)
 192/ 381;  95 01          ;        global;report count (  1)
 194/ 381;  81 02          ;        main;INPUT (002)         ;data, variable, absolute
 196/ 381;  46 CD 14       ;        global;physical maximum ( 5325)
 199/ 381;  26 85 06       ;        global;logical maximum ( 1669)
 202/ 381;  26 85 06       ;        global;logical maximum ( 1669)
 205/ 381;  09 31          ;        local;usage (31)         ;Generic Desktop/Y;Report ID 04
 207/ 381;  81 02          ;        main;INPUT (002)         ;data, variable, absolute
 209/ 381;  05 0D          ;        global;usage page (0D)   ;Digitizer
 211/ 381;  15 00          ;        global;logical minimum (    0)
 213/ 381;  25 64          ;        global;logical maximum (  100)
 215/ 381;  95 03          ;        global;report count (  3)
 217/ 381;  C0             ;    main;COLLECTION END    
 218/ 381;  55 0C          ;    global;unit exponent (12)
 220/ 381;  66 01 10       ;    global;unit (1001)       
 223/ 381;  47 FF FF 00 00 ;    global;physical maximum (65535)
 228/ 381;  27 FF FF 00 00 ;    global;logical maximum (65535)
 233/ 381;  75 10          ;    global;report size ( 16)
 235/ 381;  95 01          ;    global;report count (  1)
 237/ 381;  09 56          ;    local;usage (56)         ;Digitizer/Scan Count;Report ID 04
 239/ 381;  81 02          ;    main;INPUT (002)         ;data, variable, absolute
 241/ 381;  09 54          ;    local;usage (54)         ;Digitizer/Contact Count;Report ID 04
 243/ 381;  25 7F          ;    global;logical maximum (  127)
 245/ 381;  95 01          ;    global;report count (  1)
 247/ 381;  75 08          ;    global;report size (  8)
 249/ 381;  81 02          ;    main;INPUT (002)         ;data, variable, absolute
 251/ 381;  05 09          ;    global;usage page (09)   ;Button
 253/ 381;  09 01          ;    local;usage (01)         ;Button/Button 1;Report ID 04
 255/ 381;  25 01          ;    global;logical maximum (    1)
 257/ 381;  75 01          ;    global;report size (  1)
 259/ 381;  95 01          ;    global;report count (  1)
 261/ 381;  81 02          ;    main;INPUT (002)         ;data, variable, absolute
 263/ 381;  95 07          ;    global;report count (  7)
 265/ 381;  81 03          ;    main;INPUT (003)         ;constant, variable
 267/ 381;  09 C5          ;    local;usage (C5)         ;Button/Button 197;Report ID 04
 269/ 381;  75 08          ;    global;report size (  8)
 271/ 381;  95 02          ;    global;report count (  2)
 273/ 381;  81 03          ;    main;INPUT (003)         ;constant, variable
 275/ 381;  05 0D          ;    global;usage page (0D)   ;Digitizer
 277/ 381;  85 02          ;    global;report id (02)  
 279/ 381;  09 55          ;    local;usage (55)         ;Digitizer/Contact Count Maximum;Report ID 02
 281/ 381;  09 59          ;    local;usage (59)         ;Digitizer/Pad Type;Report ID 02
 283/ 381;  75 04          ;    global;report size (  4)
 285/ 381;  95 02          ;    global;report count (  2)
 287/ 381;  25 0F          ;    global;logical maximum (   15)
 289/ 381;  B1 02          ;    main;FEATURE (002)     
 291/ 381;  85 07          ;    global;report id (07)  
 293/ 381;  09 60          ;    local;usage (60)         ;Digitizer/Latency Mode;Report ID 07
 295/ 381;  75 01          ;    global;report size (  1)
 297/ 381;  95 01          ;    global;report count (  1)
 299/ 381;  15 00          ;    global;logical minimum (    0)
 301/ 381;  25 01          ;    global;logical maximum (    1)
 303/ 381;  B1 02          ;    main;FEATURE (002)     
 305/ 381;  95 0F          ;    global;report count ( 15)
 307/ 381;  B1 03          ;    main;FEATURE (003)     
 309/ 381;  06 00 FF       ;    global;usage page (FF00)   ;VENDOR SPECIFIC
 312/ 381;  06 00 FF       ;    global;usage page (FF00)   ;VENDOR SPECIFIC
 315/ 381;  85 06          ;    global;report id (06)  
 317/ 381;  09 C5          ;    local;usage (C5)         ;VENDOR SPECIFIC;Report ID 06
 319/ 381;  15 00          ;    global;logical minimum (    0)
 321/ 381;  26 FF 00       ;    global;logical maximum (  255)
 324/ 381;  75 08          ;    global;report size (  8)
 326/ 381;  96 00 01       ;    global;report count (256)
 329/ 381;  B1 02          ;    main;FEATURE (002)     
 331/ 381;  C0             ;main;COLLECTION END    
 332/ 381;  05 0D          ;global;usage page (0D)   ;Digitizer
 334/ 381;  09 0E          ;local;usage (0E)         ;Digitizer/Device Configuration;Report ID 06
 336/ 381;  A1 01          ;main;COLLECTION (001)    ;APPLICATION
 338/ 381;  85 03          ;    global;report id (03)  
 340/ 381;  09 22          ;    local;usage (22)         ;Digitizer/Finger;Report ID 03
 342/ 381;  A1 00          ;    main;COLLECTION (000)    ;PHYSICAL
 344/ 381;  09 52          ;        local;usage (52)         ;Digitizer/Device Mode;Report ID 03
 346/ 381;  15 00          ;        global;logical minimum (    0)
 348/ 381;  25 0A          ;        global;logical maximum (   10)
 350/ 381;  75 10          ;        global;report size ( 16)
 352/ 381;  95 01          ;        global;report count (  1)
 354/ 381;  B1 02          ;        main;FEATURE (002)     
 356/ 381;  C0             ;    main;COLLECTION END    
 357/ 381;  09 22          ;    local;usage (22)         ;Digitizer/Finger;Report ID 03
 359/ 381;  A1 00          ;    main;COLLECTION (000)    ;PHYSICAL
 361/ 381;  85 05          ;        global;report id (05)  
 363/ 381;  09 57          ;        local;usage (57)         ;Digitizer/Surface Switch;Report ID 05
 365/ 381;  09 58          ;        local;usage (58)         ;Digitizer/Button Switch;Report ID 05
 367/ 381;  75 01          ;        global;report size (  1)
 369/ 381;  95 02          ;        global;report count (  2)
 371/ 381;  25 01          ;        global;logical maximum (    1)
 373/ 381;  B1 02          ;        main;FEATURE (002)     
 375/ 381;  95 0E          ;        global;report count ( 14)
 377/ 381;  B1 03          ;        main;FEATURE (003)     
 379/ 381;  C0             ;    main;COLLECTION END    
 380/ 381;  C0             ;main;COLLECTION END
 
Code:
bsdforen> 178 bytes> 05 01 09 02 A1 01 85 01 09 01 A1 00 05 09 19 01 29 03 15 00 25 01 75 01 95 03 81 02 75 05 95 01 81 03 05 01 09 30 09 31 15 81 25 7F 75 08 95 02 81 06 A1 02 09 38 95 01 81 06 C0 A1 02 05 0C 0A 38 02 81 06 C0 C0 C0 05 01 09 06 A1 01 85 02 05 07 19 E0 29 E7 15 00 25 01 75 01 95 08 81 02 75 08 95 01 81 01 05 07 19 00 29 73 15 00 26 73 00 75 08 95 06 81 00 C0 06 01 FF 09 01 A1 01 85 03 09 01 15 00 26 FF 00 95 1B 81 02 85 04 09 02 95 50 81 02 85 05 09 03 95 07 B1 02 85 06 09 04 81 02 C0 06 02 FF 09 01 A1 01 85 07 09 05 95 86 B1 02 C0
bsdforen> 46 bytes> 05 01 09 02 A1 01 09 01 A1 00 05 09 19 01 29 03 15 00 25 01 95 08 75 01 81 02 05 01 09 30 09 31 09 38 15 81 25 7F 75 08 95 03 81 06 C0 C0
2-Fingerscrollen geht.
 
VIelen Dank!

Hier dier geparsten outputs:

Code:
read 178 bytes
   0/ 178;  05 01          ;global;usage page (01)   ;Generic Desktop
   2/ 178;  09 02          ;local;usage (02)         ;Generic Desktop/Mouse;Report ID FFFFFFFF
   4/ 178;  A1 01          ;main;COLLECTION (001)    ;APPLICATION
   6/ 178;  85 01          ;    global;report id (01)   
   8/ 178;  09 01          ;    local;usage (01)         ;Generic Desktop/Pointer;Report ID 01
  10/ 178;  A1 00          ;    main;COLLECTION (000)    ;PHYSICAL
  12/ 178;  05 09          ;        global;usage page (09)   ;Button
  14/ 178;  19 01          ;        local;usage minimum (01) ;Button/Button 1;Report ID 01
  16/ 178;  29 03          ;        local;usage maximum (03) ;Button/Button 3;Report ID 01
  18/ 178;  15 00          ;        global;logical minimum (    0) 
  20/ 178;  25 01          ;        global;logical maximum (    1) 
  22/ 178;  75 01          ;        global;report size (  1)
  24/ 178;  95 03          ;        global;report count (  3)
  26/ 178;  81 02          ;        main;INPUT (002)         ;data, variable, absolute
  28/ 178;  75 05          ;        global;report size (  5)
  30/ 178;  95 01          ;        global;report count (  1)
  32/ 178;  81 03          ;        main;INPUT (003)         ;constant, variable
  34/ 178;  05 01          ;        global;usage page (01)   ;Generic Desktop
  36/ 178;  09 30          ;        local;usage (30)         ;Generic Desktop/X;Report ID 01
  38/ 178;  09 31          ;        local;usage (31)         ;Generic Desktop/Y;Report ID 01
  40/ 178;  15 81          ;        global;logical minimum ( -127) 
  42/ 178;  25 7F          ;        global;logical maximum (  127) 
  44/ 178;  75 08          ;        global;report size (  8)
  46/ 178;  95 02          ;        global;report count (  2)
  48/ 178;  81 06          ;        main;INPUT (006)         ;data, variable, relative
  50/ 178;  A1 02          ;        main;COLLECTION (002)    ;LOGICAL
  52/ 178;  09 38          ;            local;usage (38)         ;Generic Desktop/Wheel;Report ID 01
  54/ 178;  95 01          ;            global;report count (  1)
  56/ 178;  81 06          ;            main;INPUT (006)         ;data, variable, relative
  58/ 178;  C0             ;        main;COLLECTION END     
  59/ 178;  A1 02          ;        main;COLLECTION (002)    ;LOGICAL
  61/ 178;  05 0C          ;            global;usage page (0C)   ;Consumer
  63/ 178;  0A 38 02       ;            local;usage (238)         ;Consumer/AC PAN;Report ID 01
  66/ 178;  81 06          ;            main;INPUT (006)         ;data, variable, relative
  68/ 178;  C0             ;        main;COLLECTION END     
  69/ 178;  C0             ;    main;COLLECTION END     
  70/ 178;  C0             ;main;COLLECTION END     
  71/ 178;  05 01          ;global;usage page (01)   ;Generic Desktop
  73/ 178;  09 06          ;local;usage (06)         ;Generic Desktop/Keyboard;Report ID 01
  75/ 178;  A1 01          ;main;COLLECTION (001)    ;APPLICATION
  77/ 178;  85 02          ;    global;report id (02)   
  79/ 178;  05 07          ;    global;usage page (07)   ;Keyboard\Keypad
  81/ 178;  19 E0          ;    local;usage minimum (E0) ;Keyboard\Keypad/Keyboard Left Control;Report ID 02
  83/ 178;  29 E7          ;    local;usage maximum (E7) ;Keyboard\Keypad/Keyboard Right GUI;Report ID 02
  85/ 178;  15 00          ;    global;logical minimum (    0) 
  87/ 178;  25 01          ;    global;logical maximum (    1) 
  89/ 178;  75 01          ;    global;report size (  1)
  91/ 178;  95 08          ;    global;report count (  8)
  93/ 178;  81 02          ;    main;INPUT (002)         ;data, variable, absolute
  95/ 178;  75 08          ;    global;report size (  8)
  97/ 178;  95 01          ;    global;report count (  1)
  99/ 178;  81 01          ;    main;INPUT (001)         ;constant
 101/ 178;  05 07          ;    global;usage page (07)   ;Keyboard\Keypad
 103/ 178;  19 00          ;    local;usage minimum (00) ;Keyboard\Keypad/Keyboard reserved;Report ID 02
 105/ 178;  29 73          ;    local;usage maximum (73) ;Keyboard\Keypad/Keyboard F24;Report ID 02
 107/ 178;  15 00          ;    global;logical minimum (    0) 
 109/ 178;  26 73 00       ;    global;logical maximum (  115) 
 112/ 178;  75 08          ;    global;report size (  8)
 114/ 178;  95 06          ;    global;report count (  6)
 116/ 178;  81 00          ;    main;INPUT (000)         ;data, array, absolute
 118/ 178;  C0             ;main;COLLECTION END     
 119/ 178;  06 01 FF       ;global;usage page (FF01)   ;VENDOR SPECIFIC
 122/ 178;  09 01          ;local;usage (01)         ;VENDOR SPECIFIC;Report ID 02
 124/ 178;  A1 01          ;main;COLLECTION (001)    ;APPLICATION
 126/ 178;  85 03          ;    global;report id (03)   
 128/ 178;  09 01          ;    local;usage (01)         ;VENDOR SPECIFIC;Report ID 03
 130/ 178;  15 00          ;    global;logical minimum (    0) 
 132/ 178;  26 FF 00       ;    global;logical maximum (  255) 
 135/ 178;  95 1B          ;    global;report count ( 27)
 137/ 178;  81 02          ;    main;INPUT (002)         ;data, variable, absolute
 139/ 178;  85 04          ;    global;report id (04)   
 141/ 178;  09 02          ;    local;usage (02)         ;VENDOR SPECIFIC;Report ID 04
 143/ 178;  95 50          ;    global;report count ( 80)
 145/ 178;  81 02          ;    main;INPUT (002)         ;data, variable, absolute
 147/ 178;  85 05          ;    global;report id (05)   
 149/ 178;  09 03          ;    local;usage (03)         ;VENDOR SPECIFIC;Report ID 05
 151/ 178;  95 07          ;    global;report count (  7)
 153/ 178;  B1 02          ;    main;FEATURE (002)       
 155/ 178;  85 06          ;    global;report id (06)   
 157/ 178;  09 04          ;    local;usage (04)         ;VENDOR SPECIFIC;Report ID 06
 159/ 178;  81 02          ;    main;INPUT (002)         ;data, variable, absolute
 161/ 178;  C0             ;main;COLLECTION END     
 162/ 178;  06 02 FF       ;global;usage page (FF02)   ;VENDOR SPECIFIC
 165/ 178;  09 01          ;local;usage (01)         ;VENDOR SPECIFIC;Report ID 06
 167/ 178;  A1 01          ;main;COLLECTION (001)    ;APPLICATION
 169/ 178;  85 07          ;    global;report id (07)   
 171/ 178;  09 05          ;    local;usage (05)         ;VENDOR SPECIFIC;Report ID 07
 173/ 178;  95 86          ;    global;report count (134)
 175/ 178;  B1 02          ;    main;FEATURE (002)       
 177/ 178;  C0             ;main;COLLECTION END

und

Code:
read 46 bytes
   0/  46;  05 01          ;global;usage page (01)   ;Generic Desktop
   2/  46;  09 02          ;local;usage (02)         ;Generic Desktop/Mouse;Report ID FFFFFFFF
   4/  46;  A1 01          ;main;COLLECTION (001)    ;APPLICATION
   6/  46;  09 01          ;    local;usage (01)         ;Generic Desktop/Pointer;Report ID FFFFFFFF
   8/  46;  A1 00          ;    main;COLLECTION (000)    ;PHYSICAL
  10/  46;  05 09          ;        global;usage page (09)   ;Button
  12/  46;  19 01          ;        local;usage minimum (01) ;Button/Button 1;Report ID FFFFFFFF
  14/  46;  29 03          ;        local;usage maximum (03) ;Button/Button 3;Report ID FFFFFFFF
  16/  46;  15 00          ;        global;logical minimum (    0)  
  18/  46;  25 01          ;        global;logical maximum (    1)  
  20/  46;  95 08          ;        global;report count (  8)
  22/  46;  75 01          ;        global;report size (  1) 
  24/  46;  81 02          ;        main;INPUT (002)         ;data, variable, absolute
  26/  46;  05 01          ;        global;usage page (01)   ;Generic Desktop
  28/  46;  09 30          ;        local;usage (30)         ;Generic Desktop/X;Report ID FFFFFFFF
  30/  46;  09 31          ;        local;usage (31)         ;Generic Desktop/Y;Report ID FFFFFFFF
  32/  46;  09 38          ;        local;usage (38)         ;Generic Desktop/Wheel;Report ID FFFFFFFF
  34/  46;  15 81          ;        global;logical minimum ( -127)  
  36/  46;  25 7F          ;        global;logical maximum (  127)  
  38/  46;  75 08          ;        global;report size (  8) 
  40/  46;  95 03          ;        global;report count (  3)
  42/  46;  81 06          ;        main;INPUT (006)         ;data, variable, relative
  44/  46;  C0             ;    main;COLLECTION END      
  45/  46;  C0             ;main;COLLECTION END
 
Ich kann zwar mit dem Output nicht wirklich etwas anfangen, aber ich frage mich, warum sich das Touchpad von @Tatzahn weder mit wscons, noch mit synaptics oder xinput ansprechen laesst. Es wird ja scheinbar korrekt initialisiert. Evtl. fehlt die Hersteller-ID in irgendeiner Liste?
 
Zum Output: WieManLeichtSieht(tm) ist das der sogenannte Report Descriptor. Der sagt dem Betriebsysstem, was fuer Daten das Device liefert, und in welchem Format es kommt.
Das KANN ein offerner Standard sein, aber auch mal VENDOR SPECIFIC.



Bei der Meldung der DATEN (nach offenem Standard) fehlt bei Tatzahn z.B. der Eintrag fuer den "Digitizer/Contact Count", der die Finger zaehlt, die du auf dem Touchpad hast. Bei deinen Daten kommt es bei Byte 241/381.

Sein "Touchpad" meldet sich (Standardmaessig) nur als Maus an. Die andern Informationen KOENNTEN in dem Vendor specific stecken.
 
Zurück
Oben