Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Nov 2022 12:55:11 +0000
From:      bugzilla-noreply@freebsd.org
To:        usb@FreeBSD.org
Subject:   [Bug 267922] Contour Rollermouse Red not supported by ums(4)
Message-ID:  <bug-267922-19105-msPyxrDkhl@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-267922-19105@https.bugs.freebsd.org/bugzilla/>
References:  <bug-267922-19105@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D267922

--- Comment #8 from Atte Peltom=C3=A4ki <koston@iki.fi> ---
Sorry for late response, I have been traveling without access to this compu=
ter.

Enabling the suggested loader.conf settings changed the mouse behaviour,
becoming even more erratic. Most prominent change was repeated button 3 inp=
uts
during all movements of the mouse, but button behaviour changed too. Here is
some data, hopefully it includes something useful.

dmesg | grep Contour:

ugen0.4: <Contour Design Contour Rollermouse Red> at usbus0
uhid1: <Contour Design Contour Rollermouse Red, class 0/0, rev 2.00/0.05, a=
ddr
3> on usbus0
ums0: <Contour Rollermouse Red> on usbus0
ugen0.4: <Contour Design Contour Rollermouse Red> at usbus0
usbhid1: <Contour Rollermouse Red> on usbus0
hidraw1: <Contour Design Contour Rollermouse Red Raw HID Device> on hidbus1
usbhid2: <Contour Design Contour Rollermouse Red, class 0/0, rev 2.00/0.05,
addr 3> on usbus0
hidraw2: <Contour Design Contour Rollermouse Red Raw HID Device> on hidbus2
hms0: <Contour Design Contour Rollermouse Red> on hidbus1
hkbd0: <Contour Design Contour Rollermouse Red Keyboard> on hidbus1
hcons0: <Contour Design Contour Rollermouse Red Consumer Control> on hidbus1

grep Contour /var/log/Xorg.0.log:

