man > usbhid-dump(8)

usbhid-dump(8)                           Linux USB Utilities                          usbhid-dump(8)



NAME
       usbhid-dump - dump USB HID device report descriptors and streams

SYNOPSIS
       usbhid-dump [OPTION]...

DESCRIPTION
       usbhid-dump  uses libusb to dump report descriptors and streams from HID (human interface de‐
       vice) interfaces of USB devices.  By default, it dumps HID interfaces of  all  connected  USB
       devices, but could be limited to a subset of them, or to a single interface, using options.

       NOTE:  usbhid-dump  detaches kernel drivers from the interfaces it dumps and uses them exclu‐
       sively, so no other program receives the input in the meantime.  The report descriptor  dump‐
       ing  is instantaneous, but the stream dumping continues until terminated with SIGINT (^C from
       the terminal) or a timeout expires.

       If you accidentally start dumping a stream from the USB keyboard you use to control the  ter‐
       minal,  the  system  will stop receiving the input and you won't be able to terminate usbhid-
       dump. Just stop your input and wait until the timeout expires. The stream dumping will  stop,
       the keyboard will be reattached to the kernel driver and you will regain control.

       The default stream dumping timeout is 60 seconds and could be changed with the -t option.

OPTIONS
       -h, --help
              Output a help message and exit.

       -v, --version
              Output version information and exit.

       -s, -a, --address=bus[:dev]
              Limit  interfaces by bus number and device address. Both 1-255, decimal.  Zeroes match
              any bus or device.

       -d, -m, --model=vid[:pid]
              Limit interfaces by device vendor and product IDs. Both 1-FFFF,  hexadecimal.   Zeroes
              match any vendor or product.

       -i, --interface=NUMBER
              Limit interfaces by number (0-254), decimal. 255 matches any interface.

       -e, --entity=STRING
              The  entity to dump: either "descriptor", "stream" or "all". The value can be abbrevi‐
              ated down to one letter. The default is "descriptor".

       -t, --stream-timeout=NUMBER
              Stream interrupt transfer timeout, ms. Zero means infinity. The default is  60000  (60
              seconds).

       -p, --stream-paused
              Start with the stream dump output paused.

       -f, --stream-feedback
              Enable stream dumping feedback: print a dot to stderr for every transfer dumped.

SIGNALS
       USR1/USR2
              Pause/resume stream dump output.

OUTPUT FORMAT
       usbhid-dump outputs dumps in chunks. Each chunk is separated by an empty line and starts with
       the following header line:

       BUS:DEVICE:INTERFACE:ENTITY TIMESTAMP

       Here, BUS, DEVICE and INTERFACE are bus, device and interface numbers respectively. ENTITY is
       either "DESCRIPTOR" or "STREAM". TIMESTAMP is timestamp in seconds since epoch.

       After  the  header the actual dump data follows as hex bytes. A descriptor chunk includes the
       whole report descriptor. Every stream chunk includes a whole report, usually, but if a report
       is bigger than endpoint's wMaxPacketSize, it will span several chunks.

EXAMPLES
       Dump report descriptor for a device with address 3 on bus number 2:
              usbhid-dump -a 2:3


       Dump report stream for a device with vendor ID 0x5543 and product ID 0x0005:
              usbhid-dump -m 5543:0005 -es


       Dump report descriptor from interface 1 of a device with vendor ID 0x5543:
              usbhid-dump -m 5543 -i 1 -ed


       Dump  report  streams from all HID interfaces of all USB devices (caution: you will lose con‐
       trol over the terminal if you use USB keyboard):
              usbhid-dump -es


AUTHOR
       Nikolai Kondrashov <spbnick AT gmail.com>



usbutils-014                                February 2012                             usbhid-dump(8)
usbhid-dump(8)
NAME SYNOPSIS DESCRIPTION OPTIONS
-h, --help -v, --version -s, -a, --address=bus[:dev] -d, -m, --model=vid[:pid] -i, --interface=NUMBER -e, --entity=STRING -t, --stream-timeout=NUMBER -p, --stream-paused -f, --stream-feedback
SIGNALS OUTPUT FORMAT EXAMPLES AUTHOR

Generated by phpman v4.9.27 · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-07-18 20:44 @2600:1f28:365:80b0:b91e:58eb:6587:15c8
CrawledBy CCBot/2.0 (https://commoncrawl.org/faq/)
Valid XHTML 1.0 Transitional!Valid CSS!

^_top_^