Jump to content

Shuffle mode keeps turning off and Repeat keeps turning on


Byron

Recommended Posts

  • 2 weeks later...
  • Replies 75
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

On 3/20/2024 at 6:13 PM, andrewilley said:

The easiest thing would be to clear the log, then do the BT connection or whatever action causes the issue. Not so much in the log to wade through that way.

Andre

First screenshot is my car bluetooth that turn the shuffle off on connection. The 2nd screenshot is my bluetooth speaker in my house that doesn't do it on connection

ShuffleSwitch.jpg

NoShuffle.jpg

Link to comment
Share on other sites

@Donnie1490 Your headunit is sending Repeat and Shuffle commands during the BT connection process:

image.png

Poweramp is responding correctly to those commands and adjusting the modes as instructed. We don't know why Android 14 is passing these commands on when previous versions did not, but the latest release of Poweramp (e.g. build 981) include an option to attempt to ignore these command when they are not wanted. See Settings=>Headset/Bluetooth=>Ignore Repeat/Shuffle. This workaround will be improved further in future releases, as some instances of these commands still seem to be getting through.

Andre 

Link to comment
Share on other sites

As I mentioned, I'm still having this issue, so decided to do a little test this morning. When I arrived at work I decided to cycle through the repeat and shuffle buttons on my head unit just to see what happens. I should note that I'm only having issues with Repeat, Shuffle behaves properly. Not sure why that may be. Here's the log from the moment I arrived at work:

 

==================

07:39:11.996 PSMediaSessionHelper.Callback onSetRepeatMode

repeatMode=1 com.google.android.bluetooth

==================

07:39:17.666 PSMediaSessionHelper.Callback onSetRepeatMode

repeatMode=2 com.google.android.bluetooth

==================

07:39:22.015 PSMediaSessionHelper.Callback onSetRepeatMode

repeatMode=1 com.google.android.bluetooth

==================

07:39:24.028 PSMediaSessionHelper.Callback onSetRepeatMode

repeatMode=2 com.google.android.bluetooth

==================

07:39:26.386 PSMediaSessionHelper.Callback onSetRepeatMode

repeatMode=0 com.google.android.bluetooth

==================

07:39:26.822 PSMediaSessionHelper.Callback onSetRepeatMode

repeatMode=2 com.google.android.bluetooth

==================

07:39:31.534 PSMediaSessionHelper.Callback onSetRepeatMode

repeatMode=1 com.google.android.bluetooth

==================

07:39:33.353 PSMediaSessionHelper.Callback onSetRepeatMode

repeatMode=2 com.google.android.bluetooth

==================

07:39:35.773 PSMediaSessionHelper.Callback onSetRepeatMode

repeatMode=0 com.google.android.bluetooth

==================

07:39:36.061 PSMediaSessionHelper.Callback onSetRepeatMode

repeatMode=2 com.google.android.bluetooth

==================

07:39:52.923 PSMediaSessionHelper.Callback onSetShuffleMode

shuffleMode=1 com.google.android.bluetooth

==================

07:39:54.386 PSMediaSessionHelper.Callback onSetShuffleMode

shuffleMode=0 com.google.android.bluetooth

==================

07:39:57.101 PSMediaSessionHelper.Callback onSetShuffleMode

shuffleMode=1 com.google.android.bluetooth

==================

07:39:58.909 PSMediaSessionHelper.Callback onSetShuffleMode

shuffleMode=0 com.google.android.bluetooth

==================

07:40:06.167 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON

KEYCODE_MEDIA_PAUSE ACTION_DOWN name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=476008964 sourcePak=com.google.android.bluetooth A2dpOn  isAvrcp  flags=0x0 playerState=1

==================

07:40:06.406 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON

KEYCODE_MEDIA_PAUSE ACTION_UP name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=476009016 sourcePak=com.google.android.bluetooth A2dpOn  isAvrcp  flags=0x0 playerState=1

==================

07:40:06.421 PlayerService PAUSE

from PSMediaButtonReceiver pausePlaying

==================

07:40:06.590 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON

KEYCODE_MEDIA_PAUSE ACTION_DOWN name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=476009386 sourcePak=com.google.android.bluetooth A2dpOn  isAvrcp  flags=0x0 playerState=2

==================

07:40:06.648 PSMediaButtonReceiver android.intent.action.MEDIA_BUTTON

KEYCODE_MEDIA_PAUSE ACTION_UP name=Virtual source=0x0 sources=0x301 virt=true repeat=0 actionTime=476009445 sourcePak=com.google.android.bluetooth A2dpOn  isAvrcp  flags=0x0 playerState=2

==================

07:40:10.022 HeadsetPlugReceiver headset event

disconnection BT=false am mode=0 no_keep_notif_on_dscn=false

==================

07:40:10.024 BTReceiver headset event

disconnection BT=true am mode=0 Ford Audio no_keep_notif_on_dscn=false

==================

07:40:11.076 PlayerService onRoutingChanged

newDevice=speaker oldDevice=bt

==================

07:40:11.076 PlayerService reloadPipeline

 allowPlaying=false forceResume=false state after reload=2

 