[   464.597] (II) config/udev: Adding input device Contour Design Contour
Rollermouse Red Keyboard (/dev/input/event10)
[   464.597] (**) Contour Design Contour Rollermouse Red Keyboard: Applying
InputClass "evdev keyboard catchall"
[   464.597] (**) Contour Design Contour Rollermouse Red Keyboard: Applying
InputClass "Evdev keyboard"
[   464.597] (**) Contour Design Contour Rollermouse Red Keyboard: Applying
InputClass "libinput keyboard catchall"
[   464.597] (**) Contour Design Contour Rollermouse Red Keyboard: Applying
InputClass "keyboard-all"
[   464.597] (II) Using input driver 'evdev' for 'Contour Design Contour
Rollermouse Red Keyboard'
[   464.597] (**) Contour Design Contour Rollermouse Red Keyboard: always
reports core events
[   464.597] (**) evdev: Contour Design Contour Rollermouse Red Keyboard:
Device: "/dev/input/event10"
[   464.597] (--) evdev: Contour Design Contour Rollermouse Red Keyboard:
Vendor 0xb33 Product 0x1004
[   464.597] (--) evdev: Contour Design Contour Rollermouse Red Keyboard: F=
ound
keys
[   464.597] (II) evdev: Contour Design Contour Rollermouse Red Keyboard:
Configuring as keyboard
[   464.597] (II) XINPUT: Adding extended input device "Contour Design Cont=
our
Rollermouse Red Keyboard" (type: KEYBOARD, id 8)
[   464.597] (II) config/udev: Adding input device Contour Design Contour
Rollermouse Red Consumer Control (/dev/input/event11)
[   464.597] (**) Contour Design Contour Rollermouse Red Consumer Control:
Applying InputClass "evdev keyboard catchall"
[   464.597] (**) Contour Design Contour Rollermouse Red Consumer Control:
Applying InputClass "Evdev keyboard"
[   464.597] (**) Contour Design Contour Rollermouse Red Consumer Control:
Applying InputClass "libinput keyboard catchall"
[   464.597] (**) Contour Design Contour Rollermouse Red Consumer Control:
Applying InputClass "keyboard-all"
[   464.597] (II) Using input driver 'evdev' for 'Contour Design Contour
Rollermouse Red Consumer Control'
[   464.597] (**) Contour Design Contour Rollermouse Red Consumer Control:
always reports core events
[   464.597] (**) evdev: Contour Design Contour Rollermouse Red Consumer
Control: Device: "/dev/input/event11"
[   464.597] (--) evdev: Contour Design Contour Rollermouse Red Consumer
Control: Vendor 0xb33 Product 0x1004
[   464.597] (--) evdev: Contour Design Contour Rollermouse Red Consumer
Control: Found 1 mouse buttons
[   464.597] (--) evdev: Contour Design Contour Rollermouse Red Consumer
Control: Found keys
[   464.597] (II) evdev: Contour Design Contour Rollermouse Red Consumer
Control: Forcing relative x/y axes to exist.
[   464.597] (II) evdev: Contour Design Contour Rollermouse Red Consumer
Control: Configuring as mouse
[   464.597] (II) evdev: Contour Design Contour Rollermouse Red Consumer
Control: Configuring as keyboard
[   464.597] (**) evdev: Contour Design Contour Rollermouse Red Consumer
Control: YAxisMapping: buttons 4 and 5
[   464.597] (**) evdev: Contour Design Contour Rollermouse Red Consumer
Control: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeou=
t:
200
[   464.597] (II) XINPUT: Adding extended input device "Contour Design Cont=
our
Rollermouse Red Consumer Control" (type: KEYBOARD, id 9)
[   464.598] (II) evdev: Contour Design Contour Rollermouse Red Consumer
Control: initialized for relative axes.
[   464.598] (**) Contour Design Contour Rollermouse Red Consumer Control:
(accel) keeping acceleration scheme 1
[   464.598] (**) Contour Design Contour Rollermouse Red Consumer Control:
(accel) acceleration profile 0
[   464.598] (**) Contour Design Contour Rollermouse Red Consumer Control:
(accel) acceleration factor: 2.000
[   464.598] (**) Contour Design Contour Rollermouse Red Consumer Control:
(accel) acceleration threshold: 4
[   464.774] (II) config/udev: Adding input device Contour Design Contour
Rollermouse Red (/dev/input/event9)
[   464.774] (**) Contour Design Contour Rollermouse Red: Applying InputCla=
ss
"evdev pointer catchall"
[   464.774] (**) Contour Design Contour Rollermouse Red: Applying InputCla=
ss
"libinput pointer catchall"
[   464.774] (II) Using input driver 'libinput' for 'Contour Design Contour
Rollermouse Red'
[   464.774] (**) Contour Design Contour Rollermouse Red: always reports co=
re
events
[   464.776] (II) event9  - Contour Design Contour Rollermouse Red: is tagg=
ed
by udev as: Mouse
[   464.777] (II) event9  - Contour Design Contour Rollermouse Red: device =
is a
pointer
[   464.778] (II) event9  - Contour Design Contour Rollermouse Red: device
removed
[   464.778] (II) XINPUT: Adding extended input device "Contour Design Cont=
our
Rollermouse Red" (type: MOUSE, id 16)
[   464.778] (**) Contour Design Contour Rollermouse Red: (accel) selected
scheme none/0
[   464.778] (**) Contour Design Contour Rollermouse Red: (accel) accelerat=
ion
factor: 2.000
[   464.778] (**) Contour Design Contour Rollermouse Red: (accel) accelerat=
ion
threshold: 4
[   464.780] (II) event9  - Contour Design Contour Rollermouse Red: is tagg=
ed
by udev as: Mouse
[   464.781] (II) event9  - Contour Design Contour Rollermouse Red: device =
is a
pointer

usbhid-dump -a 0:4

000:004:001:DESCRIPTOR         1669636394.813273
 06 00 FF 0A 00 FF A1 01 15 00 26 FF 00 75 08 95
 20 19 00 2A FF 00 91 02 19 00 2A FF 00 15 00 26
 FF 00 75 08 95 20 81 02 C0

