[sane-devel] reverse engineering advice.
Mbosowo I Sampson
msampson@ic.sunysb.edu
Mon, 24 Jan 2005 13:59:19 -0500 (EST)
I'm in the process of sifting through USBSnoop generated logs for the HP
3970, trying to decipher what's going on. I've hit a little bit of
a wall. Reading the code for the hp5400 driver along with the USBSnoop
logs posted at http://home.kabelfoon.nl/~bertrik/plugin_hp5470c.log
has really helped a lot. I would like to start writing my driver but I
need some advice.
This is the log generated from my scanner after its plugged in:
http://www.ic.sunysb.edu/Stu/msampson/usbsnoop_pluggedin2.log
The first 4 URB transfers are easy, querying the device, choosing a
configuration, etc... But after that it gets a little murky. I'm
looking at the packets going down, and coming up, and I just have no way
to telling what's doing what. I wanted to use usb-robot to send commands
one at a time, but the program segfaults on my machine (debian sarge
2.6.10)
I have the USB1.1 spec handy, so I understand the structure of the
packets, but how do you discern what the packets are doing? For example,
Which of those packets turns on the lamp? Which ones controls the stepper
motors? Should I just start from the top of the log and send the commands
myself to see what happens? I'm really itching to get this thing working.
I would love to disassemble the windows driver, but I have no experience
doing this. I was hoping to tap the collective experience of the group
before I tried that.
Any help would be much appreciated.
Mboso