Related
Headset: Motorola S9-HD
ROM: Haykuro 6.0
Radio: ota-radio-2_22_19_26I
Issue: a2dp audio skips due to location of phone... or so it seemed. The audio would skip if the phone was placed across my body from the antenna or in a pocket.
Resolution: I began researching the bluez stack and found several places in the code that alluded to the hfp and a2dp being intertwined. This lead me to remember that android also attempts to switch between the hfp and a2dp for incoming calls.
I found that my headset was connected by default with both profiles active (not one at a time).
Thus after several test i found that disabling the hfp will eliminate the skipping.
Explanation: My best analysis is that the phone is keeping both profiles open at the expense of splitting the channel. Thus when the phone has gsm related events (incoming calls, tower hopping, background edge data) it is tying up the hfp by error thus causing a2dp to get reduced resources, low signal strength, and possibly packet collisions. Try for yourself. The skipping instantly stopped for me. Let me know how it goes for you! Thanks to all the devs for these great roms and info.
can i get an english translation lol jk...can u explain it in noob form
interesting, plausible explanation
where in the code do you make the change?
noob translation: turning off the headphone profile possibly frees up room for audio to stream uninterrupted...
ps. that might still confuse some... lol
alapapa said:
interesting, plausible explanation
where in the code do you make the change?
Click to expand...
Click to collapse
no changes were made yet... the bluez stack is written to have a bridge between a2dp and headphone profile. i think android is sending packets to the headset via hfp for gsm events. I would think android should discard the packets instead of sending them out and relying on the headset to ignore them.
i would think the code can't be changed without making LOTS of other changes... i would be essentially rewriting how android handles the two profiles at the same time. (ALOT of work)
if this ends up fixing it for everyone... then i might look into trying to increase a2dp's priority in transmitting or some other solutions...
crushsuitandtie said:
no changes were made yet... the bluez stack is written to have a bridge between a2dp and headphone profile. i think android is sending packets to the headset via hfp for gsm events. I would think android should discard the packets instead of sending them out and relying on the headset to ignore them.
i would think the code can't be changed without making LOTS of other changes... i would be essentially rewriting how android handles the two profiles at the same time. (ALOT of work)
if this ends up fixing it for everyone... then i might look into trying to increase a2dp's priority in transmitting or some other solutions...
Click to expand...
Click to collapse
i think I gotcha...you just killed the hfp profile on your PC or w/e...?
Menu button>Settings>Wireless Controls>Bluetooth Settings>(long press) Your headset name>Options...>uncheck phone....
thanks for that tip. i was cutting my grass the other day. g1 in rear pocket. stereo bluetooth headphones on. signal kept cutting out on me. i'm gonna try this and see if it helps.
crazythunder said:
thanks for that tip. i was cutting my grass the other day. g1 in rear pocket. stereo bluetooth headphones on. signal kept cutting out on me. i'm gonna try this and see if it helps.
Click to expand...
Click to collapse
No problem. I'm just trying to add something constructive around here. I'm still not even close to some of these guys.
Hey you're right! I just connected my S9 to "media" only (disabling the phone connection in bluetooth settings) and it doesn't skip anymore, even with wifi on! I'm going to give this a try on my sony head unit in my car when I get the chance and I'll report back.
DOHCtor said:
Hey you're right! I just connected my S9 to "media" only (disabling the phone connection in bluetooth settings) and it doesn't skip anymore, even with wifi on! I'm going to give this a try on my sony head unit in my car when I get the chance and I'll report back.
Click to expand...
Click to collapse
Glad to hear that! im back at work and its heavily laced with wifi and the building gets poor edge/3G signal.So if you walk out the entrance toward the parking lot, the phone would connect to the cell towers (plus the wifi antennas are strong here) and my headphones would skip almost non-stop. This no longer happens. I'm quite happy.
Interresting hypothesis. I have my phone relatively close to my headphones so it hasnt been a big problem. Wifi had to be off or it didnt matter how close.
Eventhough it defeats the purpose of my S9's I'm going to give it a try.
atoy74 said:
Interresting hypothesis. I have my phone relatively close to my headphones so it hasnt been a big problem. Wifi had to be off or it didnt matter how close.
Eventhough it defeats the purpose of my S9's I'm going to give it a try.
Click to expand...
Click to collapse
i kept wi-fi off because I was in the gym or walking to my car... it would skip an absurd amount and i would nearly throw my phone and headset 8 blocks from pure frustration. The crazy part is BT is easily strong enough to transmit from a pocket to a headset on my head. I like to think i am tall but not that tall and disproportionate that my pocket is over 30 feet from my head! lol.
any skipping from that short of a distance is actually indicative of a problem to me. Thats like putting on a normal earpiece and getting nothing but static from that distance.
1) tests with my Sony Ericcson K850i showed it wasn't the headset....
2) i sat the phone on the floor directly under me when i was benchpressing, and simply because i layed down and partially covered the back of the headset the music started skipping non-stop. covering the antenna can cause some interferance but honestly with the phone that close it really shouldnt matter...
Tried the same test with my K850... no skipping. Tried with hfp disabled.... no skipping. Turn on hfp and a2dp... skips heavily.
thats the short version of how i came up with the split bandwidth part of my theory.
crushsuitandtie said:
no changes were made yet... the bluez stack is written to have a bridge between a2dp and headphone profile. i think android is sending packets to the headset via hfp for gsm events. I would think android should discard the packets instead of sending them out and relying on the headset to ignore them.
i would think the code can't be changed without making LOTS of other changes... i would be essentially rewriting how android handles the two profiles at the same time. (ALOT of work)
if this ends up fixing it for everyone... then i might look into trying to increase a2dp's priority in transmitting or some other solutions...
Click to expand...
Click to collapse
The handsfree profile will periodically send out "indicators" for things such as battery status and signal strength. These are small packets, which in a well designed Bluetooth stack, should not cause any disruption in the A2DP stream. The thing to look for would be how data transmission is prioritized. If, for example, BlueZ simply sends data in a "round robin" style, then sending a small data packet may delay the transmission of an A2DP streaming packet just enough to cause the problems you are describing.
I'm using JF1.51 and am not experiencing any of the audio problems you describe, even with WiFi and Handsfree connections enabled. I ran some tests and used a Bluetooth sniffer to capture the data traffic. One time I did hear an audio dropout at about the same time that the phone sent a signal strength indicator, which doesn't exactly validate your theory, but does make me wonder. However, I only saw 5 indicators sent by the phone over a 30 minute session.
Does using this method affect you from using the headset for calls?
Am I understanding that you would use this to listen to music... and if a call comes in would would talk over the handset normal?
What I've found is using A2DP indoors works perfectly (with our without HFP.) The explanation I've read is that the 2.4GHz waves bounce off the walls enhancing reception. Once outside is when I see degradation of quality/drops which would support the theory.
You might be on to something. If the bandwidth is being cut to share data over two profiles then, once you step outside, you'll have less distance before data packets drop.
paesano said:
I'm using JF1.51 and am not experiencing any of the audio problems you describe, even with WiFi and Handsfree connections enabled. I ran some tests and used a Bluetooth sniffer to capture the data traffic. One time I did hear an audio dropout at about the same time that the phone sent a signal strength indicator, which doesn't exactly validate your theory, but does make me wonder. However, I only saw 5 indicators sent by the phone over a 30 minute session.
Click to expand...
Click to collapse
you might have misread one of my posts... what you descrribed is exactly what i was saying... gsm events are possibly clogging bandwidth for a2dp. the one time you heard it is what i am experiencing constantly in some areas.
it appears to be a combination of several factors that are somehow hitting some people all at once....
1)"gsm or phone events being broadcasted"
2) possible split BT channel for HFP and A2dp
3) weak overall BT signal strength from g1 (dialed down in drivers to save power?)
4) interference from other wifi sources (enterprise access points aka "High gain antennas")
P.S. I guess its obvious i'm a systems analyst... lol
this really does work!!!!
if you guys remember windows mobile , the BT stack by default is set with the bit pool min and max @ 31 ,it works great but the sound quality sucks.. if you use a registry editor and increase the max bit pool sound quality gets better, but if you go to high you would get the cliping that we now get . i used to do this with my wing , using this same S9 headphone ,the trick was not to go to high with max bitpool and to lower min to 12 and this worked great,, max was @ 46 min was @ 12 ,, no skipping at all.. and great sound . WE need to find a way to get these adjusted on android , this should fix
now i do believe the wing and G1 both use Broadcom stacks ,could be wrong>>
remember Schap's tools - Advanced Configuration this did the trick
crushsuitandtie said:
you might have misread one of my posts... what you descrribed is exactly what i was saying... gsm events are possibly clogging bandwidth for a2dp. the one time you heard it is what i am experiencing constantly in some areas.
it appears to be a combination of several factors that are somehow hitting some people all at once....
1)"gsm or phone events being broadcasted"
2) possible split BT channel for HFP and A2dp
3) weak overall BT signal strength from g1 (dialed down in drivers to save power?)
4) interference from other wifi sources (enterprise access points aka "High gain antennas")
P.S. I guess its obvious i'm a systems analyst... lol
Click to expand...
Click to collapse
Sorry, I must not have been very clear. I did understand what you were saying, and I confirmed seeing what you saw in the one dropout I heard. However, in my case, there were only 5 "GSM Events" during the duration of my test. Not really enough to cause a lot of trouble. I can see that if a lot of GSM events occur (The spec calls them indicators), then there could be a lot of errors. Perhaps this happens when the GSM signal is weak and constantly changing.
If you want to look at making changes to the Bluetooth software, here's my analysis of the 4 points above:
1) If a lot of indicators are being sent by the G1, then I can see that a Bluetooth stack implementation could have streaming audio problems if not properly implemented. Unfortunately, the only way to fix this problem is in software by only sending indicators (and any other data) "in between" the A2DP streaming packets. Streaming packets should never get delayed. It would be better to toss the streaming packet than to delay it.
2) When both HF and A2DP are connected, the signal is not actually split. They both have access to the full bandwidth of the Bluetooth stack. The only time that there would be a problem is when both are sending at the same time, which could cause an audio packet to get delayed in a transmit queue, causing a dropout (as described above). Perhaps BlueZ doesn't do a very good job of prioritizing data, so that audio data is never delayed by other data packets. In my opinion, #1 and #2 are the same problem.
3) A week BT signal would definitely cause this. I can reliably listen to stereo audio with my Sony headset at around 10-15 ft. Outside that range, I start to hear dropouts. Also, If I put my hands over the headset, I can cause dropouts at even 2 ft. So, your body will definitely cause problems if it gets in the way of the signal. Finally, the sensitivity of the radio on the headset will affect the range as well. It may or may not be possible to increase the TX power by sending the Bluetooth controller a command in the software. The only other solution is to try and not get in the way.
4) WiFi certainly can cause interference, as can a microwave oven. However, adaptive frequency hopping (AFH) should mitigate most problems. Perhaps AFH is not turned on for some reason, or there are multiple WiFi networks around, making it very difficult for the Bluetooth controller to find any reliable frequencies. AFH is turned on by sending the Bluetooth controller the command.
I have been having intermittent issues with Bluetooth audio cutting out on my Captivate while I am on a phone call over Bluetooth. I believe the problem stems from Samsung's inability to do anything right and their implementation of Bluetooth 3.0. A new feature of Bluetooth 3.0 is the ability for a Bluetooth connection to transfer data over Wifi if both Bluetooth devices support 3.0 and have compatible Wifi chips. Samsung implemented this poorly, not a real surprise, and now Wifi is causing the Bluetooth data transfers to be spotty causing streaming data, voice calls or audio streaming, to to be adversely affected.
I was able to finally narrow down the problem. I received a phone call yesterday on my cell phone and I picked up the call on my Bluetooth enabled home phone. The call sounded horrible, noise and the other caller was cutting out, but not enough that I couldn't understand the other person, so I continued the call. The person on the other end did not seem to have any idea that the call sounded so badly, so it seemed to be something limited to my end. During the call, I went over to my Captivate and turned off Wifi. Instantly, the call cleared up and the quality was good to excellent.
I use Wifi all of the time especially at home, so I wasn't going to be turning off Wifi all of the time, so I needed a workaround. Using an App called Setting Profiles, I am able to have Wifi automatically turn off anytime I am on a call and then when the call is completed it turns Wifi back on. What's even better is that the app will note the state of Wifi before a call, so if Wifi is already off before a call, it will not turn Wifi on when the call is ended. The Tasker app will allow you to do the same thing, so if you already have Tasker you won't need Setting Profiles.
This tip will probably only work on the Samsung Galaxy S line because these phones use Bluetooth 3.0, where most Android phones use 2.1 or earlier and do not support Bluetooth file transfers over Wifi. I have only experienced it on the Captivate so I can't say if it will work for any other Galaxy S phone.
Since both wi-fi and BT uses the same 2.4Ghz frequency, interference maybe anticipated although new BT hardwares are pretty good at reduce such interferences.
Did you try change your wi-fi router frequency/channel so that it won't interfere with your BT? Try that so that you may not need to turn off wi-fi on the phone at all.
I have had the issue occur in my car while not near any Wifi router. Also, the router was still on when the call quality improved. It's not like the radio waves from the router and three other Wifi devices in my house disappeared around my phone just because I turned off the Wifi on my phone.
Sent from my SAMSUNG-SGH-I897 using XDA App
Thanks for the tip
Love my infuse, but there are a few quirks that drive me up the friggin wall about it and I'm wondering if there are any quick/easy (or even not so quick/easy) fixes for them'
1. Wifi refuses to reconnect to a known network if I leave the range of the network and then come back. I know the phone has wifi issues that are detailed here, but I haven't seen that one specifically.
2. Bluetooth will not reconnect to a known device that it has been (and is still) paired with. Every time I want to use bluetooth audio in the car (via my sony head unit) I have to turn on bluetooth, go to settings, and then network/connection settings and find the head unit and click on it. It would be quicker/easier to use an aux cable at this point. Every other phone I've had would auto-connect.
3. Bluetooth audio quality. Sounds very tinny, no bass to it what-so-ever
Would appreciate any help
Some info would help... are you stock? If not, what are you running?
If I didn't turn on bluetooth before I started my truck, I had the same problem with the bt connection. I think the problem was with the stereo not looking again for the bt signal. If I turned off the stereo then turned it back on everything was fine. Hope that helps.
Edit: I have a sony unit also.
Oops, sorry I mean to include that I am on Infused 1.6
Had these issues even with the stock ROM though. Was thinking about trying a GB as some people seem to have better luck with the wifi but not sure about the BT.
Thanks for the tip fishjam, I'll try turning on BT before the stereo.
blackwrx02 said:
1. Wifi refuses to reconnect to a known network if I leave the range of the network and then come back. I know the phone has wifi issues that are detailed here, but I haven't seen that one specifically.
Click to expand...
Click to collapse
Same issue on stock. I created a tasker profile that flips the wifi on and off when wifi disconnects and it helps but doesn't cure it. I think part of the problem is that the phone "holds on" to connections that aren't really there. For instance according to tasker my wifi strength will be 1 but I won't actually be able to use it yet the phone insists it is still connected when you are at the fringe of wifi range. I may tinker more when I have time as I was looking at the tasker forums and you can parse out data from the info page. I may try to just have it connect/disconnect when the signal strength is 2 or less. My main issue is at work with multiple waps as I make my way through the facility.
Was able to get the bluetooth to reconnect to my head unit by leaving it on, or turning it on before starting the car as mentioned above. Thanks for that, much much better now. If only I could fix the damn wifi issues!
Does turning wifi off and back on solve the wifi issue?
blackwrx02 said:
Was able to get the bluetooth to reconnect to my head unit by leaving it on, or turning it on before starting the car as mentioned above. Thanks for that, much much better now. If only I could fix the damn wifi issues!
Click to expand...
Click to collapse
Check your settings for checking wifi my auto connects if I leave and come back but it won't untilled the interval has ended IE if the interval is every 10 minutes and you leave and come back in 8 it will really assign to your wifi in two minutes. If you have this option turned of you will have to manually reconnect ecerytime
Sent from my SGH-I997 using XDA App
Where is this? I must be totally overlooking it.
Sent from my SAMSUNG-SGH-I997 using XDA App
I'd like to know as well, I don't see that option
I was looking for this on all forum and did not find answer. I get second one skyrocket and second blutooth device plantronic voyager pro HD and still have problem as is had with last one. Devices paired with no problem and worked for some one-two days with no problem. After that time sound is scrachy and disconnect from phone, then i can not turn on or off blutooth on phone and also can not find device antill i restart phone. Skayrocket running on rooted stock and I installed CWM on. Did not flash with any rom yet. Any idea what is the problem or this is hardware problem again ( that why i replace last one phone and bluetooth) ???
There's an issue with bluetooth on the skyrocket and the galaxy s2 for some reason. I am running the newest version of seanzscreams ROM and I've had no issues since I updated. My bluetooth would think it was connected but when I made a call I'll have no audio. I would have to reboot my skyrocket and resync my bluetooth. Hopefully they fix it in the ICS release.
so many ppl having bluetooth issue. SO i ma gonna take out my jawbone and see if i can help these ppl out.
I have the Era, Plantronics backbeat 903+, and the Blue Ant Q2 and they all do the same darn thing. It's weird, the phone even shows it's connected. When I press the button on my Era is says how much talk time is left but not connect me to your phone. It is a pain. I wish it would automatically sync to my car when I turn it on and switch off my earpiece. Guess we need to wait for an app or something.
Well my jawbone got connected to phone easily. Made phone call and every thing went smooth so good news for me. Running Ice cream rom.
What I found was that you have to make sure it's set to auto connect if not then you'll have to manually connect it every time in your Bluetooth settings.
Sent from my SAMSUNG-SGH-I727 using XDA App
Thanks all for answers.. I hope someone will find solution for problem , i also will try to flash some roms to see what is working what not..
I was having a strange problem with bluetooth as well. The audio would become undecipherable sometimes. I found that when I had wifi turned on I could recreate the issue and when I turned it off the issue when away. I've since used tasker to turn off the wifi when initiating a bluetooth connection and haven't had the problem since. Your results may vary, but couldn't hurt to try it out. Hopefully it'll fix your issue.
There is a definitely issue with bluetooth. I use 5 different sets of bluetooth (Bose, Plantronics Voyager Pro, Plantroinics 975, Blueant Q2, Jawbone) and they all seem to have an issue with Skyrocket. Even tho they are paired and connected to the phone, I can't seem to hear anything. Also, sometimes it does not turn on or off. There are times when it won't even connect/pair even though the bluetooth is set on auto connect. I have to reboot in order to get it working correctly. With my Bionic, I never have that issue. This is my 2nd set of Skyrocket and my first one had the same issues.
Sent from my DROID BIONIC using Tapatalk
In "Settings", "Use Power saving mode", there are a number of defaults, one of which is "turn off blutetooth".
If you have powersavings enabled and this ticked off it will drop your BT connection if it's idle for a bit... It also has the same foy wi-fi, gps, and sync, and timeout and response values for brightness and timeout.
Also note that reaching your "low power" threshold set in this area will turn off all of those too.
Jamie
robinsonj said:
In "Settings", "Use Power saving mode", there are a number of defaults, one of which is "turn off blutetooth".
If you have powersavings enabled and this ticked off it will drop your BT connection if it's idle for a bit... It also has the same foy wi-fi, gps, and sync, and timeout and response values for brightness and timeout.
Also note that reaching your "low power" threshold set in this area will turn off all of those too.
Jamie
Click to expand...
Click to collapse
I have the power saving mode OFF and still have issues. I definately feel that there are bluetooth issues with Skyrocket.
Sent from my SAMSUNG-SGH-I727 using Tapatalk
I did try everything you sugested and only think so fare working is when i flash with icescreemsandwich rom.. so if anybody have same issue can try this.. thanks all one more
I'm on my second White Skyrocket and am still having the same bluetooth issue. After connecting with my car, then leaving the car and returning later, I cannot turn BT back on without a reboot. Once it connects, it works well though.
Issue w/Speaker
I've not connected with a bluetooth headset, but I have HORRIBLE audio issues when using my Parrot 2.1 b'tooth speaker.
Rocket connects & keeps connection, but audio drops & is choppy - even when < 4' away.
White Skyrocket on faux's kernel & seanscreamz SkyIceCreamSandwich RC6.6 ROM.
I did something diffriend on my wifes skayrocket with stock rom and no root totaly clean...
I turn on bloototh on phone and connect to handset, connection is exelent so i never turn off bluetooth on phone and so fare so good for last 2 days.
norbarb said:
I did something diffriend on my wifes skayrocket with stock rom and no root totaly clean...
I turn on bloototh on phone and connect to handset, connection is exelent so i never turn off bluetooth on phone and so fare so good for last 2 days.
Click to expand...
Click to collapse
BT sucks down too much battery life to leave on all the time for me.
That's what we have found to be the issue....everything works unless bt is toggled off then back on
Bt draining battery when not connected does not make much sense...it doesn't scan frequently once on from what I can tell. Would have to run some logs to verify
norbarb said:
I did something diffriend on my wifes skayrocket with stock rom and no root totaly clean...
I turn on bloototh on phone and connect to handset, connection is exelent so i never turn off bluetooth on phone and so fare so good for last 2 days.
Click to expand...
Click to collapse
Sent from my SAMSUNG-SGH-I727 using XDA App
tstaiano said:
I've not connected with a bluetooth headset, but I have HORRIBLE audio issues when using my Parrot 2.1 b'tooth speaker.
Rocket connects & keeps connection, but audio drops & is choppy - even when < 4' away.
White Skyrocket on faux's kernel & seanscreamz SkyIceCreamSandwich RC6.6 ROM.
Click to expand...
Click to collapse
Try with Wifi turned off and see if that helps
I'm running Sky Ice Cream Snadwich 6.5Z. I seem to have bluetooth issues with my Backbeat 903+ when Wifi is turned on. I just tested it. I hung up the call, turned off Wifi and the audio was much better. I still have to have the in-call volume turned way down though
I will say that the 903+ were kind of crappy when I used them with my iPhone 3GS too though. Again, had to turn the volume all the way down. Its too bad because I really loved the first gen of this headset
I was palying with bluetooth and I notice if i turn off Bluetooth PBAP and Bluetooth Share my connection to handset if perfect. Can somebody explain what are this two thinks and what role they have in phone ?
You can find Bluetooth info here:
(sorry new member... can't post outside links... search wikipedia for "Bluetooth profile")
It will explain what PBAP and all those other services that do not work and cause you grief...
I have a feeling that this issue with this model of phone could be because it is using Bluetooth 3.0, maybe the Bluetooth devices we are trying to connect to are not compatible or struggle with the data transfer rate?
In any case it is super annoying, lets hope the issue gets fixed with ICS. I am trying to use my SGS2 LTE (on Rogers in Canada) with my Bluetooth in my Hyundai Tucson 2010... it rarely connects, and when it does either it cannot download my address book or people cannot hear me.
I read in this thread "set it to connect automatically", I cannot find this setting on the phone, any help?
Thanks,
Marc
Every device I've tried with my note 10 has had awful bluetooth crackle unless I really turn down the volume. For some devices (car etc) this is fine, but for something like headphones they become unusable, either being too quiet or sounding awful.
Anyone run into this problem, or have a fix for it? I'm going to try factory resetting the phone and if that doesn't work I will get rid of it and buy something else.
I use my Mi Note 10 with Global rom with my Mondeo mk4 (FL). Full volume, zero crackle/issues.
Check Developer Options, as far as I know you can specify like codecs and whatnot. You might have to set that on your car.
Figured it out. The crackle for me happens when I'm connected to a weak 2.4GHz WiFi access point. Connecting to a 5GHz WiFi or a strong 2.4GHz signal solves the problem completely
It's co channel interference between WiFi and Bluetooth. Hopefully Xiaomi can make some improvements in updates (changing modulation, etc)