000:004:000:DESCRIPTOR         1669636394.815759
 05 01 09 02 A1 01 09 01 A1 01 85 01 05 09 19 01
 29 08 15 00 25 01 75 01 95 08 81 02 05 01 09 30
 09 31 16 08 80 26 FF 7F 75 10 95 02 81 06 09 38
 15 81 25 7F 75 08 95 01 81 06 05 0C 0A 00 FF 81
 06 06 00 FF 09 01 75 08 95 08 81 02 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 06 00 FF 09 02 75 08 95 01 81
 02 05 07 19 00 29 7F 15 00 25 7F 75 08 95 05 81
 00 C0 05 0C 09 01 A1 01 85 03 05 09 19 09 29 18
 15 00 25 01 75 01 95 10 81 02 05 0C 19 00 2A FF
 03 15 00 26 FF 03 95 01 75 10 81 00 05 01 1A 81
 00 2A 83 00 15 00 25 01 75 01 95 03 81 02 95 05
 81 01 06 00 FF 09 02 75 08 95 0A 81 02 85 04 06
 00 FF 0A 00 FF 75 08 95 0F B1 02 C0

hid-recorder /dev/hidraw1

# Contour Design Contour Rollermouse Red
# 0x05, 0x01,                    // Usage Page (Generic Desktop)        0
# 0x09, 0x02,                    // Usage (Mouse)                       2
# 0xa1, 0x01,                    // Collection (Application)            4
# 0x09, 0x01,                    //  Usage (Pointer)                    6
# 0xa1, 0x01,                    //  Collection (Application)           8
# 0x85, 0x01,                    //   Report ID (1)                     10
# 0x05, 0x09,                    //   Usage Page (Button)               12
# 0x19, 0x01,                    //   Usage Minimum (1)                 14
# 0x29, 0x08,                    //   Usage Maximum (8)                 16
# 0x15, 0x00,                    //   Logical Minimum (0)               18
# 0x25, 0x01,                    //   Logical Maximum (1)               20
# 0x75, 0x01,                    //   Report Size (1)                   22
# 0x95, 0x08,                    //   Report Count (8)                  24
# 0x81, 0x02,                    //   Input (Data,Var,Abs)              26
# 0x05, 0x01,                    //   Usage Page (Generic Desktop)      28
# 0x09, 0x30,                    //   Usage (X)                         30
# 0x09, 0x31,                    //   Usage (Y)                         32
# 0x16, 0x08, 0x80,              //   Logical Minimum (-32760)          34
# 0x26, 0xff, 0x7f,              //   Logical Maximum (32767)           37
# 0x75, 0x10,                    //   Report Size (16)                  40
# 0x95, 0x02,                    //   Report Count (2)                  42
# 0x81, 0x06,                    //   Input (Data,Var,Rel)              44
# 0x09, 0x38,                    //   Usage (Wheel)                     46
# 0x15, 0x81,                    //   Logical Minimum (-127)            48
# 0x25, 0x7f,                    //   Logical Maximum (127)             50
# 0x75, 0x08,                    //   Report Size (8)                   52
# 0x95, 0x01,                    //   Report Count (1)                  54
# 0x81, 0x06,                    //   Input (Data,Var,Rel)              56
# 0x05, 0x0c,                    //   Usage Page (Consumer Devices)     58
# 0x0a, 0x00, 0xff,              //   Usage (Vendor Usage 0xff00)       60
# 0x81, 0x06,                    //   Input (Data,Var,Rel)              63
# 0x06, 0x00, 0xff,              //   Usage Page (Vendor Defined Page 1) 65
# 0x09, 0x01,                    //   Usage (Vendor Usage 1)            68
# 0x75, 0x08,                    //   Report Size (8)                   70
# 0x95, 0x08,                    //   Report Count (8)                  72
# 0x81, 0x02,                    //   Input (Data,Var,Abs)              74
# 0xc0,                          //  End Collection                     76
# 0xc0,                          // End Collection                      77
# 0x05, 0x01,                    // Usage Page (Generic Desktop)        78
# 0x09, 0x06,                    // Usage (Keyboard)                    80
# 0xa1, 0x01,                    // Collection (Application)            82
# 0x85, 0x02,                    //  Report ID (2)                      84
# 0x05, 0x07,                    //  Usage Page (Keyboard)              86
# 0x19, 0xe0,                    //  Usage Minimum (224)                88
# 0x29, 0xe7,                    //  Usage Maximum (231)                90
# 0x15, 0x00,                    //  Logical Minimum (0)                92
# 0x25, 0x01,                    //  Logical Maximum (1)                94
# 0x75, 0x01,                    //  Report Size (1)                    96
# 0x95, 0x08,                    //  Report Count (8)                   98
# 0x81, 0x02,                    //  Input (Data,Var,Abs)               100
# 0x06, 0x00, 0xff,              //  Usage Page (Vendor Defined Page 1) 102
# 0x09, 0x02,                    //  Usage (Vendor Usage 2)             105
# 0x75, 0x08,                    //  Report Size (8)                    107
# 0x95, 0x01,                    //  Report Count (1)                   109
# 0x81, 0x02,                    //  Input (Data,Var,Abs)               111
# 0x05, 0x07,                    //  Usage Page (Keyboard)              113
# 0x19, 0x00,                    //  Usage Minimum (0)                  115
# 0x29, 0x7f,                    //  Usage Maximum (127)                117
# 0x15, 0x00,                    //  Logical Minimum (0)                119
# 0x25, 0x7f,                    //  Logical Maximum (127)              121
# 0x75, 0x08,                    //  Report Size (8)                    123
# 0x95, 0x05,                    //  Report Count (5)                   125
# 0x81, 0x00,                    //  Input (Data,Arr,Abs)               127
# 0xc0,                          // End Collection                      129
# 0x05, 0x0c,                    // Usage Page (Consumer Devices)       130
# 0x09, 0x01,                    // Usage (Consumer Control)            132
# 0xa1, 0x01,                    // Collection (Application)            134
# 0x85, 0x03,                    //  Report ID (3)                      136
# 0x05, 0x09,                    //  Usage Page (Button)                138
# 0x19, 0x09,                    //  Usage Minimum (9)                  140
# 0x29, 0x18,                    //  Usage Maximum (24)                 142
# 0x15, 0x00,                    //  Logical Minimum (0)                144
# 0x25, 0x01,                    //  Logical Maximum (1)                146
# 0x75, 0x01,                    //  Report Size (1)                    148
# 0x95, 0x10,                    //  Report Count (16)                  150
# 0x81, 0x02,                    //  Input (Data,Var,Abs)               152
# 0x05, 0x0c,                    //  Usage Page (Consumer Devices)      154
# 0x19, 0x00,                    //  Usage Minimum (0)                  156
# 0x2a, 0xff, 0x03,              //  Usage Maximum (1023)               158
# 0x15, 0x00,                    //  Logical Minimum (0)                161
# 0x26, 0xff, 0x03,              //  Logical Maximum (1023)             163
# 0x95, 0x01,                    //  Report Count (1)                   166
# 0x75, 0x10,                    //  Report Size (16)                   168
# 0x81, 0x00,                    //  Input (Data,Arr,Abs)               170
# 0x05, 0x01,                    //  Usage Page (Generic Desktop)       172
# 0x1a, 0x81, 0x00,              //  Usage Minimum (129)                174
# 0x2a, 0x83, 0x00,              //  Usage Maximum (131)                177
# 0x15, 0x00,                    //  Logical Minimum (0)                180
# 0x25, 0x01,                    //  Logical Maximum (1)                182
# 0x75, 0x01,                    //  Report Size (1)                    184
# 0x95, 0x03,                    //  Report Count (3)                   186
# 0x81, 0x02,                    //  Input (Data,Var,Abs)               188
# 0x95, 0x05,                    //  Report Count (5)                   190
# 0x81, 0x01,                    //  Input (Cnst,Arr,Abs)               192
# 0x06, 0x00, 0xff,              //  Usage Page (Vendor Defined Page 1) 194
# 0x09, 0x02,                    //  Usage (Vendor Usage 2)             197
# 0x75, 0x08,                    //  Report Size (8)                    199
# 0x95, 0x0a,                    //  Report Count (10)                  201
# 0x81, 0x02,                    //  Input (Data,Var,Abs)               203
# 0x85, 0x04,                    //  Report ID (4)                      205
# 0x06, 0x00, 0xff,              //  Usage Page (Vendor Defined Page 1) 207
# 0x0a, 0x00, 0xff,              //  Usage (Vendor Usage 0xff00)        210
# 0x75, 0x08,                    //  Report Size (8)                    213
# 0x95, 0x0f,                    //  Report Count (15)                  215
# 0xb1, 0x02,                    //  Feature (Data,Var,Abs)             217
# 0xc0,                          // End Collection                      219
#=20
R: 220 05 01 09 02 a1 01 09 01 a1 01 85 01 05 09 19 01 29 08 15 00 25 01 75=
 01
