Guest Gig Posted February 28, 2006 Report Posted February 28, 2006 Ok gurus, here's a good one for you with a CE development kit. The Wizard (and the SDA for that matter!) have a BOTCH in the way they handle bluetooth. That is, with a headset active, they will NOT send ringtones and notice messages (noises of various kinda) through to the headset. They also won't play music there either. Yeah, I know, its not high fidelity nor stereo (at least not until AD2P shows up) BUT you should be able to watch ORB'd video, for example, with sound. But - you can't. Or can you? There's a tiny little app called "BTon" and "Btoff", along with "BTtoggle". It does what you think it does - it redirects all audio out the bluetooth port. Now this would be perfect except that once you turn it on the Bluetooth audio channel is left open, which beats the snot out of the battery in both the Wizard AND the headset. So - here's the challenge... Figure out how to intercept (hook) the OS so when it goes to open the SPEAKER audio channel it, if configured to AND you're attached to a Bluetooth headset (which can be determined from the current active device in the registry) for either handsfree or headset, you execute the equivalent of "BTon". When the speaker channel is CLOSED, you execute "BToff". Now you suddenly have Bluetooth headsets working the way Microsoft SHOULD HAVE implemented them. If your phone rings, it rings ON THE HEADSET with your ringtone. If you get a SMS, the notification tone comes through the HEADSET. If you play a music file, it plays on the HEADSET. Basically, if the headset is active, it plays there - if not, THEN it plays on the speaker - no matter what the app is. The Wizard software has control of the audio amp in the unit. It therefore must be possible to determine if the amplifier is togged on, and if so, to execute this. What 'ya think? I'd think this would be a VERY simple app to write - I don't have the hardware register layout nor the CE development tools or I'd take a crack at it - but one of you guys has to.... This little app, sitting in the background, would consume almost no memory or processor time but would basically fix my (and many other's) BIGGEST bitch with the Wizard AND the SP5 - since both do exactly the same thing, and both should be amenable to the same fix. Anyone up for the challenge?
Guest Tech Posted February 28, 2006 Report Posted February 28, 2006 should be easy enough to do but let me stress that this "design problem" is not of Microsoft's fault but the handset's own design fault. Microsoft have given FAR toooo much freedom to network celluar's and handset manufacturers to play and customize their ROM people say "oh MS should do this, its unfair blah blah blah" they did and look where its heading sure, any user bash as you wish but this is my strong and correctful opinion - sorry to go OT back to the original topic im sure its possible. the MS BT Stack is available on WM5 devices.
Guest Gig Posted February 28, 2006 Report Posted February 28, 2006 should be easy enough to do Yep - all you'd have to do is stick a task in the background that "snoops" on whatever hardware register is involved in turning on the audio amp. When you see it powered up, you run "bton" (you don't even have to WRITE that part - just run the existing program!) and vice-versa when you see the enable line go low. This would be best done in a relatively-low-level langauge (if such a thing exists for the WinCE environment) simply due to size and resource constraints - there's nothing magical about it - its about 10 lines of "C" code - if that - provided you have the hardware layout and compiler. So.... anyone up for it? This would be a huge leap forward for these units, and would likely work on all WM5 devices, including the Tornado varients (which are very close to the Wizard)
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now