I just recently had to read this to understand enough to implement a USB device on a PIC32, but there's still some more clarifying info I'd like to see.<p>For example, there's almost no information anywhere online on how the polling is supposed to work for noticing interrupt requests from the device. Is this typically handled at the OS level and the application writer does not mess with it? I still don't know.<p>The reason I ask is because while trying to implement USB on my PIC32, I observed USB traffic via wireshark of another third party custom HID device that I was trying to mimic. This device, once you pressed a button on it, wireshark would show INTERRUPT IN requests coming from the device, without any programs open. However with my own USB device implementation, I couldn't get this to happen, no matter how hard I tried. I just happen to try opening the USB device from an application and trying to read from it, at which point my interrupt IN transfers magically showed up in wireshark and starting working. I still don't understand why that's necessary when my third-party device can do it all by itself.