iPhone os 3.0 beta intrigue

Details are still sketchy, but the iPhone 3.0 os plans look very interesting to developers for a few reasons.

Bluetooth networking is now available between a pair of iPhones

This is a real IP connection, possibly using PAN. It looks like this is not routable and does not allow for multiple simultaneous connections. You might be able to bring connections up on demand to get the effect of multiple simultaneous connections.

Apple may be strictly enforcing device class filtering or SDP record contents to be sure the device on the other end is also an iPhone. Somehow, an app scanning for iPhones will only see another iPhone if it is running the same application. To make the scans efficient, it seems likely the application identifier is published via SDP.

This is known as the “GameKit” API since it’s most likely to be used for gaming.

Bluetooth communications with an accessory

From the SDK documentation, it’s not clear if this is for raw L2CAP communications or if it is something less versatile like an rfcomm socket. If it is the latter, then it means native support for things like the printing profile won’t work.

If you build the accessory from the ground up then you may not care, but if you want to connect an existing device then it will matter.

It does seem a little funky to be considering implementing a bluetooth profile inside each application that will use it.

Wired communication with an accessory

It seems this is most likely done via USB host mode, but there is no information about how the phone would kick into host mode. If this is like USB OTG, then the USB cable would have something in it that identifies itself to the iPhone as a USB device instead of a host.