95 08 81 02 05 01 09 30 09 31 16 08 80 26 ff 7f 75 10 95 02 81 06 09 38 15 =
81
25 7f 75 08 95 01 81 06 05 0c 0a 00 ff 81 06 06 00 ff 09 01 75 08 95 08 81 =
02
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
06 00 ff 09 02 75 08 95 01 81 02 05 07 19 00 29 7f 15 00 25 7f 75 08 95 05 =
81
00 c0 05 0c 09 01 a1 01 85 03 05 09 19 09 29 18 15 00 25 01 75 01 95 10 81 =
02
05 0c 19 00 2a ff 03 15 00 26 ff 03 95 01 75 10 81 00 05 01 1a 81 00 2a 83 =
00
15 00 25 01 75 01 95 03 81 02 95 05 81 01 06 00 ff 09 02 75 08 95 0a 81 02 =
85
04 06 00 ff 0a 00 ff 75 08 95 0f b1 02 c0
N: Contour Design Contour Rollermouse Red
I: 3 0b33 1004


hid-record /dev/hidraw2

# Contour Design Contour Rollermouse Red=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20
# 0x06, 0x00, 0xff,              // Usage Page (Vendor Defined Page 1)  0
# 0x0a, 0x00, 0xff,              // Usage (Vendor Usage 0xff00)         3
# 0xa1, 0x01,                    // Collection (Application)            6
# 0x15, 0x00,                    //  Logical Minimum (0)                8
# 0x26, 0xff, 0x00,              //  Logical Maximum (255)              10
# 0x75, 0x08,                    //  Report Size (8)                    13
# 0x95, 0x20,                    //  Report Count (32)                  15
# 0x19, 0x00,                    //  Usage Minimum (0)                  17
# 0x2a, 0xff, 0x00,              //  Usage Maximum (255)                19
# 0x91, 0x02,                    //  Output (Data,Var,Abs)              22
# 0x19, 0x00,                    //  Usage Minimum (0)                  24
# 0x2a, 0xff, 0x00,              //  Usage Maximum (255)                26
# 0x15, 0x00,                    //  Logical Minimum (0)                29
# 0x26, 0xff, 0x00,              //  Logical Maximum (255)              31
# 0x75, 0x08,                    //  Report Size (8)                    34
# 0x95, 0x20,                    //  Report Count (32)                  36
# 0x81, 0x02,                    //  Input (Data,Var,Abs)               38
# 0xc0,                          // End Collection                      40
#=20
R: 41 06 00 ff 0a 00 ff a1 01 15 00 26 ff 00 75 08 95 20 19 00 2a ff 00 91 =
02
19 00 2a ff 00 15 00 26 ff 00 75 08 95 20 81 02 c0
N: Contour Design Contour Rollermouse Red
I: 3 0b33 1004
#  Undefined:    0 | Vendor Usage 1:    0 | Vendor Usage 2:    0 | 0xff0000=
03:=20
  0 | 0xff000004:    0 | 0xff000005:    0 | 0xff000006:    0 | 0xff000007: =
   0
