Talking Free, Wirelessly: Hacking the Registry to Use a Bluetooth Headset
<img src="http://www.pocketpcthoughts.com/images/web/2003/logsdon_headset_hack.gif" /><br /><br />Pocket PCs and Bluetooth headsets do not have a symbiotic relationship. Most Pocket PCs are not intended to work with a headset, so most people assume that it can't be done. Fortunately for us, most people are wrong. <br /><br />A company called Widcomm provides the Bluetooth radio stack for the majority of Pocket PCs, and rather than making separate stacks available for each different device on their client list, Widcomm allows functionality to be flipped on and off via registry settings. This means that most Pocket PCs using the Widcomm stack can be made to work with a Bluetooth headset, provided that the headset supports the correct profile. It’s not exactly easy, but it’s not brain surgery either. <br /><br />The first article in this series was a review of a Bluetooth headset, the Tekram-312. In this article, I’ll show you how to get your headset working with your Bluetooth-enabled Pocket PC. This has a variety of applications, not least of which is usage with PocketSkype – the subject of the next article in this series.<br /><br />Read on for the juicy details!<!><br /><PAGEBREAK><br /><br /><span><b>Good News and Bad News</b></span><br />Bad News: 41xx and 43xx users, I’m sorry to say that you’re out of luck here – there’s no way to get the Bluetooth stack in these devices to recognize the headset. Pretty much every other unit with a recent Bluetooth stack should work, as long as the headset supports the Audio Gateway profile. <br /><br />Good News: There are two ways to get your device to recognize a BT headset. One is via a manual registry hack, and the other is a commercial application that will do it for you. In the following paragraphs, I'll show you how to hack the registry yourself.<br /><br />Before I begin, a warning. I am in no way responsible for anything that might happen if you mess with your registry. If you somehow manage to send a signal to the Evil Fluffy Space Hamsters, who consequently descend upon your house in their furry glory and start nibbling you to death, do NOT come crying to me. Not only will I not help you, I may also guffaw condescendingly. Or perhaps chortle. You have been warned. <br /><br /><span><b>Hack that Registry!</b></span><br />The first thing you’ll need is a registry editor. I used the one that comes packaged with Resco Explorer 2004, but there are others out there. You should also know that the settings below have only been tested on an iPAQ 2215. I’ve heard tales of people getting the the correct profile working with certain 5xxx machines, but I have no first-hand knowledge of this. To begin, find “HKLM\SOFTWARE\Widcomm\BtConfig\Services\0005” in your registry. Find “Enabled", and change the value from “0” to “1”. This turns on the Audio Gateway Profile.<br /><br /> <img src="http://www.pocketpcthoughts.com/images/web/2003/logsdon_skype_headset_enable.gif" /> <br /><i>Figure 1: Turn on the Audio Gateway Profile.</i><br /><br />Now find “HKLM\Drivers\BuiltIn\WaveDev\”. Find “DLL” and change the value to “BtCeIf.dll”. This routes the audio from the speaker/headphone jack to the Bluetooth stack’s audio driver. <br /><br /> <img src="http://www.pocketpcthoughts.com/images/web/2003/logsdon_skype_headset_wavedev.gif" /> <br /><i>Figure 2: Route the audio through the BT driver.</i><br /><br />Now soft-reset the device and run Bluetooth Manager. Make sure your headset is discoverable, and then let your device find the headset. Partner up, connect, and you should hear a tone/beep from your headset. Answer it, and you’re good to go. All sound will now be routed directly to your BT headset. Don’t expect CD or even FM quality sound – it’s more like decent AM radio clarity, but that’s good enough for audio books and voice applications like Pocket Skype or some of the other Pocket PC VoIP clients.<br /><br /><span><b>The Pre-Packaged Solution</b></span><br /><br /> <img src="http://www.pocketpcthoughts.com/images/web/2003/logsdon_kai.gif" /> <br /><i>Figure 3: Kai's Bluetooth Headset Hack: Friend to the Cautious.</i><br /><br />The second way to enable the Audio Gateway profile is to use Kai’s Hack. As far as I know, this program will ONLY work with 194x, 221x and 5450 devices, and nothing else. I’ve conversed with Kai via e-mail and can report that he’s both knowledgable and quick to respond. His little app is wrapped in a snug cocoon of eVB runtime, which WILL take up some space on your device. On the other hand, <a href="http://www.handango.com/brainstore//PlatformProductDetail.jsp?siteId=311&jid=957843651728DAXX7XD9827564AAF5CX&platformId=2&productType=2&productId=88989&sectionId=0&catalog=30">it only costs $3,</a> so if you’ve got the space, a supported device, and no desire to screw up your registry, I’d recommend this route. Just follow Kai’s instructions and you’ll be fine. [Affiliate]<br /><br /><span><b>Final Words</b></span><br />I did not encounter any performance issues with the 2215 I used as my test mule, but this hack <i>is</i> somewhat resource-intensive, so if you encounter any slowness or system instability, you may want to close some applications and/or free up some additional Program Memory. If your device has different registry settings and you’ve successfully enabled the Audio Gateway, please post your settings here so that others can benefit. If you’re having trouble getting your device working, post the details here, and maybe someone can help you. <br /><br />Next up: The PocketSkype review!