You may have heard (particularly if you’ve been following my past articles) about the differences between the Microsoft Bluetooth stack coming with HTC Phone Edition devices and know its major shortcomings when compared to the major alternative, the Widcomm / Broadcom BT stack:
It lacks BT PAN (albeit the latest AKU3 has some basic support for BT PAN server functionality) support, which would be of high importance in, say, chatting / talking apps (for example, 4Talk or Microsoft Portrait or multiplayer games)
It, as far as versions prior to AKU3 are concerned, lacks support for BT FTP (see THIS ARTICLE for more info)
It has wildly inferior A2DP (stereo Bluetooth headphones) sound quality
No wonder a lot of people have been actively trying to “hack” the Widcomm BT stack on Pocket PC models initially coming with the Microsoft BT stack. Of them, the WM5-upgraded Dell Axim x50(v) and the x51(v) may already be known to you (I’ve also posted a lot on the project; see for example THIS).
Some weeks ago, well-known XDA-Developers hackers started to work on the port to HTC Phone Edition phones; for the most part, with success.
For the most part, you may ask? Yes, unfortunately, there still are problems; they are as follows:
Currently, it’s not possible to use traditional Bluetooth headsets for calling. Upon trying to connect to the headset, the PDA will just display an error message as can be seen in HERE. In the Hermes Widcomm developer thread, people are working on fixing this issue; so far, with little success. This will be a showstopper for many.
You won’t be able to use the PDA as a modem via Bluetooth (see my tutorial here) using either pre-AKU3 DUN or AKU3 Internet Sharing BT PAN. Also see this thread for my posts on this problem.
That is, if the lacking functionality is a showstopper for you, do NOT consider switching BT stacks as yet.
Model-specific tutorials / threads
Check them out for a discussion and / or a tutorial for installing the BT stack on your particular phone model:
HTC Wizard
HTC TyTN (Hermes) (my earlier report)
HTC Trinity: it seems it still doesn’t work at all (I’ve tried hacking very hard).
HTC Universal; well-known Pocket PC hacker and coder Helmi has just announced he’ll really soon release a working version even with headset support. I'll keep you posted.
it may sound silly, but does this stack appear in the uninstall list? so, am i able to remove it?
i'm asking because last time i changed my bt stack i ended up with my wizard being mute all the time. luckily i was able to restore my old bt version by uninstalling new one. so how is it with this one?
BTW, here's the Headset-enabled (!!!!) Universal BT stack hack: http://forum.xda-developers.com/showthread.php?p=1115973
banannq said:
it may sound silly, but does this stack appear in the uninstall list? so, am i able to remove it?
i'm asking because last time i changed my bt stack i ended up with my wizard being mute all the time. luckily i was able to restore my old bt version by uninstalling new one. so how is it with this one?
Click to expand...
Click to collapse
Yes, it can be uninstalled - I haven't had any problems doing so on my Wizard and on the Trinity. Note that the Universal uninstallation is a bit more tricky.
banannq said:
it may sound silly, but does this stack appear in the uninstall list? so, am i able to remove it?
i'm asking because last time i changed my bt stack i ended up with my wizard being mute all the time. luckily i was able to restore my old bt version by uninstalling new one. so how is it with this one?
Click to expand...
Click to collapse
Yes, it can be uninstalled - I haven't had any problems doing so on my Wizard and on the Trinity. Note that the Universal uninstallation is a bit more tricky.
Everyone into A2DP and stereo, wireless Bluetooth headphones knows the Microsoft Bluetooth stack, quality-wise, used to be WAY worse than that of competing products (Widcomm / Broadcom on Windows Mobile; Nokia and other products on other platforms). I’ve thoroughly elaborated on this issue in the Comparison & thorough compliance report of three stereo Bluetooth headphones: Nokia HS-12W, Plantronics Pulsar 590 and 260 and previous articles. Note that you WILL want to read at least this article - it may answer a LOT of your A2DP-related questions.
Fortunately, there IS light at the end of the tunnel. Upon seeing THIS XDA-Dev thread (linked from THIS thread at MoDaCo), I’ve made some very thorough tests with the new, WM6 Bluetooth implementation and was VERY pleased with the results.
Yes, the new WM6 (as far as REAL, official WM6 versions are concerned and NOT illegal, “cooked” ROM’s, some of which still having the pre-WM6, low-quality A2DP implementation) indeed delivers a vast quality increase.
Listening to any music with singing was pretty much impossible with the MS BT stack back in the WM5 days (with an incompatible pair of headphones; don’t forget that, as has also been pointed out in my already-linked article, the A2DP implementation of WM5 delivers excellent results with already compatible A2DP headphones like the Nokia HS-12W); now, with WM6, the sound quality is pretty much close to that of the Widcomm (Broadcom) BT stack. It’s only audiophiles (like me) that will notice the VERY slightly lower sound quality with the new, WM6 implementation; ordinary people not really.
Again, the sound quality of the new A2DP implementation is orders of magnitude better (again, I only speak about incompatible headphones, NOT about compatible ones like the already-mentioned Nokia HS-12W! Keep this in mind when I speak about the bad sound quality of pre-WM6 A2DP implementation) than that of ANY WM5-based Pocket PC’s or Smartphones. This means you can, finally, dump Widcomm hacks or Widcomm-based handhelds in favor of new, WM6-based phones.
What about pre-WM6 Windows Mobile models?
After Microsoft introduced A2DP support in January 2006 with WM5 AKU2, the vast majority (exceptions include, for example, the HTC Wizard, which has never officially received any A2DP support) of new models (and operating system upgrades for existing ones) coming with the Microsoft BT stack (that is, all WM5 models except for Acer’s and HP’s models and the Fujitsu-Siemens T830 phone) have been released with A2DP support.
The A2DP sound quality of WM5 AKU2 devices was terrible. It was only with VERY few headphones models (for example, the already-mentioned Nokia HS-12W) that it delivered good sound quality. The vast majority of existing A2DP stereo headphones models (for example, the Plantronics Pulsar 590 and 260) were plain useless with the stack.
While Microsoft (vaguely) promised A2DP quality increase with the Autumn 2006 release of WM5 AKU3, real upgrades / devices didn’t deliver ANY increased sound quality. I’ve tested this with MANY WM5 AKU3 devices; both Pocket PC’s and MS Smartphones natively delivered with AKU3; for example, the HTC Oxygen (aka S310; a WM5 AKU3.0 MS Smartphone) and the HTC Trinity (aka P3600; a WM5 AKU3.3 Pocket PC).
This means it’s only with WM6 that you can expect (almost) flawless A2DP sound quality. With ANYTHING earlier, you will have MUCH worse sound quality – unless, again, you have one of the very few compatible headphones (Nokia HS-12W etc).
Also note that, should you use a “cooked” WM6 ROM, you may still have pre-WM6 A2DP support because these ROM’s may use components from older operating system versions. As cooked ROMs are not really legal, I am not allowed to provide you more information on the affected models or ROM versions - sorry. However, the next section explaining the Joint Stereo mode will be of great help to decide whether your cooked WM6 version already has the latest A2DP support, or still an old, WM5-based one.
Affected ROM versions – of which ROM’s can you expect good A2DP quality?
As a rule of thumb, if a given ROM version supports Joint Stereo, then, it’s capable of delivering pretty good A2DP quality. That is, if, in the Registry, the value HKLM\Software\ Microsoft\Bluetooth\ A2DP\Settings\ UseJointStereo (note that HKLM, as usual, stands for HKEY_LOCAL_MACHINE) is 1 , meaning enabled (NOT 0, meaning disabled) and the sound is (still) stereo, then, you have the new, WM6-based, high-quality A2DP implementation.
If you get mono sound (as is the case with ALL pre-WM6 models I’ve ever tested, despite what some say; and, again, some cooked WM6 ROM’s also belong to this category), then, you have the old (low-quality) MS BT stack, which can’t really be “hacked” – it’ll always deliver sub-par sound quality with most headphones, except for some select headphones models like the Nokia HS-12W (but, according to this XDA-Dev thread, not necessarily other Nokia headphones).
To make sure your (WM6) device has a new BT stack (or an old one), get a registry editor. If you’re unsure, read the Registry Editor Bible for a roundup; I recommend the registry editor in Resco File Explorer the most. It runs great on both regular Pocket PC’s and MS Smartphones. Note that many recommend (for example, in THIS thread) Breaksoft’s Mobile Registry Editor. You won’t want to use it because it isn’t able to modify the HKLM branch (only for seeing what’s in there it’s sufficient, though).
The same may stand for the, mostly for MS Smartphone users, highly recommended RegEditSTG on some WM5+ Smartphone models – it’s been signed by HTC’s certificate, which has been put on the ban list in at least Orange-branded phones released since Feb. 2006. That is, this registry editor won’t run for example on the SPV C100 (the Orange rebranded HTC Oxygen / S310), not even on a completely (application) unlocked phone. This isn’t the case with Resco’s editor: it’ll work just great on (app) unlocked new Orange Smartphones.
Yeah, I have a new, legal, official WM6 device, I still have VERY bad sound quality!
People that DO have a legal and official WM6 model (for example, the HTC Vox (s710) smartphone) still MUST hack the Registry to get rid of two registry values really degrading sound quality: the "MaxSupportedBitPool" and the "BitPool" values under HKLM\Software\ Microsoft\Bluetooth \A2DP\Settings. These both have a very low (with the Vox, 30) default value, resulting in VERY bad sound quality. I just don’t understand why Microsoft and HTC have left these values in there – all they do is completely degrading sound quality, without fixing anything / making more A2DP headphones compatible.
Just remove these two registry values and shut down / restart Bluetooth (or, if you choose so, reset the device – you won’t need this for the changes to be heard).
Note that if you have a Smartphone (and not a Pocket PC), make sure you application unlock your device before modifying the Registry; otherwise, you won’t have edit access to the Registry. To unlock your phone, you will want to read THIS (if you have a Vox or a similar, new, mostly WM6 device) or THIS (if you have an older WM5 device like the Oxygen – while these models still have the old, low-quality A2DP implementations, you may still want to either remove these values or increase their value too slightly increase the A2DP quality. You will still have bad sound quality compared to the WM6 one - or that of the Widcomm stack).
You may also want to create a SampleRate DWORD value with the value of 48000. Many have reported subsequent quality increase (I haven’t noticed this with my HTC Vox + Plantronics Pulsar 590A duo but this doesn’t necessarily mean with other models you won’t hear an increase in the sound quality.) If you’re unsure, just import this registry script – it’ll increase the sampling frequency and also makes sure the Joint Stereo mode is enabled, should you or some tweaker tools have messed with it.
Don’t forget than in pre-WM6 times you HAD to disable the Joint Stereo mode; therefore, if you have ever run automatised sound quality enhancer tweaks (for example, with the excellent HTweakC tool; see THIS for more info) , they may have already set this to 0 (which isn’t recommended any more).
Incidentally, this registry import file, which works on both MS Smartphone and Pocket PC models, has another value, HKLM\Software\Microsoft\ Bluetooth\AudioGateway\ Capability, which makes it possible for the phone to play the ringtone in the connected A2DP headphones and not in the phone itself. If you don’t want this to be changed, just remove the two related rows before importing the script.
Note that as you can’t delete anything from a registry import file, you’ll still need to manually remove the Public Enemy Number One: that is, the "MaxSupportedBitPool" and the "BitPool" values under HKLM\Software\ Microsoft\Bluetooth\A2DP\ Settings.
Verdict
WM6, as opposed to ALL versions of the previous, WM5 operating system, has vastly enhanced A2DP support already available for legal WM6 users ready to do some registry editing (most importantly, removing two registry values). If you’re, on the other hand, a user with a “cooked” WM6 ROM, you may still have the old, low-quality A2DP implementation.
Don’t forget to remove the two registry values if you have a legal WM6 device and you’re still encountering bad sound quality – it’ll REALLY work.
i read through your article. Thanks.
I have been experiencing everything you described above since WM5 and its various AKU and never experienced a good A2DP yet.
The only time I experienced something wow with Bluetooth music is when I run MSI Blue Player with the itech R35 headset which is MSI compatible headset, and the quality is superior, I could not differenciate it with the wired sound quality.
So, for us with WM5 devices, what we can do. From the description, its a matter of software, new BT implementation in the WM6.
How could we port out this piece to run in WM5 or self cooked WM6?
You missed out the Sony Ericsson A2DP BT Stereo headset which has not too bad result except for the bass is a little coloured. The bass is too strong for my taste.
Anyway I like my Nokia HS-12W.
I seems to experience (with the registry hack) a better sound quality with AKU2.0 than in AKU3.x. I have not tried the any WM6 for A2DP.
lie_ui said:
i read through your article. Thanks.
I have been experiencing everything you described above since WM5 and its various AKU and never experienced a good A2DP yet.
The only time I experienced something wow with Bluetooth music is when I run MSI Blue Player with the itech R35 headset which is MSI compatible headset, and the quality is superior, I could not differenciate it with the wired sound quality.
So, for us with WM5 devices, what we can do. From the description, its a matter of software, new BT implementation in the WM6.
How could we port out this piece to run in WM5 or self cooked WM6?
Click to expand...
Click to collapse
The best way is installing the Widcomm BT stack (if there's a working hack for your particular model - what's it?) - it'll deliver the best quality.
Or, wait for a working and really up-to-date WM6 version to appear, let it be either an official upgrade or an unofficial, cooked ROM version. Unfortunately, I may not elaborate on the latter more - a simple forum search can do wonders ;-)
I have a Prophet running unofficial WM6.
Everything runs pretty stable. I checked the registry setting for Bluetooth A2DP and it does not have any folder named Settings under Bluetooth A2DP. So, there is nothing like JointStereo, BitPool, etc.
A2DP sound quality is just the same like the AKU 2.x and AKU 3.x
From your article, its implied indeed it has the old/WM5 Bt stack.
Hmmm, they just launched the T-Mobile Wing which is officially running WM6. I was thinking to upgrade before, but cancelling it, because from my current Prophet to the new T-Mobile Wing, there is no significant upgrades besides the keyboard. I will lose infrared, normal audio port, full size SD Card, in exchange of getting exactly same size device, same hardware with only addition: the keyboard.
But now, you pointed out the proper and good A2DP quality... which should be part of the new T-Mobile Wing according to your article... =)
For those of us stuck with WM5 devices for now, we need someone to extract the a2dp drivers for the current "fixed" WM6 installations.
We've had a2dp drivers floating around ever since the original Tornado a2dp hack, leading up to versions from AKU 3.2, 3.5, and even the beta WM6's (which were terrible). It shouldn't be difficult for anyone to do the same with these new "fixed" drivers, however as far as I can tell, no one has bothered yet.
If anyone out there knows how to do this, you would be doing a great service to your fellow WM fans!
lie_ui said:
I have a Prophet running unofficial WM6.
Everything runs pretty stable. I checked the registry setting for Bluetooth A2DP and it does not have any folder named Settings under Bluetooth A2DP. So, there is nothing like JointStereo, BitPool, etc.
A2DP sound quality is just the same like the AKU 2.x and AKU 3.x
From your article, its implied indeed it has the old/WM5 Bt stack.
Hmmm, they just launched the T-Mobile Wing which is officially running WM6. I was thinking to upgrade before, but cancelling it, because from my current Prophet to the new T-Mobile Wing, there is no significant upgrades besides the keyboard. I will lose infrared, normal audio port, full size SD Card, in exchange of getting exactly same size device, same hardware with only addition: the keyboard.
But now, you pointed out the proper and good A2DP quality... which should be part of the new T-Mobile Wing according to your article... =)
Click to expand...
Click to collapse
Hope it is also part of the Wing and it's not based on an older / beta A2DP. I could only test this with my HTC Vox.
Dishe said:
For those of us stuck with WM5 devices for now, we need someone to extract the a2dp drivers for the current "fixed" WM6 installations.
We've had a2dp drivers floating around ever since the original Tornado a2dp hack, leading up to versions from AKU 3.2, 3.5, and even the beta WM6's (which were terrible). It shouldn't be difficult for anyone to do the same with these new "fixed" drivers, however as far as I can tell, no one has bothered yet.
If anyone out there knows how to do this, you would be doing a great service to your fellow WM fans!
Click to expand...
Click to collapse
While I'm not allowed to post direct links, I'll definitely report on whenever someone "somewhere" manages to do this.
BTW--nice paper going over the meaning of joint stereo and bandwidth issues
http://www.impulsesoft.com/home/download/btaudioguide.pdf
Oh hey, that explains joint stereo! I though it was something Microsoft made up...
A2DP, Treo 700wx, Bell Canada
Menneinsyys,
Clearly you are a man who knows a lot about A2DP. Unfortunately I can't say the same for myself. I wonder if I could pick your brain for a minute...
I own a treo 700wx and have just bought a pair of Sony DR-BT21G headphones but was disappointed to discover I had no A2DP. I'm having troubles wth my earphone jack which makes me doubly interested in getting Bluetooth to work. My carrier is (unfortunately) Bell Canada. That means no WM6 update and no AKU3 or other update. I have been looking around for an A2DP patch and have already tried installing one from Hannip at TreoCentral and another from Sheehan but neither have worked.
From what I have read from you, I should ideally upgrade to WM6 before trying to add on an A2DP patch (correct me if I am wrong). That begs the question whether there is a way to upgrade to WM6 despite your carrier - any suggestions?
Then comes the question of A2DP - what would the best route be for me to take? (carefull, I'm a real neophyte in all of this). Knowing my situation, what do you think of my chances to sovle this ?
Much obliged for your time.
Arnste
arnste said:
Menneinsyys,
Clearly you are a man who knows a lot about A2DP. Unfortunately I can't say the same for myself. I wonder if I could pick your brain for a minute...
I own a treo 700wx and have just bought a pair of Sony DR-BT21G headphones but was disappointed to discover I had no A2DP. I'm having troubles wth my earphone jack which makes me doubly interested in getting Bluetooth to work. My carrier is (unfortunately) Bell Canada. That means no WM6 update and no AKU3 or other update. I have been looking around for an A2DP patch and have already tried installing one from Hannip at TreoCentral and another from Sheehan but neither have worked.
From what I have read from you, I should ideally upgrade to WM6 before trying to add on an A2DP patch (correct me if I am wrong). That begs the question whether there is a way to upgrade to WM6 despite your carrier - any suggestions?
Then comes the question of A2DP - what would the best route be for me to take? (carefull, I'm a real neophyte in all of this). Knowing my situation, what do you think of my chances to sovle this ?
Much obliged for your time.
Arnste
Click to expand...
Click to collapse
It seems it's working. See http://discussion.treocentral.com/showthread.php?t=112637
(if it's not accessible, use http://209.85.135.104/search?q=cache:umaPm8U_vQwJ:discussion.treocentral.com/showthread.php?t=112637 instead)
Hi, first off I give my hats off to ur very detailed and informative article about a2dp.
However, I think (i'm not sure about this but based on experience), a2dp registry settings vary by model. I previously owned a Wizard and use to search for all kinds of threads regarding improving a2dp. I even searched in other devices' threads (universal, hermes, etc). Although I was using pre-official wm6 (cooked one) and in the other devices' threads that I've read, they were also using the same type of roms (but for their device).
I've noticed that the registry settings that people in the universal forums were using, did not give me the best results for my wizard. The same results were obtained from using the registry settings that were suggested in the hermes forums. Although the people in those threads swear by the improvement and excellent results with their device, I was getting constant skipping and mono-type sound. I then stuck to the suggested registry settings in my own device's forum (wizard) and I did get pretty decent,skip-free music.
Now I'm using a hermes and I tried using the registry settings that I used in my wizard but I did not get the same results in comparison to using the registry settings suggested in the hermes forums.
The validity of my statements may not be accurate but these are my findings based on experience and it could be something to ponder on when it comes to achieving the best a2dp experience
Thank you! This is great news! I own a pair of 590a's and not being able to use them on the X7500 was a dealbreaker. Now that they ought to work in WM6, I'm one step closer to getting that X7500. BTW your previous BT article was brilliant!
dbrotzen said:
BTW your previous BT article was brilliant!
Click to expand...
Click to collapse
Thanks
joecruz said:
Hi, first off I give my hats off to ur very detailed and informative article about a2dp.
However, I think (i'm not sure about this but based on experience), a2dp registry settings vary by model. I previously owned a Wizard and use to search for all kinds of threads regarding improving a2dp. I even searched in other devices' threads (universal, hermes, etc). Although I was using pre-official wm6 (cooked one) and in the other devices' threads that I've read, they were also using the same type of roms (but for their device).
I've noticed that the registry settings that people in the universal forums were using, did not give me the best results for my wizard. The same results were obtained from using the registry settings that were suggested in the hermes forums. Although the people in those threads swear by the improvement and excellent results with their device, I was getting constant skipping and mono-type sound. I then stuck to the suggested registry settings in my own device's forum (wizard) and I did get pretty decent,skip-free music.
Now I'm using a hermes and I tried using the registry settings that I used in my wizard but I did not get the same results in comparison to using the registry settings suggested in the hermes forums.
The validity of my statements may not be accurate but these are my findings based on experience and it could be something to ponder on when it comes to achieving the best a2dp experience
Click to expand...
Click to collapse
Yup, they vary on both the handheld and the headphones model.
Note that, however, the WM5 / WM6 versions you've tested are all cooked ROM's. I didn't have really good results with the (early; dunno if current ROM's are better in this respect) WM6 Universal cooked ROM's either - it delivers MUCH worse sound quality than my natively WM6 HTC Vox.
Hi Menneinsyys,now that the official wm6 roms are out, chefs are cooking their own versions and saying that they kept the bluetooth stuff of the official wm6 rom but they still "optimize" them for "best" quality (by some registry tweaks). You may not have the answer to this but, in ur own opinion (for the hermes specifically), do u think the chefs are really keeping the BT stuff from the original wm6 rom?
joecruz said:
Hi Menneinsyys,now that the official wm6 roms are out, chefs are cooking their own versions and saying that they kept the bluetooth stuff of the official wm6 rom but they still "optimize" them for "best" quality (by some registry tweaks). You may not have the answer to this but, in ur own opinion (for the hermes specifically), do u think the chefs are really keeping the BT stuff from the original wm6 rom?
Click to expand...
Click to collapse
Dunno, haven't tested the latest WM6 cooked ROM's as yet - my Universal still runs one of the earliest WM6 builds and haven't flashed it to anything newer as yet. As soon as I have some time, I flash them onto my PDA's and, A2DP-quality-wise, I test them.
<Original message deleted>
Ah, I understand the situation now. Sorry, I've been away for awhile. There's still hope for WM5 devices, I think.