| 0xff000008:    0 | 0xff000009:    0 | 0xff00000a:    0 | 0xff00000b:    0=
 |
0xff00000c:    0 | 0xff00000d:    0 | 0xff00000e:    0 | 0xff00000f:    0 |
0xff000010:    0 | 0xff000011:    0 | 0xff000012:    0 | 0xff000013:    0 |
0xff000014:    0 | 0xff000015:    0 | 0xff000016:    0 | 0xff000017:    0 |
0xff000018:    0 | 0xff000019:    0 | 0xff00001a:    0 | 0xff00001b:    0 |
0xff00001c:    0 | 0xff00001d:    0 | 0xff00001e:    0 | 0xff00001f:    0=20
E: 000000.000000 32 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0=
0 00
00 00 00 00 00 00 00 00 00 00 00 00


/dev/hidraw2 registered no inputs, so following are all recorded from
/dev/hidraw1:

Left:

# ReportID: 1 / Button: 1  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    1 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000000.000000 16 01 01 00 00 00 00 00 00 41 01 00 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000000.231984 16 01 00 00 00 00 00 00 00 41 00 00 00 00 00 00 00


Right:

# ReportID: 1 / Button: 0  1  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    2 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000000.000000 16 01 02 00 00 00 00 00 00 41 02 00 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000000.436006 16 01 00 00 00 00 00 00 00 41 00 00 00 00 00 00 00


