PDA

View Full Version : Has anyone ever tried to read the USB Specification?


rous
12-22-2004, 01:38 PM
It's absolutely awful, but the Apple Documents insist on pointing me towards them--"For further information, consult the Universial Serial Bus Specification blah, blah." Anyway, I'm trying to fool this application into believing a generic USB device is actually a dongle. To do this, I need to isolate and replace the dongles device descriptors (as well as some other stuff) with the matching descriptors from my generic device. I have found the dongles vendorID, productID, IOUSBDeviceUserClientTypeID, and IOUSBDeviceInterfaceID, however there is one additional index, which I can't figure out...any ideas?

rous

PS-I know I have not explained this well, however, I'm in a hurry right now...I'll write a better one when I return later today.

kw
12-22-2004, 10:53 PM
I have to admit I'm entirely lost on this one ;)
None of the areas are things I know about, maybe someone else has ideas ;)

-kw

rous
12-24-2004, 02:24 AM
Apple calls its object-oriented (C++) framework for developing device drivers, appropriately, the I/O Kit. The I/O Kit API is powerful, it abstracts and reveals the capabilities of the kernel, as well as much of the underlying system hardware, to any application that calls it. Towards that end, all device drivers, or at least the ones defined in the I/O Kit classes, exhibit very similar basic mechanics.

To find a USB device, you must first identify the IOUSBObject that represents the device in the I/O Registry. This involves using keys defined in the Universal Serial Bus Common Class Specification to create a dictionary, which you may then match to the specific device you are looking for.

So, I’m trying to replace the dongle dictionary with, say, my printer’s dictionary. The thought being that when the application checks for the presence of the dongle, it will find my printer and return true. Keep in mind, right now, I’m simply tring to get past the initial check.

I was wondering if anyone was familiar with USB devices because I’m having trouble finding the last key.

Thanks,

rous

mortalis
12-27-2004, 03:24 AM
You might want to check RFCs

http://www.faqs.org/rfcs/

I searched for USB and found allot of good information. Good luck and have fun!