On Feb 10, 2005, at 2:51 AM, Roger Binns wrote:
Obviously not people familiar with http://developer.apple.com/ :)
Actually Steven Palm who did most of the original got some changes I still don't understand into libusb to make it work correctly on Mac. There is deep voodoo involved since some of the phones are actually composite devices and MacOS only binds drivers to some of the interfaces while BitPim needed to access the other interfaces.
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.
Well, if you take a look at the example, it's really straight-forward and you can come up with something specific to your app in just an hour or two.
I have looked through the API and I have looked in the Explorer. I can find serial/modem ports and I can find USB devices. I still don't see where they are linked.
For example the device with USB vendorid 0x1004, productid 0x6000, interface 1 is /dev/cu.usbmodem5B231. I don't see where to get the USB details starting with the /dev name or the /dev name starting with the USB details.
I have no problem getting the details seperately. It is linking them that matters.
Given a USB device, you look for an IOSerialBSDClient down the tree. Given a BSD device, you look for a USB device up the tree.
The information is not in the same place because the data is in a tree. The IOSerialBSDClient nub has no business knowing about USB crap. It's all very elegant.
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.
compatible with BitPim. I'd really like to see BlackBerry 7100 support, but it doesn't even show up as a serial device over USB
That is why BitPim uses libusb for some phones and just talks straight at them. In fact that is even easier than serial style access.
don't really know where to start with reverse engineering it
Generally you need to record what some existing working program does and go from there. That or make wild guesses.
I'd have to do a lot of reading up on that to see how to get dumps of USB traffic. 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.
-bob
_______________________________________________ Pythonmac-SIG maillist - Pythonmac-SIG@python.org http://mail.python.org/mailman/listinfo/pythonmac-sig