Middle:

# ReportID: 1 / Button: 0  0  1  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    4 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000066.604014 16 01 04 00 00 00 00 00 00 41 04 00 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000067.280000 16 01 00 00 00 00 00 00 00 41 00 00 00 00 00 00 00


Roll bar:

# ReportID: 3  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0 |Consumer Dev=
ices
['00'] | System Power Down: 0 | System Sleep: 0 | System Wake Up: 0 | # |
Vendor Usage 2:   65 ,    1 ,    0 ,    0 ,    0 ,    0 ,    0 ,    0 ,    =
0 ,=20
  0
E: 000067.454002 16 03 00 00 00 00 00 41 01 00 00 00 00 00 00 00 00
# ReportID: 1 / Button: 1  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000067.455986 16 01 01 00 00 00 00 00 00 41 00 00 00 00 00 00 00
# ReportID: 3  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0 |Consumer Dev=
ices
['00'] | System Power Down: 0 | System Sleep: 0 | System Wake Up: 0 | # |
Vendor Usage 2:   65 ,    0 ,    0 ,    0 ,    0 ,    0 ,    0 ,    0 ,    =
0 ,=20
  0
E: 000067.985989 16 03 00 00 00 00 00 41 00 00 00 00 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000067.987968 16 01 00 00 00 00 00 00 00 41 00 00 00 00 00 00 00


Double click:

# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 , -128 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000000.000000 16 01 00 00 00 00 00 00 00 41 80 00 00 00 00 00 00
# ReportID: 1 / Button: 1  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 , -128 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000000.001977 16 01 01 00 00 00 00 00 00 41 80 00 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 , -128 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000000.003950 16 01 00 00 00 00 00 00 00 41 80 00 00 00 00 00 00
# ReportID: 1 / Button: 1  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 , -128 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000000.005946 16 01 01 00 00 00 00 00 00 41 80 00 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 , -128 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000000.007945 16 01 00 00 00 00 00 00 00 41 80 00 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000000.115963 16 01 00 00 00 00 00 00 00 41 00 00 00 00 00 00 00


Copy:

# ReportID: 2 / LeftControl: 1 | LeftShift: 0 | LeftAlt: 0 | Left GUI: 0 |
RightControl: 0 | RightShift: 0 | RightAlt: 0 | Right GUI: 0 | Vendor Usage=
 2:=20
 65 |Keyboard ['c and C', '00', '00', '00', '00']
