title: How do I intercept messages from a USB device on Linux?
body: <p>I have a popular drawing tablet that I connect to my PC with USB. Once connected, the tablet detects hand movements and manipulates the pointer accordingly. Somewhere, the tablet is transmitting this data to my computer.</p>
  
  <p>My goal is to intercept these transmissions and manipulate the mouse after I process the data. The buzzwords I have found are: <strong>device drivers</strong> and <strong>HID</strong>, but I haven't been able to piece together much more than that.</p>
  
  <p>Assuming this is possible, I have a few questions:</p>
  
  <ol>
  <li>How is this done if the data format is known?</li>
  <li>How is this done if the data format is unknown/proprietary?</li>
  </ol>
  
  <p>My computer is running Ubuntu (but answers related to any form of a Linux OS are greatly appreciated!).</p>
  
  <hr>
  
  <p>Note: This <a href="https://stackoverflow.com/questions/1844509/how-to-intercept-and-translate-usb-events">question</a> is similar but intended for Windows.</p>