Hi, On 2/8/21 11:17 AM, Hans de Goede wrote: > On 2/7/21 6:55 PM, Alexander Kobel wrote: >> <snip> >> I'll go off and try to improve. > > So Nitin has been kind enough to provide us with some docs for this, > please see me reply to Nitin's email and lets continue this part of this mail > thread there. Right. I have the other patch ready, thanks to your great help. I'm waiting for Nitin's okay whether / how much info I can copy from the reference sheet to source code comments. Once I have that confirmation, I will post the revised patch. > <snip> > >> Finally, I mentioned some open ends already on a post to ibm-acpi-devel >> at https://sourceforge.net/p/ibm-acpi/mailman/message/37200082/; this >> very question is among them. >> I will start tackling the SW_TABLET_MODE event issue first, but if Mark >> and Nitin can already hint about the keyboard shortcuts, it'd be highly >> appreciated. > > I think I might be able to help there, a couple of months ago I bought > a second-hand thinkpad-10 tablet which also has a USB attached keyboard. > > In hindsight I guess I could have asked Mark and Nitin for some more info, > but I went on autopilot and just ran hexdump -C on the /dev/hidraw node > to see which events all the keys send. > > And I fired up an usb-sniffer under Windows to figure out the audio-leds, > since I'm used to just figure these things out without help from the vendor :) Yeah, why take the boring route if you know how to do all the work on your own... ;-) > See the recent commits here for my work on this: > > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/log/drivers/hid/hid-lenovo.c Thanks, very helpful. > So on the ibm-acpi list message you said that the kbd sends the following: > > type 4 (EV_MSC), code 4 (MSC_SCAN), value c0001 > type 1 (EV_KEY), code 240 (KEY_UNKNOWN), value 1 > > For the Fn-keys, does it send the same MSC_SCAN code for *all* the > non-working Fn-keys ? Correct. And I can confirm that /dev/hidraw1 lets me distinguish between the keys. > If so then it seems that this is very much like the thinkpad 10 kbd dock > which also does this, see the lenovo_input_mapping_tp10_ultrabook_kbd() > function in drivers/hid/hid-lenovo.c . > > If I have that right, then I think we should be able to get the > Fn keys to work without too much trouble. You could try hacking up > drivers/hid/hid-lenovo.c a bit: (Not yet there, but will investigate.) > 1. Add an entry to the lenovo_devices array like this: > > /* > * Note bind to the HID_GROUP_GENERIC group, so that we only bind to the keyboard part, > * while letting hid-multitouch.c handle the touchpad and trackpoint. > */ > { HID_DEVICE(BUS_USB, HID_GROUP_GENERIC, > USB_VENDOR_ID_LENOVO, > USB_DEVICE_ID_LENOVO_X1_TAB), > > 2. Add the following entry to the switch-case in lenovo_input_mapping() : > > case USB_DEVICE_ID_LENOVO_X1_TAB: > return lenovo_input_mapping_tp10_ultrabook_kbd(hdev, hi, field, > usage, bit, max); > > And then build hid-lenovo.c and modprobe it. > > After the modprobe to: > > ls -l /sys/bus/hid/devices/0003:17EF:60A3.*/driver > > This should show 2 devices (I guess) with one being bound to hid-lenovo > and 1 being bound to hid-multitouch. So far (without patching hid-lenovo), 2 bound to hid-generic and 1 to hid-multitouch. > If this works some of your Fn + F# keys will now hopefully start doing > something, you can play around with modifying lenovo_input_mapping_tp10_ultrabook_kbd > to make it do the right thing for your kbd. > > ### > > About LED support, just enabling the LED support bits for the > USB_DEVICE_ID_LENOVO_TP10UBKBD handling for now might work fine, > but there is a tiny chance that sending the wrong command somehow puts > the kbd in firmware update mode, I had that happen once with a Logitech > kbd which did not seem to have any kind of handshake / passcode to avoid > accidental fw updates (*). > > If you can give me a dump of the hid-descriptors for your keyboard, > then I can check if that the LEDs might work the same way too (or not). > > The easiest way to get a dump is to run the following command as root: > > cat /sys/kernel/debug/hid/0003:17EF:60A3.*/rdesc > rdesc > > And then attach rdesc to your next email. Please find this one attached already now. In case it helps, the * expands to 0057 0058 0059 on my system. Thanks, Alex > Regards, > > Hans > > > > > > *) Luckily it at least had a separate firmware-bootlader mode in which it > was stuck now, so with some cmdline magic to force an upgrade the Windows > fw installer could still fix it. >
05 01 09 06 a1 01 05 07 19 e0 29 e7 15 00 25 01 75 01 95 08 81 02 95 01 75 08 81 01 95 05 75 01 05 08 19 01 29 05 91 02 95 01 75 03 91 01 95 06 75 08 15 00 26 ff 00 05 07 19 00 2a ff 00 81 00 05 0c 09 00 15 80 25 7f 95 40 75 08 b1 02 c0 INPUT[INPUT] Field(0) Application(GenericDesktop.Keyboard) Usage(8) Keyboard.00e0 Keyboard.00e1 Keyboard.00e2 Keyboard.00e3 Keyboard.00e4 Keyboard.00e5 Keyboard.00e6 Keyboard.00e7 Logical Minimum(0) Logical Maximum(1) Report Size(1) Report Count(8) Report Offset(0) Flags( Variable Absolute ) Field(1) Application(GenericDesktop.Keyboard) Usage(256) Keyboard.0000 Keyboard.0001 Keyboard.0002 Keyboard.0003 Keyboard.0004 Keyboard.0005 Keyboard.0006 Keyboard.0007 Keyboard.0008 Keyboard.0009 Keyboard.000a Keyboard.000b Keyboard.000c Keyboard.000d Keyboard.000e Keyboard.000f Keyboard.0010 Keyboard.0011 Keyboard.0012 Keyboard.0013 Keyboard.0014 Keyboard.0015 Keyboard.0016 Keyboard.0017 Keyboard.0018 Keyboard.0019 Keyboard.001a Keyboard.001b Keyboard.001c Keyboard.001d Keyboard.001e Keyboard.001f Keyboard.0020 Keyboard.0021 Keyboard.0022 Keyboard.0023 Keyboard.0024 Keyboard.0025 Keyboard.0026 Keyboard.0027 Keyboard.0028 Keyboard.0029 Keyboard.002a Keyboard.002b Keyboard.002c Keyboard.002d Keyboard.002e Keyboard.002f Keyboard.0030 Keyboard.0031 Keyboard.0032 Keyboard.0033 Keyboard.0034 Keyboard.0035 Keyboard.0036 Keyboard.0037 Keyboard.0038 Keyboard.0039 Keyboard.003a Keyboard.003b Keyboard.003c Keyboard.003d Keyboard.003e Keyboard.003f Keyboard.0040 Keyboard.0041 Keyboard.0042 Keyboard.0043 Keyboard.0044 Keyboard.0045 Keyboard.0046 Keyboard.0047 Keyboard.0048 Keyboard.0049 Keyboard.004a Keyboard.004b Keyboard.004c Keyboard.004d Keyboard.004e Keyboard.004f Keyboard.0050 Keyboard.0051 Keyboard.0052 Keyboard.0053 Keyboard.0054 Keyboard.0055 Keyboard.0056 Keyboard.0057 Keyboard.0058 Keyboard.0059 Keyboard.005a Keyboard.005b Keyboard.005c Keyboard.005d Keyboard.005e Keyboard.005f Keyboard.0060 Keyboard.0061 Keyboard.0062 Keyboard.0063 Keyboard.0064 Keyboard.0065 Keyboard.0066 Keyboard.0067 Keyboard.0068 Keyboard.0069 Keyboard.006a Keyboard.006b Keyboard.006c Keyboard.006d Keyboard.006e Keyboard.006f Keyboard.0070 Keyboard.0071 Keyboard.0072 Keyboard.0073 Keyboard.0074 Keyboard.0075 Keyboard.0076 Keyboard.0077 Keyboard.0078 Keyboard.0079 Keyboard.007a Keyboard.007b Keyboard.007c Keyboard.007d Keyboard.007e Keyboard.007f Keyboard.0080 Keyboard.0081 Keyboard.0082 Keyboard.0083 Keyboard.0084 Keyboard.0085 Keyboard.0086 Keyboard.0087 Keyboard.0088 Keyboard.0089 Keyboard.008a Keyboard.008b Keyboard.008c Keyboard.008d Keyboard.008e Keyboard.008f Keyboard.0090 Keyboard.0091 Keyboard.0092 Keyboard.0093 Keyboard.0094 Keyboard.0095 Keyboard.0096 Keyboard.0097 Keyboard.0098 Keyboard.0099 Keyboard.009a Keyboard.009b Keyboard.009c Keyboard.009d Keyboard.009e Keyboard.009f Keyboard.00a0 Keyboard.00a1 Keyboard.00a2 Keyboard.00a3 Keyboard.00a4 Keyboard.00a5 Keyboard.00a6 Keyboard.00a7 Keyboard.00a8 Keyboard.00a9 Keyboard.00aa Keyboard.00ab Keyboard.00ac Keyboard.00ad Keyboard.00ae Keyboard.00af Keyboard.00b0 Keyboard.00b1 Keyboard.00b2 Keyboard.00b3 Keyboard.00b4 Keyboard.00b5 Keyboard.00b6 Keyboard.00b7 Keyboard.00b8 Keyboard.00b9 Keyboard.00ba Keyboard.00bb Keyboard.00bc Keyboard.00bd Keyboard.00be Keyboard.00bf Keyboard.00c0 Keyboard.00c1 Keyboard.00c2 Keyboard.00c3 Keyboard.00c4 Keyboard.00c5 Keyboard.00c6 Keyboard.00c7 Keyboard.00c8 Keyboard.00c9 Keyboard.00ca Keyboard.00cb Keyboard.00cc Keyboard.00cd Keyboard.00ce Keyboard.00cf Keyboard.00d0 Keyboard.00d1 Keyboard.00d2 Keyboard.00d3 Keyboard.00d4 Keyboard.00d5 Keyboard.00d6 Keyboard.00d7 Keyboard.00d8 Keyboard.00d9 Keyboard.00da Keyboard.00db Keyboard.00dc Keyboard.00dd Keyboard.00de Keyboard.00df Keyboard.00e0 Keyboard.00e1 Keyboard.00e2 Keyboard.00e3 Keyboard.00e4 Keyboard.00e5 Keyboard.00e6 Keyboard.00e7 Keyboard.00e8 Keyboard.00e9 Keyboard.00ea Keyboard.00eb Keyboard.00ec Keyboard.00ed Keyboard.00ee Keyboard.00ef Keyboard.00f0 Keyboard.00f1 Keyboard.00f2 Keyboard.00f3 Keyboard.00f4 Keyboard.00f5 Keyboard.00f6 Keyboard.00f7 Keyboard.00f8 Keyboard.00f9 Keyboard.00fa Keyboard.00fb Keyboard.00fc Keyboard.00fd Keyboard.00fe Keyboard.00ff Logical Minimum(0) Logical Maximum(255) Report Size(8) Report Count(6) Report Offset(16) Flags( Array Absolute ) OUTPUT[OUTPUT] Field(0) Application(GenericDesktop.Keyboard) Usage(5) LED.NumLock LED.CapsLock LED.ScrollLock LED.Compose LED.Kana Logical Minimum(0) Logical Maximum(1) Report Size(1) Report Count(5) Report Offset(0) Flags( Variable Absolute ) FEATURE[FEATURE] Field(0) Application(GenericDesktop.Keyboard) Usage(64) Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Consumer.0000 Logical Minimum(-128) Logical Maximum(127) Report Size(8) Report Count(64) Report Offset(0) Flags( Variable Absolute ) Keyboard.00e0 ---> Key.LeftControl Keyboard.00e1 ---> Key.LeftShift Keyboard.00e2 ---> Key.LeftAlt Keyboard.00e3 ---> Key.LeftMeta Keyboard.00e4 ---> Key.RightCtrl Keyboard.00e5 ---> Key.RightShift Keyboard.00e6 ---> Key.RightAlt Keyboard.00e7 ---> Key.RightMeta Keyboard.0000 ---> Sync.Report Keyboard.0001 ---> Sync.Report Keyboard.0002 ---> Sync.Report Keyboard.0003 ---> Sync.Report Keyboard.0004 ---> Key.A Keyboard.0005 ---> Key.B Keyboard.0006 ---> Key.C Keyboard.0007 ---> Key.D Keyboard.0008 ---> Key.E Keyboard.0009 ---> Key.F Keyboard.000a ---> Key.G Keyboard.000b ---> Key.H Keyboard.000c ---> Key.I Keyboard.000d ---> Key.J Keyboard.000e ---> Key.K Keyboard.000f ---> Key.L Keyboard.0010 ---> Key.M Keyboard.0011 ---> Key.N Keyboard.0012 ---> Key.O Keyboard.0013 ---> Key.P Keyboard.0014 ---> Key.Q Keyboard.0015 ---> Key.R Keyboard.0016 ---> Key.S Keyboard.0017 ---> Key.T Keyboard.0018 ---> Key.U Keyboard.0019 ---> Key.V Keyboard.001a ---> Key.W Keyboard.001b ---> Key.X Keyboard.001c ---> Key.Y Keyboard.001d ---> Key.Z Keyboard.001e ---> Key.1 Keyboard.001f ---> Key.2 Keyboard.0020 ---> Key.3 Keyboard.0021 ---> Key.4 Keyboard.0022 ---> Key.5 Keyboard.0023 ---> Key.6 Keyboard.0024 ---> Key.7 Keyboard.0025 ---> Key.8 Keyboard.0026 ---> Key.9 Keyboard.0027 ---> Key.0 Keyboard.0028 ---> Key.Enter Keyboard.0029 ---> Key.Esc Keyboard.002a ---> Key.Backspace Keyboard.002b ---> Key.Tab Keyboard.002c ---> Key.Space Keyboard.002d ---> Key.Minus Keyboard.002e ---> Key.Equal Keyboard.002f ---> Key.LeftBrace Keyboard.0030 ---> Key.RightBrace Keyboard.0031 ---> Key.BackSlash Keyboard.0032 ---> Key.BackSlash Keyboard.0033 ---> Key.Semicolon Keyboard.0034 ---> Key.Apostrophe Keyboard.0035 ---> Key.Grave Keyboard.0036 ---> Key.Comma Keyboard.0037 ---> Key.Dot Keyboard.0038 ---> Key.Slash Keyboard.0039 ---> Key.CapsLock Keyboard.003a ---> Key.F1 Keyboard.003b ---> Key.F2 Keyboard.003c ---> Key.F3 Keyboard.003d ---> Key.F4 Keyboard.003e ---> Key.F5 Keyboard.003f ---> Key.F6 Keyboard.0040 ---> Key.F7 Keyboard.0041 ---> Key.F8 Keyboard.0042 ---> Key.F9 Keyboard.0043 ---> Key.F10 Keyboard.0044 ---> Key.F11 Keyboard.0045 ---> Key.F12 Keyboard.0046 ---> Key.SysRq Keyboard.0047 ---> Key.ScrollLock Keyboard.0048 ---> Key.Pause Keyboard.0049 ---> Key.Insert Keyboard.004a ---> Key.Home Keyboard.004b ---> Key.PageUp Keyboard.004c ---> Key.Delete Keyboard.004d ---> Key.End Keyboard.004e ---> Key.PageDown Keyboard.004f ---> Key.Right Keyboard.0050 ---> Key.Left Keyboard.0051 ---> Key.Down Keyboard.0052 ---> Key.Up Keyboard.0053 ---> Key.NumLock Keyboard.0054 ---> Key.KPSlash Keyboard.0055 ---> Key.KPAsterisk Keyboard.0056 ---> Key.KPMinus Keyboard.0057 ---> Key.KPPlus Keyboard.0058 ---> Key.KPEnter Keyboard.0059 ---> Key.KP1 Keyboard.005a ---> Key.KP2 Keyboard.005b ---> Key.KP3 Keyboard.005c ---> Key.KP4 Keyboard.005d ---> Key.KP5 Keyboard.005e ---> Key.KP6 Keyboard.005f ---> Key.KP7 Keyboard.0060 ---> Key.KP8 Keyboard.0061 ---> Key.KP9 Keyboard.0062 ---> Key.KP0 Keyboard.0063 ---> Key.KPDot Keyboard.0064 ---> Key.102nd Keyboard.0065 ---> Key.Compose Keyboard.0066 ---> Key.Power Keyboard.0067 ---> Key.KPEqual Keyboard.0068 ---> Key.F13 Keyboard.0069 ---> Key.F14 Keyboard.006a ---> Key.F15 Keyboard.006b ---> Key.F16 Keyboard.006c ---> Key.F17 Keyboard.006d ---> Key.F18 Keyboard.006e ---> Key.F19 Keyboard.006f ---> Key.F20 Keyboard.0070 ---> Key.F21 Keyboard.0071 ---> Key.F22 Keyboard.0072 ---> Key.F23 Keyboard.0073 ---> Key.F24 Keyboard.0074 ---> Key.Open Keyboard.0075 ---> Key.Help Keyboard.0076 ---> Key.Props Keyboard.0077 ---> Key.Front Keyboard.0078 ---> Key.Stop Keyboard.0079 ---> Key.Again Keyboard.007a ---> Key.Undo Keyboard.007b ---> Key.Cut Keyboard.007c ---> Key.Copy Keyboard.007d ---> Key.Paste Keyboard.007e ---> Key.Find Keyboard.007f ---> Key.Mute Keyboard.0080 ---> Key.VolumeUp Keyboard.0081 ---> Key.VolumeDown Keyboard.0082 ---> Key.Unknown Keyboard.0083 ---> Key.Unknown Keyboard.0084 ---> Key.Unknown Keyboard.0085 ---> Key.KPComma Keyboard.0086 ---> Key.Unknown Keyboard.0087 ---> Key.RO Keyboard.0088 ---> Key.Katakana/Hiragana Keyboard.0089 ---> Key.Yen Keyboard.008a ---> Key.Henkan Keyboard.008b ---> Key.Muhenkan Keyboard.008c ---> Key.KPJpComma Keyboard.008d ---> Key.Unknown Keyboard.008e ---> Key.Unknown Keyboard.008f ---> Key.Unknown Keyboard.0090 ---> Key.Hangeul Keyboard.0091 ---> Key.Hanja Keyboard.0092 ---> Key.Katakana Keyboard.0093 ---> Key.HIRAGANA Keyboard.0094 ---> Key.Zenkaku/Hankaku Keyboard.0095 ---> Key.Unknown Keyboard.0096 ---> Key.Unknown Keyboard.0097 ---> Key.Unknown Keyboard.0098 ---> Key.Unknown Keyboard.0099 ---> Key.Unknown Keyboard.009a ---> Key.Unknown Keyboard.009b ---> Key.Unknown Keyboard.009c ---> Key.Delete Keyboard.009d ---> Key.Unknown Keyboard.009e ---> Key.Unknown Keyboard.009f ---> Key.Unknown Keyboard.00a0 ---> Key.Unknown Keyboard.00a1 ---> Key.Unknown Keyboard.00a2 ---> Key.Unknown Keyboard.00a3 ---> Key.Unknown Keyboard.00a4 ---> Key.Unknown Keyboard.00a5 ---> Key.Unknown Keyboard.00a6 ---> Key.Unknown Keyboard.00a7 ---> Key.Unknown Keyboard.00a8 ---> Key.Unknown Keyboard.00a9 ---> Key.Unknown Keyboard.00aa ---> Key.Unknown Keyboard.00ab ---> Key.Unknown Keyboard.00ac ---> Key.Unknown Keyboard.00ad ---> Key.Unknown Keyboard.00ae ---> Key.Unknown Keyboard.00af ---> Key.Unknown Keyboard.00b0 ---> Key.Unknown Keyboard.00b1 ---> Key.Unknown Keyboard.00b2 ---> Key.Unknown Keyboard.00b3 ---> Key.Unknown Keyboard.00b4 ---> Key.Unknown Keyboard.00b5 ---> Key.Unknown Keyboard.00b6 ---> Key.KPLeftParenthesis Keyboard.00b7 ---> Key.KPRightParenthesis Keyboard.00b8 ---> Key.Unknown Keyboard.00b9 ---> Key.Unknown Keyboard.00ba ---> Key.Unknown Keyboard.00bb ---> Key.Unknown Keyboard.00bc ---> Key.Unknown Keyboard.00bd ---> Key.Unknown Keyboard.00be ---> Key.Unknown Keyboard.00bf ---> Key.Unknown Keyboard.00c0 ---> Key.Unknown Keyboard.00c1 ---> Key.Unknown Keyboard.00c2 ---> Key.Unknown Keyboard.00c3 ---> Key.Unknown Keyboard.00c4 ---> Key.Unknown Keyboard.00c5 ---> Key.Unknown Keyboard.00c6 ---> Key.Unknown Keyboard.00c7 ---> Key.Unknown Keyboard.00c8 ---> Key.Unknown Keyboard.00c9 ---> Key.Unknown Keyboard.00ca ---> Key.Unknown Keyboard.00cb ---> Key.Unknown Keyboard.00cc ---> Key.Unknown Keyboard.00cd ---> Key.Unknown Keyboard.00ce ---> Key.Unknown Keyboard.00cf ---> Key.Unknown Keyboard.00d0 ---> Key.Unknown Keyboard.00d1 ---> Key.Unknown Keyboard.00d2 ---> Key.Unknown Keyboard.00d3 ---> Key.Unknown Keyboard.00d4 ---> Key.Unknown Keyboard.00d5 ---> Key.Unknown Keyboard.00d6 ---> Key.Unknown Keyboard.00d7 ---> Key.Unknown Keyboard.00d8 ---> Key.Delete Keyboard.00d9 ---> Key.Unknown Keyboard.00da ---> Key.Unknown Keyboard.00db ---> Key.Unknown Keyboard.00dc ---> Key.Unknown Keyboard.00dd ---> Key.Unknown Keyboard.00de ---> Key.Unknown Keyboard.00df ---> Key.Unknown Keyboard.00e0 ---> Key.LeftControl Keyboard.00e1 ---> Key.LeftShift Keyboard.00e2 ---> Key.LeftAlt Keyboard.00e3 ---> Key.LeftMeta Keyboard.00e4 ---> Key.RightCtrl Keyboard.00e5 ---> Key.RightShift Keyboard.00e6 ---> Key.RightAlt Keyboard.00e7 ---> Key.RightMeta Keyboard.00e8 ---> Key.PlayPause Keyboard.00e9 ---> Key.StopCD Keyboard.00ea ---> Key.PreviousSong Keyboard.00eb ---> Key.NextSong Keyboard.00ec ---> Key.EjectCD Keyboard.00ed ---> Key.VolumeUp Keyboard.00ee ---> Key.VolumeDown Keyboard.00ef ---> Key.Mute Keyboard.00f0 ---> Key.WWW Keyboard.00f1 ---> Key.Back Keyboard.00f2 ---> Key.Forward Keyboard.00f3 ---> Key.Stop Keyboard.00f4 ---> Key.Find Keyboard.00f5 ---> Key.ScrollUp Keyboard.00f6 ---> Key.ScrollDown Keyboard.00f7 ---> Key.Edit Keyboard.00f8 ---> Key.Sleep Keyboard.00f9 ---> Key.Coffee Keyboard.00fa ---> Key.Refresh Keyboard.00fb ---> Key.Calc Keyboard.00fc ---> Key.Unknown Keyboard.00fd ---> Key.Unknown Keyboard.00fe ---> Key.Unknown Keyboard.00ff ---> Key.Unknown LED.NumLock ---> LED.NumLock LED.CapsLock ---> LED.CapsLock LED.ScrollLock ---> LED.ScrollLock LED.Compose ---> LED.Compose LED.Kana ---> LED.Kana 05 01 09 80 a1 01 85 02 05 01 19 81 29 83 15 00 25 01 95 03 75 01 81 02 95 01 75 05 81 01 c0 05 0c 09 01 a1 01 85 03 15 00 25 01 09 01 09 01 09 01 09 01 09 01 09 e2 09 01 09 01 09 01 09 01 09 01 09 b7 09 01 09 01 09 01 09 01 09 01 09 01 09 01 09 6f 09 ea 09 e9 09 70 09 01 75 01 95 18 81 02 c0 06 a0 ff 09 01 a1 01 85 09 15 00 25 ff 09 04 75 08 95 02 91 02 06 a1 ff 09 01 85 54 15 00 25 7f 0a 11 00 75 08 95 01 b1 02 06 a2 ff 09 01 85 64 15 00 25 01 0a 12 00 75 08 95 01 b1 02 06 a3 ff 09 01 85 74 15 00 25 01 0a 13 00 75 08 95 01 b1 02 06 a4 ff 09 01 85 90 09 08 b1 02 85 84 09 09 b1 02 85 20 09 0a b1 02 06 a5 ff 09 01 85 a2 09 0b 95 06 b1 02 85 a3 09 0c 95 03 b1 02 c0 09 22 a1 00 85 04 09 57 09 58 75 01 95 02 25 01 b1 02 95 06 b1 03 c0 INPUT(2)[INPUT] Field(0) Application(GenericDesktop.SystemControl) Usage(3) GenericDesktop.SystemPowerDown GenericDesktop.SystemSleep GenericDesktop.SystemWakeUp Logical Minimum(0) Logical Maximum(1) Report Size(1) Report Count(3) Report Offset(0) Flags( Variable Absolute ) INPUT(3)[INPUT] Field(0) Application(Consumer.0001) Usage(24) Consumer.0001 Consumer.0001 Consumer.0001 Consumer.0001 Consumer.0001 Consumer.00e2 Consumer.0001 Consumer.0001 Consumer.0001 Consumer.0001 Consumer.0001 Consumer.00b7 Consumer.0001 Consumer.0001 Consumer.0001 Consumer.0001 Consumer.0001 Consumer.0001 Consumer.0001 Consumer.006f Consumer.00ea Consumer.00e9 Consumer.0070 Consumer.0001 Logical Minimum(0) Logical Maximum(1) Report Size(1) Report Count(24) Report Offset(0) Flags( Variable Absolute ) OUTPUT(9)[OUTPUT] Field(0) Application(ffa0.0001) Usage(2) ffa0.0004 ffa0.0004 Logical Minimum(0) Logical Maximum(255) Report Size(8) Report Count(2) Report Offset(0) Flags( Variable Absolute ) FEATURE(84)[FEATURE] Field(0) Application(ffa0.0001) Usage(2) ffa1.0001 ffa1.0011 Logical Minimum(0) Logical Maximum(127) Report Size(8) Report Count(1) Report Offset(0) Flags( Variable Absolute ) FEATURE(100)[FEATURE] Field(0) Application(ffa0.0001) Usage(2) ffa2.0001 ffa2.0012 Logical Minimum(0) Logical Maximum(1) Report Size(8) Report Count(1) Report Offset(0) Flags( Variable Absolute ) FEATURE(116)[FEATURE] Field(0) Application(ffa0.0001) Usage(2) ffa3.0001 ffa3.0013 Logical Minimum(0) Logical Maximum(1) Report Size(8) Report Count(1) Report Offset(0) Flags( Variable Absolute ) FEATURE(144)[FEATURE] Field(0) Application(ffa0.0001) Usage(2) ffa4.0001 ffa4.0008 Logical Minimum(0) Logical Maximum(1) Report Size(8) Report Count(1) Report Offset(0) Flags( Variable Absolute ) FEATURE(132)[FEATURE] Field(0) Application(ffa0.0001) Usage(1) ffa4.0009 Logical Minimum(0) Logical Maximum(1) Report Size(8) Report Count(1) Report Offset(0) Flags( Variable Absolute ) FEATURE(32)[FEATURE] Field(0) Application(ffa0.0001) Usage(1) ffa4.000a Logical Minimum(0) Logical Maximum(1) Report Size(8) Report Count(1) Report Offset(0) Flags( Variable Absolute ) FEATURE(162)[FEATURE] Field(0) Application(ffa0.0001) Usage(6) ffa5.0001 ffa5.000b ffa5.000b ffa5.000b ffa5.000b ffa5.000b Logical Minimum(0) Logical Maximum(1) Report Size(8) Report Count(6) Report Offset(0) Flags( Variable Absolute ) FEATURE(163)[FEATURE] Field(0) Application(ffa0.0001) Usage(3) ffa5.000c ffa5.000c ffa5.000c Logical Minimum(0) Logical Maximum(1) Report Size(8) Report Count(3) Report Offset(0) Flags( Variable Absolute ) FEATURE(4)[FEATURE] Field(0) Physical(ffa5.0022) Usage(2) ffa5.0057 ffa5.0058 Logical Minimum(0) Logical Maximum(1) Report Size(1) Report Count(2) Report Offset(0) Flags( Variable Absolute ) GenericDesktop.SystemPowerDown ---> Key.Power GenericDesktop.SystemSleep ---> Key.Sleep GenericDesktop.SystemWakeUp ---> Key.WakeUp Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.00e2 ---> Key.Mute Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.00b7 ---> Key.StopCD Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.0001 ---> Key.Unknown Consumer.006f ---> Key.BrightnessUp Consumer.00ea ---> Key.VolumeDown Consumer.00e9 ---> Key.VolumeUp Consumer.0070 ---> Key.BrightnessDown Consumer.0001 ---> Key.Unknown ffa0.0004 ---> Sync.Report ffa0.0004 ---> Sync.Report 05 01 09 02 a1 01 85 02 09 01 a1 00 05 09 19 01 29 02 15 00 25 01 75 01 95 02 81 02 95 06 81 01 05 01 09 30 09 31 15 81 25 7f 75 08 95 02 81 06 c0 c0 05 01 09 02 a1 01 85 10 09 01 a1 00 05 09 19 01 29 03 15 00 25 01 75 01 95 03 81 02 95 05 81 01 05 01 09 30 09 31 15 81 25 7f 75 08 95 02 81 06 c0 c0 05 0d 09 05 a1 01 85 03 05 0d 09 22 a1 02 15 00 25 01 09 47 09 42 95 02 75 01 81 02 95 01 75 03 25 05 09 51 81 02 75 01 95 03 81 03 05 01 15 00 26 16 04 75 10 55 0e 65 11 09 30 35 00 46 67 03 95 01 81 02 46 d0 01 26 2d 02 09 31 81 02 c0 05 0d 09 22 a1 02 15 00 25 01 09 47 09 42 95 02 75 01 81 02 95 01 75 03 25 05 09 51 81 02 75 01 95 03 81 03 05 01 15 00 26 16 04 75 10 55 0e 65 11 09 30 35 00 46 67 03 95 01 81 02 46 d0 01 26 2d 02 09 31 81 02 c0 05 0d 09 22 a1 02 15 00 25 01 09 47 09 42 95 02 75 01 81 02 95 01 75 03 25 05 09 51 81 02 75 01 95 03 81 03 05 01 15 00 26 16 04 75 10 55 0e 65 11 09 30 35 00 46 67 03 95 01 81 02 46 d0 01 26 2d 02 09 31 81 02 c0 05 0d 09 22 a1 02 15 00 25 01 09 47 09 42 95 02 75 01 81 02 95 01 75 03 25 05 09 51 81 02 75 01 95 03 81 03 05 01 15 00 26 16 04 75 10 55 0e 65 11 09 30 35 00 46 67 03 95 01 81 02 46 d0 01 26 2d 02 09 31 81 02 c0 05 0d 09 22 a1 02 15 00 25 01 09 47 09 42 95 02 75 01 81 02 95 01 75 03 25 05 09 51 81 02 75 01 95 03 81 03 05 01 15 00 26 16 04 75 10 55 0e 65 11 09 30 35 00 46 67 03 95 01 81 02 46 d0 01 26 2d 02 09 31 81 02 c0 05 0d 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 05 0d 85 08 09 55 09 59 75 04 95 02 25 0f b1 02 85 0d 09 60 75 01 95 01 15 00 25 01 b1 02 95 07 b1 03 85 07 06 00 ff 09 c5 15 00 26 ff 00 75 08 96 00 01 b1 02 c0 05 0d 09 0e a1 01 85 04 09 22 a1 02 09 52 15 00 25 0a 75 08 95 01 b1 02 c0 09 22 a1 00 85 06 09 57 09 58 75 01 95 02 25 01 b1 02 95 06 b1 03 c0 c0 06 00 ff 09 01 a1 01 85 09 09 02 15 00 26 ff 00 75 08 95 14 91 02 85 0a 09 03 15 00 26 ff 00 75 08 95 14 91 02 85 0b 09 04 15 00 26 ff 00 75 08 95 3d 81 02 85 0c 09 05 15 00 26 ff 00 75 08 95 3d 81 02 85 0f 09 06 15 00 26 ff 00 75 08 95 03 b1 02 85 0e 09 07 15 00 26 ff 00 75 08 95 01 b1 02 c0 INPUT(2)[INPUT] Field(0) Physical(GenericDesktop.Pointer) Application(GenericDesktop.Mouse) Usage(2) Button.0001 Button.0002 Logical Minimum(0) Logical Maximum(1) Report Size(1) Report Count(2) Report Offset(0) Flags( Variable Absolute ) Field(1) Physical(GenericDesktop.Pointer) Application(GenericDesktop.Mouse) Usage(2) GenericDesktop.X GenericDesktop.Y Logical Minimum(-127) Logical Maximum(127) Report Size(8) Report Count(2) Report Offset(8) Flags( Variable Relative ) INPUT(16)[INPUT] Field(0) Physical(GenericDesktop.Pointer) Application(GenericDesktop.Mouse) Usage(3) Button.0001 Button.0002 Button.0003 Logical Minimum(0) Logical Maximum(1) Report Size(1) Report Count(3) Report Offset(0) Flags( Variable Absolute ) Field(1) Physical(GenericDesktop.Pointer) Application(GenericDesktop.Mouse) Usage(2) GenericDesktop.X GenericDesktop.Y Logical Minimum(-127) Logical Maximum(127) Report Size(8) Report Count(2) Report Offset(8) Flags( Variable Relative ) INPUT(3)[INPUT] Field(0) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(2) Digitizers.Confidence Digitizers.TipSwitch Logical Minimum(0) Logical Maximum(1) Report Size(1) Report Count(2) Report Offset(0) Flags( Variable Absolute ) Field(1) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) Digitizers.ContactID Logical Minimum(0) Logical Maximum(5) Report Size(3) Report Count(1) Report Offset(2) Flags( Variable Absolute ) Field(2) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) GenericDesktop.X Logical Minimum(0) Logical Maximum(1046) Physical Minimum(0) Physical Maximum(871) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(16) Report Count(1) Report Offset(8) Flags( Variable Absolute ) Field(3) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) GenericDesktop.Y Logical Minimum(0) Logical Maximum(557) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(16) Report Count(1) Report Offset(24) Flags( Variable Absolute ) Field(4) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(2) Digitizers.Confidence Digitizers.TipSwitch Logical Minimum(0) Logical Maximum(1) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(1) Report Count(2) Report Offset(40) Flags( Variable Absolute ) Field(5) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) Digitizers.ContactID Logical Minimum(0) Logical Maximum(5) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(3) Report Count(1) Report Offset(42) Flags( Variable Absolute ) Field(6) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) GenericDesktop.X Logical Minimum(0) Logical Maximum(1046) Physical Minimum(0) Physical Maximum(871) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(16) Report Count(1) Report Offset(48) Flags( Variable Absolute ) Field(7) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) GenericDesktop.Y Logical Minimum(0) Logical Maximum(557) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(16) Report Count(1) Report Offset(64) Flags( Variable Absolute ) Field(8) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(2) Digitizers.Confidence Digitizers.TipSwitch Logical Minimum(0) Logical Maximum(1) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(1) Report Count(2) Report Offset(80) Flags( Variable Absolute ) Field(9) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) Digitizers.ContactID Logical Minimum(0) Logical Maximum(5) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(3) Report Count(1) Report Offset(82) Flags( Variable Absolute ) Field(10) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) GenericDesktop.X Logical Minimum(0) Logical Maximum(1046) Physical Minimum(0) Physical Maximum(871) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(16) Report Count(1) Report Offset(88) Flags( Variable Absolute ) Field(11) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) GenericDesktop.Y Logical Minimum(0) Logical Maximum(557) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(16) Report Count(1) Report Offset(104) Flags( Variable Absolute ) Field(12) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(2) Digitizers.Confidence Digitizers.TipSwitch Logical Minimum(0) Logical Maximum(1) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(1) Report Count(2) Report Offset(120) Flags( Variable Absolute ) Field(13) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) Digitizers.ContactID Logical Minimum(0) Logical Maximum(5) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(3) Report Count(1) Report Offset(122) Flags( Variable Absolute ) Field(14) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) GenericDesktop.X Logical Minimum(0) Logical Maximum(1046) Physical Minimum(0) Physical Maximum(871) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(16) Report Count(1) Report Offset(128) Flags( Variable Absolute ) Field(15) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) GenericDesktop.Y Logical Minimum(0) Logical Maximum(557) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(16) Report Count(1) Report Offset(144) Flags( Variable Absolute ) Field(16) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(2) Digitizers.Confidence Digitizers.TipSwitch Logical Minimum(0) Logical Maximum(1) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(1) Report Count(2) Report Offset(160) Flags( Variable Absolute ) Field(17) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) Digitizers.ContactID Logical Minimum(0) Logical Maximum(5) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(3) Report Count(1) Report Offset(162) Flags( Variable Absolute ) Field(18) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) GenericDesktop.X Logical Minimum(0) Logical Maximum(1046) Physical Minimum(0) Physical Maximum(871) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(16) Report Count(1) Report Offset(168) Flags( Variable Absolute ) Field(19) Logical(Digitizers.Finger) Application(Digitizers.TouchPad) Usage(1) GenericDesktop.Y Logical Minimum(0) Logical Maximum(557) Physical Minimum(0) Physical Maximum(464) Unit Exponent(-2) Unit(SI Linear : Centimeter) Report Size(16) Report Count(1) Report Offset(184) Flags( Variable Absolute ) Field(20) Application(Digitizers.TouchPad) Usage(1) Digitizers.0056 Logical Minimum(0) Logical Maximum(65535) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(16) Report Count(1) Report Offset(200) Flags( Variable Absolute ) Field(21) Application(Digitizers.TouchPad) Usage(1) Digitizers.ContactCount Logical Minimum(0) Logical Maximum(127) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(8) Report Count(1) Report Offset(216) Flags( Variable Absolute ) Field(22) Application(Digitizers.TouchPad) Usage(1) Button.0001 Logical Minimum(0) Logical Maximum(1) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(1) Report Count(1) Report Offset(224) Flags( Variable Absolute ) INPUT(11)[INPUT] Field(0) Application(ff00.0001) Usage(61) ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 ff00.0004 Logical Minimum(0) Logical Maximum(255) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(8) Report Count(61) Report Offset(0) Flags( Variable Absolute ) INPUT(12)[INPUT] Field(0) Application(ff00.0001) Usage(61) ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 ff00.0005 Logical Minimum(0) Logical Maximum(255) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(8) Report Count(61) Report Offset(0) Flags( Variable Absolute ) OUTPUT(9)[OUTPUT] Field(0) Application(ff00.0001) Usage(20) ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 ff00.0002 Logical Minimum(0) Logical Maximum(255) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(8) Report Count(20) Report Offset(0) Flags( Variable Absolute ) OUTPUT(10)[OUTPUT] Field(0) Application(ff00.0001) Usage(20) ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 ff00.0003 Logical Minimum(0) Logical Maximum(255) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(8) Report Count(20) Report Offset(0) Flags( Variable Absolute ) FEATURE(8)[FEATURE] Field(0) Application(Digitizers.TouchPad) Usage(2) Digitizers.ContactMaximumNumber Digitizers.ButtonType Logical Minimum(0) Logical Maximum(15) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(4) Report Count(2) Report Offset(0) Flags( Variable Absolute ) FEATURE(13)[FEATURE] Field(0) Application(Digitizers.TouchPad) Usage(1) Digitizers.0060 Logical Minimum(0) Logical Maximum(1) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(1) Report Count(1) Report Offset(0) Flags( Variable Absolute ) FEATURE(7)[FEATURE] Field(0) Application(Digitizers.TouchPad) Usage(256) ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 ff00.00c5 Logical Minimum(0) Logical Maximum(255) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(8) Report Count(256) Report Offset(0) Flags( Variable Absolute ) FEATURE(4)[FEATURE] Field(0) Logical(Digitizers.Finger) Application(Digitizers.DeviceConfiguration) Usage(1) Digitizers.InputMode Logical Minimum(0) Logical Maximum(10) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(8) Report Count(1) Report Offset(0) Flags( Variable Absolute ) FEATURE(6)[FEATURE] Field(0) Physical(Digitizers.Finger) Application(Digitizers.DeviceConfiguration) Usage(2) Digitizers.0057 Digitizers.0058 Logical Minimum(0) Logical Maximum(1) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(1) Report Count(2) Report Offset(0) Flags( Variable Absolute ) FEATURE(15)[FEATURE] Field(0) Application(ff00.0001) Usage(3) ff00.0006 ff00.0006 ff00.0006 Logical Minimum(0) Logical Maximum(255) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(8) Report Count(3) Report Offset(0) Flags( Variable Absolute ) FEATURE(14)[FEATURE] Field(0) Application(ff00.0001) Usage(1) ff00.0007 Logical Minimum(0) Logical Maximum(255) Physical Minimum(0) Physical Maximum(65535) Unit Exponent(-4) Unit(SI Linear : Seconds) Report Size(8) Report Count(1) Report Offset(0) Flags( Variable Absolute ) Button.0001 ---> Key.LeftBtn Button.0002 ---> Key.RightBtn GenericDesktop.X ---> Relative.X GenericDesktop.Y ---> Relative.Y Button.0001 ---> Key.LeftBtn Button.0002 ---> Key.RightBtn Button.0003 ---> Key.MiddleBtn GenericDesktop.X ---> Relative.X GenericDesktop.Y ---> Relative.Y Digitizers.Confidence ---> Sync.Report Digitizers.TipSwitch ---> Sync.Report Digitizers.ContactID ---> Sync.Report GenericDesktop.X ---> Sync.Report GenericDesktop.Y ---> Sync.Report Digitizers.Confidence ---> Sync.Report Digitizers.TipSwitch ---> Sync.Report Digitizers.ContactID ---> Sync.Report GenericDesktop.X ---> Sync.Report GenericDesktop.Y ---> Sync.Report Digitizers.Confidence ---> Sync.Report Digitizers.TipSwitch ---> Sync.Report Digitizers.ContactID ---> Sync.Report GenericDesktop.X ---> Sync.Report GenericDesktop.Y ---> Sync.Report Digitizers.Confidence ---> Sync.Report Digitizers.TipSwitch ---> Sync.Report Digitizers.ContactID ---> Sync.Report GenericDesktop.X ---> Sync.Report GenericDesktop.Y ---> Sync.Report Digitizers.Confidence ---> Sync.Report Digitizers.TipSwitch ---> Sync.Report Digitizers.ContactID ---> Sync.Report GenericDesktop.X ---> Sync.Report GenericDesktop.Y ---> Sync.Report Digitizers.0056 ---> Sync.Report Digitizers.ContactCount ---> Sync.Report Button.0001 ---> Key.LeftBtn ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0004 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0005 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0002 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report ff00.0003 ---> Sync.Report
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature