Wednesday, October 11, 2006

Win32 Bluetooth Support Sucks

As a part of my PyMobileSync, I need developing over bluetooth. These days I found programming for Bluetooth device under win32 platform was a nightmare!

I followed the guide from MSDN only support Windows . But I got 10047 error "Address family not supported by protocol family" when I tried to create a BTH socket. I searched google, then I found MSSDKXP native Bluetooth stack and it don't support my Bluetooth dongle device (ISSC chip).

Before Windows XP SP1, Microsoft hasn't added native Bluetooth support. So IVT and Widcomm developed their bluetooth stack on Win32 platform and now bluetooth software developer must program with three SDKs if they want their application could to be accepted most widely.

Jon Cellini wrote a article that described how to make a Bluetooth device that was not supported officially by microsoft work under native stack. Somebody reported their ISSC device could work this way and others reported failure, and indeed my device failed.

At last I spent 6$ to buy a new Bluetooth dongle with CSR BlueCore4-ROM chip that could be detected natively and I found windows xp's Bluetooth management application is toooooo simple. I believe windows native stack will be the winner of three stacks. But it lack a killer application of Bluetooth management now. Will Vista include a new one?

1 comment:

Anonymous said...

In my experience the Windows bluetooth support is horrid - and the various OEMs make things worth by making it unclear what stacks their various products are supported by. I found the native stack to be the least dysfunctional of the bunch.

At least in the Apple camp things work much nicer :)