• Announcements
  • Request for testing and feedback with Bluetooth on Android 14 QPR2 GrapheneOS

GrapheneOS Since the first QPR2 release I have issues on mx Pixel 7 listening to music. When I listen to music on Spotify, which is running in the workprofile, and turning the screen of, after approximately 5 minutes the audioserver crashes once and then the music is extremely stuttering.
Basically I can only listen to music now, when the screen is turned on

type: crash
osVersion: google/panther/panther:14/AP1A.240305.019.A1/2024031400:user/release-keys
uid: 1041 (u:r:audioserver:s0)
cmdline: /system/bin/audioserver
processUptime: 0s

signal: 11 (SIGSEGV), code 1 (SEGV_MAPERR), faultAddr 0
cause: null pointer dereference
threadName: AudioOut_15

backtrace:
    /system/bin/audioserver (android::EffectModule::setVolume(unsigned int*, unsigned int*, bool)+436, pc fd604)
    /system/bin/audioserver (android::EffectChain::setVolume_l(unsigned int*, unsigned int*, bool)+516, pc 1120e4)
    /system/bin/audioserver (android::MixerThread::prepareTracks_l(android::Vector<android::sp<android::IAfTrack> >*)+14888, pc 164818)
    /system/bin/audioserver (android::PlaybackThread::threadLoop()+3268, pc 1556c4)
    /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+368, pc 14280)
    /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+204, pc cf97c)
    /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64, pc 66770)

