1HID-REPLAY(1) HID-REPLAY(1)
2
3
4
6 hid-replay - HID Input device replay through uhid.
7
9 hid-replay [OPTIONS] [FILENAME]
10
12 -i, --interactive
13 interactive mode: This is the default mode. The device is created
14 and the program wait for the user to hit enter. Once the enter key
15 is pressed the whole events sequence in FILENAME is played in real
16 time. Once it is done, the program loops back to the wait of the
17 user keypress on the enter key.
18
19 Hit *Ctrl-C* to stop the replay.
20
21 -1, --one
22 one shot mode: the device is created and then the events are
23 replayed once in real time. The process exists at the end of the
24 replay.
25
26 -s, --sleep X: sleep X seconds once the device is created before next
27 step. Useful in conjunction with --one.
28
30 hid-replay requires the module uhid to be loaded (present in kernels
31 3.6+).
32
33 If this kernel module is loaded, hid-replay allows the user to create
34 virtual HID devices as if they were physically plugged to the system.
35 Then, the user has the possibility to replay the previously recorded
36 HID events that are therefore handled by the right HID kernel module.
37
38 hid-replay needs to be able to write to /dev/uhid; in most cases this
39 means it must be run as root.
40
41 hid-recorder and hid-replay are used to debug kernel issues with HID
42 input devices.
43
45 The input file of hid-replay has the following syntax:
46
47 • # comments
48
49 • D: tell which device we are currently working with
50
51 • R: size dump_of_report_descriptor_in_hexadecimal
52
53 • N: common_name_of_the_device
54
55 • P: physical_path
56
57 • I: bus vendor_id product_id
58
59 • E: timestamp size report_in_hexadecimal
60
61 Any other starting characters are just ignored.
62
64 hid-replay is a very low level events injector. To have the virtual
65 device handled by the right HID kernel module, hid-replay fakes that
66 the device is on the original bus (USB, I2C or BT). Thus, if the kernel
67 module in use has to write back to the device the kernel may oops if
68 the module is trying to direclty talk to the physical layer.
69
70 Be sure to use this program with friendly HID modules that rely only on
71 the generic hid callbacks.
72
74 hid-replay returns EXIT_FAILURE on error.
75
77 hid-recorder(1)
78
80 Copyright 2012, Benjamin Tissoires.
81 Copyright 2012, Red Hat, Inc.
82
84 Benjamin Tissoires <benjamin.tissoires@redhat.com>
85
86
87
88 07/20/2023 HID-REPLAY(1)