It does appear as though there's an extra command being processed by PA around half a second after the setting is changed to 'repeatMode=0', (either via the head unit or in PA). I can't believe that all these various head units (multiple makes of cars at that!) are suddenly sending these additional signals, especially when I know my head unit has not been updated since I've had it. It also only seems to be happening on Android 14, and only since the day of upgrading in my case, so it has to be something in the OS causing the issue.

Could it be the case that the Google/Android Bluetooth API is sending a confirmation signal to the head unit incorrectly which is triggering a change of state at the head unit end, triggering a further Bluetooth command to come through to PA???

Looking forward to the next beta, with the improvements to ignoring the repeat/shuffle commands. :)

Thanks, Martin

Link to comment
Share on other sites

  • 2 weeks later...

I agree. I think this is probably an Android issue, not a car/headunit issue. I have a Mazda 3 Neo 2013. I wonder if Max could upstream this issue to Google and work with them for a fix instead of trying to work around the issue in Poweramp and leaving the problem in Android.

Link to comment
Share on other sites

  • 3 weeks later...

The workaround I found is making sure Poweramp is closed out of your recent apps before you connect to your car bluetooth. If it's in your recent apps and you reconnect to BT, it'll throw your shuffle off. I'm on the latest version, no beta. I've tested it multiple times.

Link to comment
Share on other sites

Posted (edited)

Using: build-981-uni

Full Version - 64 bit

Hello. First post here. I love Poweramp! I do not really like Shuffle so much though.

I am having the same issue. As of late 2023, my 2017 Subaru Forester's head unit started changing my shuffle and repeat settings on my Galaxy S23 whenever the BlueTooth was connected. I emailed Poweramp support and they were very helpful, sending me a link to update the main trial app. I updated the app. And I made sure to turn on the Ignore Repeat/Shuffle commands in Settings. The issue still occurred. We just got a new/used car, a 2018 Subaru Forester, and the same issue is occurring. At first I thought it was either the car's head unit OR Poweramp itself. But thanks to the helpful posters here it sure seems like this issue is related to an update on the phone in late 2023. As soon as I read more about it, that checked out. The problem never occurred before that update when using Poweramp on this phone and my previous phone across several cars.

For the 2017 car I would have all Shuffle "OFF" and the Repeat setting is "Straight Line w/Arrow head" ---> (Jump to next category). In the other car, my Shuffle AND Repeat settings would change when the BlueTooth connected to the car: Shuffle would turn from OFF to ON (first setting: "crossed bent arrows" Shuffle All Songs). And Repeat would change from "straight arrow" (Jump to next category) to "2 bent arrows" (Jump to the first song in a category).

But... now I see that the newer 2018 car will only change the Repeat setting (as above) and leave the Shuffle alone when the BT connects. Whew... one down... this is more tolerable but still a pain. At least the Shuffle is not turning on (so far...)

I can see it happening in real time when I connect the BlueTooth in the car. My preferred phone Pwrmp app Repeat/Shuffle settings are all just where I like them from my last playback session... and then... as soon as the connection is made with the car, the Repeat icon on the phone changes right before my eyes.  Hope that a future update on the phone may help. Or on Poweramp.

Please let me know any other tips, tricks, new information if possible.