E: 000159.344037 8 02 01 41 06 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,   32 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000159.346030 16 01 00 00 00 00 00 00 00 41 20 00 00 00 00 00 00
# ReportID: 2 / LeftControl: 0 | LeftShift: 0 | LeftAlt: 0 | Left GUI: 0 |
RightControl: 0 | RightShift: 0 | RightAlt: 0 | Right GUI: 0 | Vendor Usage=
 2:=20
 65 |Keyboard ['00', '00', '00', '00', '00']
E: 000159.544015 8 02 00 41 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000160.820033 16 01 00 00 00 00 00 00 00 41 00 00 00 00 00 00 00


Paste:


# ReportID: 2 / LeftControl: 1 | LeftShift: 0 | LeftAlt: 0 | Left GUI: 0 |
RightControl: 0 | RightShift: 0 | RightAlt: 0 | Right GUI: 0 | Vendor Usage=
 2:=20
 65 |Keyboard ['v and V', '00', '00', '00', '00']
E: 000168.598039 8 02 01 41 19 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,   64 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000168.599985 16 01 00 00 00 00 00 00 00 41 40 00 00 00 00 00 00
# ReportID: 2 / LeftControl: 0 | LeftShift: 0 | LeftAlt: 0 | Left GUI: 0 |
RightControl: 0 | RightShift: 0 | RightAlt: 0 | Right GUI: 0 | Vendor Usage=
 2:=20
 65 |Keyboard ['00', '00', '00', '00', '00']
E: 000168.800021 8 02 00 41 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    0 ,    0 ,    0 ,  =
  0
,    0 ,    0
E: 000169.598007 16 01 00 00 00 00 00 00 00 41 00 00 00 00 00 00 00


And, moving the mouse (very short clip, it was flooding this constantly, on=
ly
X: and Y: changed depending on the direction cursor was moved to)

# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      1 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    1 ,    0 ,    0 ,  =
  0
,    0 ,    0=20
E: 000005.331956 16 01 00 01 00 00 00 00 00 41 00 01 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      1 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    1 ,    0 ,    0 ,  =
  0
,    0 ,    0=20
E: 000005.337936 16 01 00 01 00 00 00 00 00 41 00 01 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      1 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    0 ,    0 ,    1 ,  =
  0
,    0 ,    0=20
E: 000005.339934 16 01 00 00 00 01 00 00 00 41 00 00 00 01 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      1 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    1 ,    0 ,    0 ,  =
  0
,    0 ,    0=20
E: 000005.345925 16 01 00 01 00 00 00 00 00 41 00 01 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      1 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    0 ,    0 ,    1 ,  =
  0
,    0 ,    0=20
E: 000005.347946 16 01 00 00 00 01 00 00 00 41 00 00 00 01 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      1 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    1 ,    0 ,    0 ,  =
  0
,    0 ,    0=20
E: 000005.349935 16 01 00 01 00 00 00 00 00 41 00 01 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      1 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    1 ,    0 ,    0 ,  =
  0
,    0 ,    0=20
E: 000005.355935 16 01 00 01 00 00 00 00 00 41 00 01 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      0 | Y:      1 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    0 ,    0 ,    1 ,  =
  0
,    0 ,    0=20
E: 000005.357934 16 01 00 00 00 01 00 00 00 41 00 00 00 01 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      1 | Y:      0 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    1 ,    0 ,    0 ,  =
  0
,    0 ,    0=20
E: 000005.361933 16 01 00 01 00 00 00 00 00 41 00 01 00 00 00 00 00
# ReportID: 1 / Button: 0  0  0  0  0  0  0  0 | X:      1 | Y:      1 | Wh=
eel:
   0 | 0xcff00:    0 | Vendor Usage 1:   65 ,    0 ,    1 ,    0 ,    1 ,  =
  0
,    0 ,    0=20
E: 000005.363925 16 01 00 01 00 01 00 00 00 41 00 01 00 01 00 00 00


Notably, when using "xev -input button | grep button", I saw more erratic
button behaviour than with hid-recorder. Multiple buttons being pressed
simultaneously, and behaviour changed depending if cursor had been moved be=
fore
pressing a button or not. On hid-recorder, the above results were consisten=
t.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-267922-19105-msPyxrDkhl>