~/sources »»» sudo ./hid-recorder
# Available devices:
# /dev/hidraw0: Samson Technologies Samson Meteor Mic
# /dev/hidraw1: UGTABLET Deco 01 V3
# /dev/hidraw2: UGTABLET Deco 01 V3
# /dev/hidraw3: UGTABLET Deco 01 V3
# /dev/hidraw4: Elgato Cam Link 4K
# /dev/hidraw5: Dell KB216 Wired Keyboard
# /dev/hidraw6: Logitech USB Receiver
# /dev/hidraw7: Logitech USB Receiver
# /dev/hidraw8: Dell KB216 Wired Keyboard
# /dev/hidraw9: HID 04d9:1203
# /dev/hidraw10: HID 04d9:1203
# /dev/hidraw11: Logitech B330/M330/M3
# Select the device event number [0-9]: 1
# UGTABLET Deco 01 V3
# Report descriptor length: 68 bytes
# 0x05, 0x01, // Usage Page (Generic Desktop) 0
# 0x09, 0x07, // Usage (Keypad) 2
# 0xa1, 0x01, // Collection (Application) 4
# ┅ 0x85, 0x06, // Report ID (6) 6
# 0x95, 0x01, // Report Count (1) 8
# 0x75, 0x08, // Report Size (8) 10
# 0x05, 0x0d, // Usage Page (Digitizers) 12
# 0x09, 0x39, // Usage (Tablet Function Keys) 14
# 0xa1, 0x00, // Collection (Physical) 16
# 0x05, 0x09, // Usage Page (Button) 18
# 0x19, 0x01, // UsageMinimum (1) 20
# 0x29, 0x08, // UsageMaximum (8) 22
# 0x15, 0x00, // Logical Minimum (0) 24
# 0x25, 0x01, // Logical Maximum (1) 26
# 0x95, 0x08, // Report Count (8) 28
# 0x75, 0x01, // Report Size (1) 30
# ┇ 0x81, 0x02, // Input (Data,Var,Abs) 32
# 0x05, 0x0d, // Usage Page (Digitizers) 34
# 0x09, 0x44, // Usage (Barrel Switch) 36
# 0x95, 0x01, // Report Count (1) 38
# 0x75, 0x01, // Report Size (1) 40
# ┇ 0x81, 0x02, // Input (Data,Var,Abs) 42
# 0x95, 0x07, // Report Count (7) 44
# ┇ 0x81, 0x01, // Input (Cnst,Arr,Abs) 46
# 0x05, 0x01, // Usage Page (Generic Desktop) 48
# 0x09, 0x30, // Usage (X) 50
# 0x09, 0x31, // Usage (Y) 52
# 0x95, 0x02, // Report Count (2) 54
# 0x75, 0x08, // Report Size (8) 56
# ┇ 0x81, 0x02, // Input (Data,Var,Abs) 58
# 0x95, 0x03, // Report Count (3) 60
# 0x75, 0x08, // Report Size (8) 62
# ┇ 0x81, 0x01, // Input (Cnst,Arr,Abs) 64
# 0xc0, // End Collection 66
# 0xc0, // End Collection 67
R: 68 05 01 09 07 a1 01 85 06 95 01 75 08 05 0d 09 39 a1 00 05 09 19 01 29 08 15 00 25 01 95 08 75 01 81 02 05 0d 09 44 95 01 75 01 81 02 95 07 81 01 05 01 09 30 09 31 95 02 75 08 81 02 95 03 75 08 81 01 c0 c0
N: UGTABLET Deco 01 V3
I: 3 28bd 947
# Report descriptor:
# ------- Input Report -------
# ▃ Report ID: 6
# ▃ | Report size: 64 bits
# ▃ Bit: 8 Usage: 0009/0001: Button / Button 1 Logical Range: 0..=1
# ▃ Bit: 9 Usage: 0009/0002: Button / Button 2 Logical Range: 0..=1
# ▃ Bit: 10 Usage: 0009/0003: Button / Button 3 Logical Range: 0..=1
# ▃ Bit: 11 Usage: 0009/0004: Button / Button 4 Logical Range: 0..=1
# ▃ Bit: 12 Usage: 0009/0005: Button / Button 5 Logical Range: 0..=1
# ▃ Bit: 13 Usage: 0009/0006: Button / Button 6 Logical Range: 0..=1
# ▃ Bit: 14 Usage: 0009/0007: Button / Button 7 Logical Range: 0..=1
# ▃ Bit: 15 Usage: 0009/0008: Button / Button 8 Logical Range: 0..=1
# ▃ Bit: 16 Usage: 000d/0044: Digitizers / Barrel Switch Logical Range: 0..=1
# ▃ Bits: 17..=23 ######### Padding
# ▃ Bits: 24..=31 Usage: 0001/0030: Generic Desktop / X Logical Range: 0..=1
# ▃ Bits: 32..=39 Usage: 0001/0031: Generic Desktop / Y Logical Range: 0..=1
# ▃ Bits: 40..=63 ######### Padding
##############################################################################
# Recorded events below in format:
# E: <seconds>.<microseconds> <length-in-bytes> [bytes ...]
#
holding button 1, then 2, then 3, then release 3, then 2, then 1:
# Current time: 17:05:43
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000000.000021 24 06 00 05 00 00 00 00 00
E: 000000.000019 8 06 01 05 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 8 |Y: 0 |<24 bits padding>
B: 000000.772485 24 06 00 05 08 00 00 00 00
E: 000000.772484 8 06 01 05 08 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 8 |Y: 0 |<24 bits padding>
B: 000001.710542 24 06 04 05 08 00 00 00 00
E: 000001.710540 8 06 00 05 08 00 00 00 00
# Current time: 17:05:45
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 8 |Y: 0 |<24 bits padding>
B: 000002.014699 24 06 00 05 08 00 00 00 00
E: 000002.014697 8 06 01 05 08 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000003.032725 24 06 00 05 00 00 00 00 00
E: 000003.032723 8 06 01 05 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 0 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000003.830664 24 06 00 00 00 00 00 00 00
E: 000003.830663 8 06 00 00 00 00 00 00 00
Hold button 1 , and click on all button from 2 to 8 while holding it:
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000048.429376 24 06 00 05 00 00 00 00 00
E: 000048.429374 8 06 01 05 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 8 |Y: 0 |<24 bits padding>
B: 000049.919530 24 06 00 05 08 00 00 00 00
E: 000049.919528 8 06 01 05 08 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000050.005102 24 06 00 05 00 00 00 00 00
E: 000050.005101 8 06 01 05 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000050.469581 24 06 04 05 00 00 00 00 00
E: 000050.469580 8 06 00 05 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000050.555231 24 06 00 05 00 00 00 00 00
E: 000050.555229 8 06 01 05 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 44 |Y: 0 |<24 bits padding>
B: 000050.947720 24 06 00 05 2c 00 00 00 00
E: 000050.947718 8 06 01 05 2c 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000051.033633 24 06 00 05 00 00 00 00 00
E: 000051.033632 8 06 01 05 00 00 00 00 00
# Current time: 17:06:35
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 22 |Y: 0 |<24 bits padding>
B: 000051.433684 24 06 01 05 16 00 00 00 00
E: 000051.433682 8 06 00 05 16 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000051.519681 24 06 00 05 00 00 00 00 00
E: 000051.519679 8 06 01 05 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 29 |Y: 0 |<24 bits padding>
B: 000051.943679 24 06 01 05 1d 00 00 00 00
E: 000051.943678 8 06 00 05 1d 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000052.011395 24 06 00 05 00 00 00 00 00
E: 000052.011393 8 06 01 05 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 87 |Y: 0 |<24 bits padding>
B: 000052.467851 24 06 01 05 57 00 00 00 00
E: 000052.467850 8 06 00 05 57 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000052.527532 24 06 00 05 00 00 00 00 00
E: 000052.527531 8 06 01 05 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 86 |Y: 0 |<24 bits padding>
B: 000052.995482 24 06 01 05 56 00 00 00 00
E: 000052.995481 8 06 00 05 56 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000053.057846 24 06 00 05 00 00 00 00 00
E: 000053.057845 8 06 01 05 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 0 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000054.411655 24 06 00 00 00 00 00 00 00
E: 000054.411654 8 06 00 00 00 00 00 00 00
Hold button 1, then 2, then 3, then 4, then release 1, 2 , 3 and 4:
# Current time: 17:07:25
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000102.209003 24 06 00 05 00 00 00 00 00
E: 000102.209001 8 06 01 05 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 1 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 8 |Y: 0 |<24 bits padding>
B: 000102.834895 24 06 00 05 08 00 00 00 00
E: 000102.834893 8 06 01 05 08 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 8 |Y: 0 |<24 bits padding>
B: 000103.473110 24 06 04 05 08 00 00 00 00
E: 000103.473108 8 06 00 05 08 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 1 |<7 bits padding> |X: 8 |Y: 44 |<24 bits padding>
B: 000104.174656 24 06 04 05 08 2c 00 00 00
E: 000104.174654 8 06 00 05 08 2c 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 0 |<7 bits padding> |X: 44 |Y: 0 |<24 bits padding>
B: 000104.970840 24 06 04 08 2c 00 00 00 00
E: 000104.970838 8 06 00 08 2c 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 0 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000105.649329 24 06 04 2c 00 00 00 00 00
E: 000105.649328 8 06 00 2c 00 00 00 00 00
# Current time: 17:07:30
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 1 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 0 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000106.345419 24 06 00 2c 00 00 00 00 00
E: 000106.345417 8 06 08 2c 00 00 00 00 00
# ▃ Report ID: 6 /
# ▃ Button 1: 0 |Button 2: 0 |Button 3: 0 |Button 4: 0 |Button 5: 0 |Button 6: 0 |Button 7: 0 |Button 8: 0 |Barrel Switch: 0 |<7 bits padding> |X: 0 |Y: 0 |<24 bits padding>
B: 000107.061382 24 06 00 00 00 00 00 00 00
E: 000107.061381 8 06 00 00 00 00 00 00 00
^C
~/sources »»»