Here are Last Processed Commands after my latest try in the car (Ignore Repeat/Shuffle is on in Settings😞

image.png.1c5067c85f4b78be585b1bebdaf79a0d.png

Edited by BriD55
Link to comment
Share on other sites

@BriD55 Your phone has presumably been updated to Android 14, which is what will have caused the problem (see earlier messages in this thread). We still don't know why Android has only now started passing on these commands from car head units, but Poweramp is just following the instructions it receives. Max thought he'd solved it with the 'Ignore Repeat/Shuffle' option, but some do still seem to getting through (it's hard to test every situation as it only affects certain devices connecting to certain car head units). It should be further addressed in the next release of Poweramp though, whenever that occurs. Or maybe Google/Samsung will correct the issue from their end, as it only started happening with Android 14.

Andre

Andre

Link to comment
Share on other sites

Hello,

I had already posted the problem some time ago - I have recently noticed the following:

The shuffle problem only occurs when Poweramp automatically connects to the car via Bluetooth.
If no automatic connecture is done, the shuffle mode is not activated - everything works as it should.
Does this possibly be related to the automatic connecting?

Thank you very much

George

Link to comment
Share on other sites

@sorosch Yes, this thread is discussing that exact issue. It only happens on Android 14 devices, and only with certain car headunits when they connect to phones via Bluetooth (including some Android Auto connections, which often use BT for their audio component). For some reason Android 14 has started passing on Repeat/Shuffle configuration commands in these circumstances (see logs above).

Max has already coded some additional workarounds for the new 'Ignore Repeat/Shuffle' option, which will be included in the next Poweramp release. There hasn't been a maintenance/bugfix build released since 981, so I assume we're waiting for the next feature update to be released to beta.

Andre

Link to comment
Share on other sites

  • 2 weeks later...

Is any additional data needed, i.e.: "Last Processed Commands" output from affected systems?  This has been driving me mad for some time now.  It seems like it's actually gotten worse.  It didn't seem to happen every time I connected to my car until the past month or two -- but I could just be noticing it more since tracking down exactly which device was causing it.

Otherwise, I am very anxiously awaiting another beta to try and address this.  Not being able to listen to a playlist in shuffled order makes driving more frustrating than it already is. ;)

If there was a "randomize" option to the "Re-sort" playlist, I'd use that as a workaround.

Link to comment
Share on other sites

1 hour ago, andrewilley said:

There is, it's at the bottom of the list of re-sorting modes.

Oops.  I even checked before writing that, but I forgot that options panel scrolls. 😕

Thanks.

Link to comment
Share on other sites

  • 1 month later...

Any update on this? I just bought a new car and I am now facing this same exact issue. I didn't have this issue on my previous car. I have a pixel 8 pro. 

Has anyone tried messing with the option in the developer menu? Maybe setting it to an older version like avrcp 1.3 might help... 

Screenshot_20240717-081950.png

Link to comment
Share on other sites

3 hours ago, venom4911 said:

Any update on this?

The issue is an Android one. As of Android 14, and only when connecting to some car headunits, Android has been passing through spurious Repeat and Shuffle setting commands, which Poweramp is actioning. You can see them in Poweramp's Last Processed Commands log.

The Poweramp dev @maxmp did create a workaround in one of the most recent beta builds, but that only seems to have resolved the issue in some cases. He indicated that the next release would have some more code applied to it, but unfortunately there has not been a new beta (or stable) update since before Christmas, so there has not yet been an opportunity to try his revised workaround.

Andre

Link to comment
Share on other sites

  • 1 month later...

Hi. After upgrading to an android 14 phone i've found myself in this boat. The beta is nice and helps half the time, sadly often times the shuffle first gets sent out 11-12 seconds after connection, while the Poweramp beta option to ignore all bluetooth slider stops at 10 seconds. Would love to see it increased to 15, or even be able to select up to 30 seconds!

16:08:05.335 BTReceiver headset event
connection BT=true am mode=0 AUDI MMI 3441
==================
16:08:16.551 PSMediaSessionHelper.Callback onSetRepeatMode
repeatMode=2 com.google.android.bluetooth
==================
16:08:16.604 PSMediaSessionHelper.Callback onSetShuffleMode
shuffleMode=0 com.google.android.bluetooth

 

Best regards;

Link to comment
Share on other sites

  • 3 weeks later...

I meant to update sooner, but a recent build (985, I think -- not the 986 build I got today) seems to have resolved this for me.  I have an older Mazda which was killing shuffle and repeat but that's no longer happening.

Thanks!

Link to comment
Share on other sites

Either this regressed from v985 to v986 or (more likely) I'm losing my mind and it wasn't actually resolved as I thought.

I took a drive yesterday and noticed it was playing without shuffling once again.

Sorry for the false report of success (though there is a very small chance it is a regression, I guess).  I'll try to make time to look closer at it in the next day or so.

Link to comment
Share on other sites

9 hours ago, tmz said:

Either this regressed from v985 to v986 or (more likely) I'm losing my mind and it wasn't actually resolved as I thought.

I took a drive yesterday and noticed it was playing without shuffling once again.

Sorry for the false report of success (though there is a very small chance it is a regression, I guess).  I'll try to make time to look closer at it in the next day or so.

Gah!  As I suspected, the latter option (losing my mind) was more likely.

I have been switching between an old and new device recently and I did not toggle the "Ignore Repeat/Shuffle" option in the settings on the new device I used yesterday. 🤦‍♂️

I should know better than to test or post while I'm too distracted by other things.  I'll endeavor to check this more carefully and methodically over the weekend to be sure I was just being daft. :)

Link to comment
Share on other sites

@tmz the option should work, but we can't enable it by default as this kind of breaks that new shiny Android feature - more headunit commands/buttons are now recognized and processed by the Android 14+ devices. Granted the feature is sometimes undesired by the users, and it looks like being untested by headunit manufacturers and Android development team - that's why we have that workaround option.

Link to comment
Share on other sites

6 hours ago, maxmp said:

@tmz the option should work, but we can't enable it by default as this kind of breaks that new shiny Android feature - more headunit commands/buttons are now recognized and processed by the Android 14+ devices. Granted the feature is sometimes undesired by the users, and it looks like being untested by headunit manufacturers and Android development team - that's why we have that workaround option.

Yep, it works as it should.  I just got out of whack when I tested once with my old device where I had it set and then later with a new device where I didn't export and import the settings entirely.

And i completely understand why the default is to not ignore those signals.  My head unit is in a 10 year old car now, so it's not surprising that it doesn't behave as well (or the same) as some newer systems.

Thanks for all the work @maxmp, as always!

Link to comment
Share on other sites

Also a short feedback from me, as that affected me - I also posted more subject. The way it looks, Poweramp works again how it should - the individual tracks at the BMW are now displayed on the display. I continue to watch this - and get in touch. Thank you very much.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...