[Pythonmac-SIG] Zope py2app, some progress

Roger Binns rogerb at rogerbinns.com
Thu Feb 10 09:57:00 CET 2005


> Probably because it doesn't have drivers for them.  If there's no 
> matching driver, it won't pull up a useful nub to stick on it.

The right thing happens in the end.  There is no need for drivers
on some interfaces, and they must be used on others (eg ones that
implement the USB modem protocol or the various USB to serial chips).

> A good way to look at this tree is the Mr. Registry app that is one of 
> the targets in /Developer/IOKit/firewire/FWOffice -- despite its name, 
> it lets you look at the whole tree, not just IOFireWire.

That makes it clearer.  It is still not remotely like two hours work.
(It may be for you however).  I'm not going to implement all this
but will point anyone else who does want at it.  (The return on
having to learn all this IOKit stuff, Objective C and how to map
Objective C into Python is way too low.)

> I'd have to do a lot of reading up on that to see how to get dumps of 
> USB traffic.  

There is a USB Prober under /Developer/Applications/Utilities
(BTW I have found everything you mentioned under a different path
than you said so I don't know if you were typing them from memory
or have a different dev kit).

> I could run the BlackBerry Desktop via VirtualPC (or on a 
> real PC) to figure out how the modem stuff works, the rest I could 
> probably get by reverse engineering PocketMac.

Email me the device dump of the device from the USB Prober.  You'll
probably want to do that on the bitpim-devel list.

Full Speed device @ 3 (0x5B230000): .....   Communication device: "Qualcomm CDMA Technologies MSM"
    Device Descriptor   
        Descriptor Version Number:   0x0101
        Device Class:   2   (Communication)
        Device Subclass:   0
        Device Protocol:   0
        Device MaxPacketSize:   16
        Device VendorID/ProductID:   0x1004/0x6000   (LG Electronics Inc.)
        Device Version Number:   0x0000
        Number of Configurations:   1
        Manufacturer String:   1 "LG CDMA USB Modem\000\000\000\000\000"
        Product String:   2 "Qualcomm CDMA Technologies MSM"
        Serial Number String:   0 (none)
    Configuration Descriptor   
        Total Length of Descriptor:   90
        Number of Interfaces:   3
        Configuration Value:   1
        Attributes:   0xE0 (self-powered, remote wakeup)
        MaxPower:   100 ma
        Interface #0 - Communications-Control   
            Alternate Setting   0
            Number of Endpoints   1
            Interface Class:   2   (Communications-Control)
            Interface Subclass;   2
            Interface Protocol   1
            Comm Class Header Functional Descriptor   
                Raw Descriptor (hex)   0000: 05 24 00 09 01 
            Comm Class Call Management Functional Descriptor   
                Raw Descriptor (hex)   0000: 05 24 01 03 01 
            Comm Class Abstract Control Management Functional Descriptor   
                Raw Descriptor (hex)   0000: 04 24 02 0F 
            Comm Class Union Functional Descriptor   
                Raw Descriptor (hex)   0000: 05 24 06 00 01 
            Endpoint 0x81 - Interrupt Input   
                Attributes:   0x81  (IN)
                Attributes:   0x03  (Interrupt)
                Max Packet Size:   16
                Polling Interval:   32 ms
        Interface #1 - Communications-Data/Unknown Comm Class Model   
            Alternate Setting   0
            Number of Endpoints   2
            Interface Class:   10   (Communications-Data)
            Interface Subclass;   0   (Unknown Comm Class Model)
            Interface Protocol   0
            Endpoint 0x8A - Bulk Input   
                Attributes:   0x8A  (IN)
                Attributes:   0x02  (Bulk)
                Max Packet Size:   64
                Polling Interval:   0 ms
            Endpoint 0x0B - Bulk Output   
                Attributes:   0x0B  (OUT)
                Attributes:   0x02  (Bulk)
                Max Packet Size:   64
                Polling Interval:   0 ms
        Interface #2 - Vendor-specific   
            Alternate Setting   0
            Number of Endpoints   2
            Interface Class:   255   (Vendor-specific)
            Interface Subclass;   255   (Vendor-specific)
            Interface Protocol   0
            Endpoint 0x83 - Bulk Input   
                Attributes:   0x83  (IN)
                Attributes:   0x02  (Bulk)
                Max Packet Size:   64
                Polling Interval:   0 ms
            Endpoint 0x06 - Bulk Output   
                Attributes:   0x06  (OUT)
                Attributes:   0x02  (Bulk)
                Max Packet Size:   64
                Polling Interval:   0 ms

Roger


More information about the Pythonmac-SIG mailing list