If recommended I can also open a Issue on Github

    Hi, similar to letgamer and emilycestmoi, Bluetooth disconnects while playing music when screen is locked. If on call, there is disconnect and the call is dropped. No such problem is there while the screen remains on. I am using a P7 pro running 2024032100 from Beta channel.

    • Here are the logs for Bluetooth crash when it is simply switched on/a device is connected. This occurs 2-3 mins post screen lock
    type: crash
    osVersion: google/cheetah/cheetah:14/AP1A.240305.019.A1/2024032100:user/release-keys
    uid: 1002 (u:r:bluetooth:s0)
    cmdline: com.android.bluetooth
    processUptime: 0s
    
    abortMessage: The Bluetooth HAL died.
    
    signal: 6 (SIGABRT), code -1 (SI_QUEUE)
    threadName: binder:31870_5
    
    backtrace:
        /apex/com.android.runtime/lib64/bionic/libc.so (abort+164, pc 64e84)
        /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const*)+632, pc 938568)
        /apex/com.android.art/lib64/libbase.so (android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_0::__invoke(char const*)+80, pc 19ad0)
        /system/lib64/liblog.so (__android_log_assert+292, pc 70e4)
        /apex/com.android.btservices/lib64/libbluetooth_jni.so (bluetooth::hal::HciHalHidl::start_aidl()::'lambda'(void*)::__invoke(void*)+100, pc a71b24)
        /system/lib64/libbinder_ndk.so (AIBinder_DeathRecipient::TransferDeathRecipient::binderDied(android::wp<android::IBinder> const&)+68, pc 110d4)
        /system/lib64/libbinder.so (android::BpBinder::reportOneDeath(android::BpBinder::Obituary const&)+144, pc 5bc90)
        /system/lib64/libbinder.so (android::BpBinder::sendObituary()+144, pc 5bba0)
        /system/lib64/libbinder.so (android::IPCThreadState::executeCommand(int)+5340, pc 53c7c)
        /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+704, pc 51c10)
        /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24, pc 51938)
        /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+368, pc 14280)
        /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+140, pc e3ddc)
        /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+204, pc cf93c)
        /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64, pc 66730)
    type: crash
    osVersion: google/cheetah/cheetah:14/AP1A.240305.019.A1/2024032100:user/release-keys
    package: com.android.bluetooth:34
    process: com.android.bluetooth
    processUptime: 0 + 0 ms
    
    signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
    Abort message: 'The Bluetooth HAL died.'
    
    backtrace:
          #00 pc 0000000000064e84  /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: a8cd74908de1830f20f574f8d622db82)
          #01 pc 0000000000938568  /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const*)+632) (BuildId: e2d4c7ae9fa225f36a825be113720b47)
          #02 pc 0000000000019ad0  /apex/com.android.art/lib64/libbase.so (android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_0::__invoke(char const*)+80) (BuildId: 8e8e779c9a82b7943fb5ad7dbe775048)
          #03 pc 00000000000070e4  /system/lib64/liblog.so (__android_log_assert+292) (BuildId: 87375b1b8db4710fc46cd6f649211f8d)
          #04 pc 0000000000a71b24  /apex/com.android.btservices/lib64/libbluetooth_jni.so (bluetooth::hal::HciHalHidl::start_aidl()::'lambda'(void*)::__invoke(void*)+100) (BuildId: ab62af0796a4b2b91b692d415cd9e6d1)
          #05 pc 00000000000110d4  /system/lib64/libbinder_ndk.so (AIBinder_DeathRecipient::TransferDeathRecipient::binderDied(android::wp<android::IBinder> const&)+68) (BuildId: 43adb007c2150d99d37b2e68e3c3dbc0)
          #06 pc 000000000005bc90  /system/lib64/libbinder.so (android::BpBinder::reportOneDeath(android::BpBinder::Obituary const&)+144) (BuildId: 2e6aefaf1692593d70d788d9d68f7aae)
          #07 pc 000000000005bba0  /system/lib64/libbinder.so (android::BpBinder::sendObituary()+144) (BuildId: 2e6aefaf1692593d70d788d9d68f7aae)
          #08 pc 0000000000053c7c  /system/lib64/libbinder.so (android::IPCThreadState::executeCommand(int)+5340) (BuildId: 2e6aefaf1692593d70d788d9d68f7aae)
          #09 pc 0000000000051c10  /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+704) (BuildId: 2e6aefaf1692593d70d788d9d68f7aae)
          #10 pc 0000000000051938  /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24) (BuildId: 2e6aefaf1692593d70d788d9d68f7aae)
          #11 pc 0000000000014280  /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+368) (BuildId: 75de91514ce8b3d8100d1f28757ff5ac)
          #12 pc 00000000000e3ddc  /system/lib64/libandroid_runtime.so (android::AndroidRuntime::javaThreadShell(void*)+140) (BuildId: f0b54f975e05f839d33bf9b07a3b87c8)
          #13 pc 00000000000cf93c  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+204) (BuildId: a8cd74908de1830f20f574f8d622db82)
          #14 pc 0000000000066730  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: a8cd74908de1830f20f574f8d622db82)
    • In case of bluetooth connected during a call, after 2-3 mins of screen lock, these following crashes occur.
      type: crash
      osVersion: google/cheetah/cheetah:14/AP1A.240305.019.A1/2024032100:user/release-keys
      uid: 1041 (u:r:audioserver:s0)
      cmdline: /system/bin/audioserver
      processUptime: 0s
      
      abortMessage: TimeCheck timeout for IAudioPolicyService::setStreamVolumeIndex scheduled 14:40:49.683 on thread 1129
      Timeout ms 5000.000000 elapsed steady ms 5001.132324 elapsed system ms 5001.154785
      HAL pids [ 996 ]
      now 14:40:55.721
      secondChanceCount 2
      analysis [  ]
      timeout [ { IAudioPolicyService::setStreamVolumeIndex scheduled 14:40:49.684 deadline :52.684 tid 1129 } ]
      pending [ { IAudioPolicyService::isStreamActive scheduled 14:40:49.834 deadline :52.834 tid 1085 } ]
      retired [ { IAudioFlinger::setParameters scheduled 14:40:16.708 deadline :19.708 tid 1129 } { StreamOutHalHidl::standby scheduled 14:40:19.303 deadline  tid 1717 } { IAudioPolicyService::isStreamActive scheduled 14:40:49.663 deadline :52.663 tid 1129 } { IAudioPolicyService::isStreamActive scheduled 14:40:49.671 deadline :52.671 tid 1129 } ]
      timeout(1129) callstack [
        #00 pc 00000000000bbd08  /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+8) (BuildId: a8cd74908de1830f20f574f8d622db82)
        #01 pc 000000000006f2fc  /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+156) (BuildId: a8cd74908de1830f20f574f8d622db82)
        #02 pc 0000000000051a78  /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+296) (BuildId: 2e6aefaf1692593d70d788d9d68f7aae)
        #03 pc 0000000000051938  /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24) (BuildId: 2e6aefaf1692593d70d788d9d68f7aae)
        #04 pc 0000000000014280  /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+368) (BuildId: 75de91514ce8b3d8100d1f28757ff5ac)
        #05 pc 00000000000cf93c  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+204) (BuildId: a8cd74908de1830f20f574f8d622db82)
        #06 pc 0000000000066730  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: a8cd74908de1830f20f574f8d622db82)
      ]
      
      signal: 6 (SIGABRT), code -1 (SI_QUEUE)
      threadName: binder:1085_2
      
      backtrace:
          /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+8, pc bbd08)
          /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+156, pc 6f2fc)
          /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+296, pc 51a78)
          /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24, pc 51938)
          /system/lib64/libutils.so (android::Thread::_threadLoop(void*)+368, pc 14280)
          /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+204, pc cf93c)
          /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64, pc 66730)
      type: crash
      osVersion: google/cheetah/cheetah:14/AP1A.240305.019.A1/2024032100:user/release-keys
      uid: 1041 (u:r:hal_audio_default:s0)
      cmdline: /vendor/bin/hw/android.hardware.audio.service
      processUptime: 0s
      
      signal: 35 (<debuggerd signal>), code -1 (SI_QUEUE), senderUid 1041
      threadName: binder:996_2
      
      backtrace:
          /apex/com.android.runtime/lib64/bionic/libc.so (__ioctl+8, pc bbd08)
          /apex/com.android.runtime/lib64/bionic/libc.so (ioctl+156, pc 6f2fc)
          /apex/com.android.vndk.v35/lib64/libhidlbase.so (android::hardware::IPCThreadState::joinThreadPool(bool)+320, pc 5e530)
          /vendor/bin/hw/android.hardware.audio.service (main+3980, pc 306c)
          /apex/com.android.runtime/lib64/bionic/libc.so (__libc_init+104, pc 5c068)
      type: crash
      SystemUptimeMs: 6125102
      Process: system_server
      Build: google/cheetah/cheetah:14/AP1A.240305.019.A1/2024032100:user/release-keys
      Crash-Handler: com.android.internal.os.RuntimeInit$KillApplicationHandler
      Loading-Progress: 1.0
      Dropped-Count: 0
      
      java.lang.RuntimeException: android.os.DeadObjectException
      	at android.bluetooth.BluetoothHeadset.getAudioState(BluetoothHeadset.java:865)
      	at com.android.server.audio.BtHelper.isBluetoothScoOn(BtHelper.java:437)
      	at com.android.server.audio.AudioDeviceBroker.preferredCommunicationDevice(AudioDeviceBroker.java:2421)
      	at com.android.server.audio.AudioDeviceBroker.updateActiveCommunicationDevice(AudioDeviceBroker.java:675)
      	at com.android.server.audio.AudioDeviceBroker.getCommunicationDeviceInt(AudioDeviceBroker.java:644)
      	at com.android.server.audio.AudioDeviceBroker.getCommunicationDevice(AudioDeviceBroker.java:638)
      	at com.android.server.audio.AudioService.getCommunicationDevice(AudioService.java:6524)
      	at android.media.AudioManager.getCommunicationDevice(AudioManager.java:8872)
      	at com.android.server.telecom.CallAudioRouteStateMachine.processLegacySpeakerCommunicationDevice(CallAudioRouteStateMachine.java:2112)
      	at com.android.server.telecom.CallAudioRouteStateMachine.setSpeakerphoneOn(CallAudioRouteStateMachine.java:1847)
      	at com.android.server.telecom.CallAudioRouteStateMachine.-$$Nest$msetSpeakerphoneOn(CallAudioRouteStateMachine.java:0)
      	at com.android.server.telecom.CallAudioRouteStateMachine$ActiveEarpieceRoute.enter(CallAudioRouteStateMachine.java:379)
      	at com.android.internal.util.StateMachine$SmHandler.invokeEnterMethods(StateMachine.java:1042)
      	at com.android.internal.util.StateMachine$SmHandler.performTransitions(StateMachine.java:888)
      	at com.android.internal.util.StateMachine$SmHandler.handleMessage(StateMachine.java:828)
      	at android.os.Handler.dispatchMessage(Handler.java:107)
      	at android.os.Looper.loopOnce(Looper.java:232)
      	at android.os.Looper.loop(Looper.java:317)
      	at android.os.HandlerThread.run(HandlerThread.java:68)
      Caused by: android.os.DeadObjectException
      	at android.os.BinderProxy.transactNative(Native Method)
      	at android.os.BinderProxy.transact(BinderProxy.java:586)
      	at android.bluetooth.IBluetoothHeadset$Stub$Proxy.getAudioState(IBluetoothHeadset.java:787)
      	at android.bluetooth.BluetoothHeadset.getAudioState(BluetoothHeadset.java:861)
      	... 18 more

    Hope this helps in identifying the problem. BTW, big fan of Graphene OS. Thanks a lot for all the effort.

      Like user topro, I too am able to connect to my bluetooth OBDLink (LX model for me) using beta channel build 2024032100. Thanks for doing this!! Hopefully this tagging issue is just a one-off mistake on their part and not part of a new pattern.

      Hi all,
      hm, so this is strange. I still can't get the Pebble Time paired using the Gadgetbridge app though I can still pair it using the system preferences. With latest alpha release, of course.

      BUT using the old, original Pebble app, it now works! 🥳

      I used the Pebble app for initial configuration; but as it didn't work well with GrapheneOS 13 when I set everything up in autumn 2022 I deactivated it (but kept it). Now with current GrapheneOS the app seems to work well again and I'll keep it to the disadvantage of Gadgetbridge. Have to do a longer term test (fingers crossed).

      Now it seems to me the problem is not the watch - but rather the Gadgetbridge app, maybe in conjunction with GrapheneOS?

      I added my comment to their specific issue here: https://codeberg.org/Freeyourgadget/Gadgetbridge/issues/3596

      Cheers

      @GrapheneOS Thank you, yes it was indeed a hardware error. I bought the phone to use GrapheneOS without trying stock Android. Bluetooth is broken on stock Android as well. Phone was returned. Thank you for all your work!

      • [deleted]

      • Edited

      Bluetooth tests with Pixel 5 on 2024032100 alpha release:

      Garmin watch (2021) syncs fine through bluetooth with garmin connect app = WORKING
      Polar watch (2020) syncs fine through bluetooth with Polar Flow app = WORKING
      Polar bicycle computer (2015) syncs fine through bluetooth with Polar Flow app = WORKING

      All worked fine before & after QPR2 .

      matchboxbananasynergy Yes, broken on stock as well. However, there is another observation.

      This issue occurs only when WLAN adaptor is switched on simultaneously (not with mobile data on or when WLAN is switched off) with Bluetooth. So, probably not purely a hardware issue and probably stems from the HAL.

      However, for anyone else facing the same issue, check if the WIFI is switched off. It works then.

      Hi guys, yesterday the update of 2024032100 landed on my phone. Did not have yet the opportunity to test it with my medical device just yet as I am on a journey.

      However, I am able to report that this version somehow broke the internet sharing between 2 android phones via bluetooth (ie. not WiFi hotspot). Tested between Pixel 7 with GOS and Pixel 5 with LineageOS

        GrapheneOS unstickied the discussion .

        @GrapheneOS Like the OBDLink I can confirm BlueDriver scan tool is working with the 2024032100 release.

        Thanks for all devs' hard work!

        I can also confirm that the Galaxy Watch 5 Pro works like before. Nothing I needed to change on my end. Just installed the Alpha and the watch was back on track.

        Thanks a lot for that!

        Pixel 7 Pro - beta channel 2024032100

        Can confirm this update fixed my issues with OBFLink MX+

        Thank you!

        I can confirm both Watch 6 Classic and my Oppo running AsteroidOS are working properly, battery on the Samsung watch seems to drain a little faster than I expected, its seems to run the watch down faster than Wifi did, but it last me the day so I dont care at this point, good work GOS team.

        4 days later

        Since this does not yet seem to have been reported yet:

        With version 2024032100 on the Pixel 4a (5G) (updated via Beta release channel), the battery percentage of paired Bluetooth headphones is no longer shown (neither in the Bluetooth quick toggle nor in System Settings > Connected Devices).

        Is this the currently expected behavior? And will the battery percentage display return in the next versions?

        4 days later