I'm trying to make a Mac driver for an electronic drum/xbox controller ION Drum Rocker. Using usbmon/usbdump, I can get traffic on a normal USB keyboard just to see if it works. But there's not a single interrupt or message from the drum. I'm guessing it needs some control request to 'turn on'. Does that make sense? Should I use PyUSB to send random messages to it until it does something? It has 4 interfaces with 2, 4, 1, 0 endpoints.
Asked
Active
Viewed 999 times
1 Answers
3
It would make your life a lot easier if you can monitor USB on a working platform--typically a Windows PC. Then you can see what messages are used to set it up, and what data comes back from it.
See "Learning how to reverse engineer a Windows USB driver: the Luxeed LED keyboard" which describes the process Jesper Thomschütz went through. In his case it was to develop a Linux driver, but much of the methodology would apply in your situation for Mac, too.
A simpler method (using no VM) might be to just run a USB sniffer program on the working platform. E.g. for Windows:
- Snoopy Pro (free but not necessarily easy to use)
- HHD Device Monitoring Studio (USB) (nicer interface)

Craig McQueen
- 41,871
- 30
- 130
- 181
-
haven't found a decent usb sniffer for mac yet... does that imply I need to vm linux and then vm into windows? Inception style? – xster Nov 21 '11 at 01:22
-
I've added a couple of links for an alternative method, using a USB sniffer directly on the Windows platform. – Craig McQueen Nov 21 '11 at 02:41