My brother asked me "I have a USB label printer with a button. When I press the button, I want something on the computer to happen. What can I do?"
Answer: Build a USB sniffer. I just did on SUSE Linux 12.1. It works:
# yast -i wireshark # modprobe usbmon # lsusb [...] Bus 002 Device 004: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC # wireshark
Now select USB Bus 2 -> Capture -> Start and you see what's on the wire!