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

Bluetooth working OK with my Mercedes vehicle and LG wireless ear phones in the OWNER profile only. Problems with incoming calls in the GApps profile as described in Github issue #3174

GrapheneOS I’m not sure if my issue applies to this discussion, specially since I am on Build 2024031400. I don't know what QPR2 means.

I pretty much use Bluetooth only for transferring files. I do not use it for connected devices like watches or earbuds.
Recently I am experience file transfer failures when sending files from my Pixel 6pro (P6p) to my Surface Pro 5 (SP5) laptop. My P6p is running build number 2024031400 and my SP5 laptop is running Windows 10 Pro and is current with MS security updates.

I have noticed when I can’t send from my P6p to my SP5, my P6p can receive from my SP5. Most files being transferred are jpg and pdf ranging from 100kb to 4mb.

I’m happy to provide the GOS Support team with additional info if this is of interest and relevant to this discussion/thread. If it doesn’t apply, then sorry for the clutter.

Thanks :)

Along with my Watch 6 Classic, I also have an AsteroidOS Watch, I believe it also uses BLE, it pairs and operates properly, but can require several attemps to reconnect after disconnecting, in one case I had to reboot the watch, when it reconnects I have to accept some security pairing notice on the watch everytime, the watch never used to do that, but it does reconnect and operate, I will test it again once the Galaxy watch issue has been resolved, as I belive whatever is going on with that, is also causing this odd connection behaviour with AsteroidOS.

Something I would also like to add, this Oppo watch Im using with AsteroidOS connected to the Pixel 8 Pro has only lost 16% battery in 7hrs, the phone is also doing well, the drain only happens when the Samsumg watch is trying to connect, 7hrs and its almost flat.

We've found a revision of the Bluetooth module where we're able to get it to build with minor changes and the Galaxy Watch 6 Classic is working with it. We're currently working on narrowing down which changes are required to get it working so we can ship only the minimal set of changes needed to have it working with minimal chance of breaking anything else.

The problem is that we have a significantly newer revision of the code than the stock OS is using via an APEX module along with the stock OS module clearly going through a proper testing / stabilization process which did not happen for the open source tagged release of the Bluetooth module.

We should have it working again soon.

Just installed GrapheneOS for the first time on a PIxel 6 a few days ago. Cannot get Bluetooth to enable at all. I installed the default stable which appears to be 2024031400.

See the attached logs for the crashes. The crashes happen when I try to enable bluetooth. After trying to enable bluetooth it hangs and then eventually I get the popup "Bluetooth keeps crashing" which then allows me to show the debug log.

Log 1:

type:

crash
osVersion: google/oriole/oriole:14/AP1A.240305.019.A1/2024031400: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 0000000000064ec4 /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: fc346b3f8a42643dd45cc2b6b2c8252c)
#01 pc 0000000000938568 /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const)+632) (BuildId: 15c54dd1aa3c87c4985a88c6cf966388)
#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 0000000000a721b4 /apex/com.android.btservices/lib64/libbluetooth_jni.so (bluetooth::hal::HciHalHidl::start_aidl()::'lambda'(void
)::invoke(void)+100) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#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: ee54997167916b15561912b07ea90b61)
#07 pc 000000000005bba0 /system/lib64/libbinder.so (android::BpBinder::sendObituary()+144) (BuildId: ee54997167916b15561912b07ea90b61)
#08 pc 0000000000053c7c /system/lib64/libbinder.so (android::IPCThreadState::executeCommand(int)+5340) (BuildId: ee54997167916b15561912b07ea90b61)
#09 pc 0000000000051c10 /system/lib64/libbinder.so (android::IPCThreadState::joinThreadPool(bool)+704) (BuildId: ee54997167916b15561912b07ea90b61)
#10 pc 0000000000051938 /system/lib64/libbinder.so (android::PoolThread::threadLoop()+24) (BuildId: ee54997167916b15561912b07ea90b61)
#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: 9621419971dcd77532aef23f990552ee)
#13 pc 00000000000cf97c /apex/com.android.runtime/lib64/bionic/libc.so (pthread_start(void
)+204) (BuildId: fc346b3f8a42643dd45cc2b6b2c8252c)
#14 pc 0000000000066770 /apex/com.android.runtime/lib64/bionic/libc.so (
start_thread+64) (BuildId: fc346b3f8a42643dd45cc2b6b2c8252c)

Log 2:

type: crash
osVersion: google/oriole/oriole:14/AP1A.240305.019.A1/2024031400: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: 'assertion 'init_status == std::future_status::ready' failed - Can't start stack, last instance: starting HciHalHidl'
backtrace:
#00 pc 0000000000064ec4 /apex/com.android.runtime/lib64/bionic/libc.so (abort+164) (BuildId: fc346b3f8a42643dd45cc2b6b2c8252c)
#01 pc 000000000093835c /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const)+108) (BuildId: 15c54dd1aa3c87c4985a88c6cf966388)
#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 0000000000a6c778 /apex/com.android.btservices/lib64/libbluetooth_jni.so (bluetooth::StackManager::StartUp(bluetooth::ModuleList
, bluetooth::os::Thread)+712) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#05 pc 00000000003c74e0 /apex/com.android.btservices/lib64/libbluetooth_jni.so (bluetooth::shim::Stack::Start(bluetooth::ModuleList
)+192) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#06 pc 00000000003c72b4 /apex/com.android.btservices/lib64/libbluetooth_jni.so (bluetooth::shim::Stack::StartEverything()+980) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#07 pc 00000000003dea8c /apex/com.android.btservices/lib64/libbluetooth_jni.so (ShimModuleStartUp()+124) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#08 pc 000000000071fad8 /apex/com.android.btservices/lib64/libbluetooth_jni.so (module_start_up(module_t const)+200) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#09 pc 000000000071e708 /apex/com.android.btservices/lib64/libbluetooth_jni.so (init_stack_internal(bluetooth::core::CoreInterface
)+72) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#10 pc 000000000071e5c8 /apex/com.android.btservices/lib64/libbluetooth_jni.so (event_init_stack(std::
1::promise<void>, bluetooth::core::CoreInterface)+136) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#11 pc 000000000071e644 /apex/com.android.btservices/lib64/libbluetooth_jni.so (base::internal::Invoker<base::internal::BindState<void (
)(std::1::promise<void>, bluetooth::core::CoreInterface), std::1::promise<void>, base::internal::UnretainedWrapper<bluetooth::core::CoreInterface> >, void ()>::RunOnce(base::internal::BindStateBase)+52) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#12 pc 0000000000a921f4 /apex/com.android.btservices/lib64/libbluetooth_jni.so (base::debug::TaskAnnotator::RunTask(char const, base::PendingTask)+196) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#13 pc 0000000000a91738 /apex/com.android.btservices/lib64/libbluetooth_jni.so (base::MessageLoop::RunTask(base::PendingTask)+360) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#14 pc 0000000000a91a5c /apex/com.android.btservices/lib64/libbluetooth_jni.so (base::MessageLoop::DoWork()+460) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#15 pc 0000000000a94004 /apex/com.android.btservices/lib64/libbluetooth_jni.so (base::MessagePumpDefault::Run(base::MessagePump::Delegate
)+100) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#16 pc 0000000000aa0600 /apex/com.android.btservices/lib64/libbluetooth_jni.so (base::RunLoop::Run()+64) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#17 pc 000000000079b870 /apex/com.android.btservices/lib64/libbluetooth_jni.so (bluetooth::common::MessageLoopThread::Run(std::1::promise<void>)+336) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#18 pc 000000000079b330 /apex/com.android.btservices/lib64/libbluetooth_jni.so (bluetooth::common::MessageLoopThread::RunThread(bluetooth::common::MessageLoopThread, std::
1::promise<void>)+48) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#19 pc 000000000079be84 /apex/com.android.btservices/lib64/libbluetooth_jni.so (void
std::1::thread_proxy<std::1::tuple<std::1::unique_ptr<std::1::thread_struct, std::1::default_delete<std::1::thread_struct> >, void ()(bluetooth::common::MessageLoopThread, std::1::promise<void>), bluetooth::common::MessageLoopThread, std::1::promise<void> > >(void)+84) (BuildId: 68e2b99eab8e0494db3aef44541100d3)
#20 pc 00000000000cf97c /apex/com.android.runtime/lib64/bionic/libc.so (
pthread_start(void*)+204) (BuildId: fc346b3f8a42643dd45cc2b6b2c8252c)
#21 pc 0000000000066770 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: fc346b3f8a42643dd45cc2b6b2c8252c)

    Hi all:

    I own a Pixel 8, GrapheneOS build 2024031400, Android version (AP1A.240305.019.A1). I'm unable to get my BlueDriver Bluetooth OBD II scanner manufactured by Lemur Vehicle Monitors to connect to my device as of the recent changes. I'm glad I decided to read this whole thread, since we've already established there are lingering issues with the OBDLink MX+, even after the fixes pushed to the alpha branch. Were it not for my car getting a check engine light this week I would never have known there were problems with Bluetooth, which I use every day, because all my other stuff works fine.

    BlueDriver model is LSB2. I'm not sure what firmware version the scanner itself is since it's only printed in the BlueDriver app once the scanner is connected, which I can't do at the moment. App version is 7.13.2.

    I've tried, without success:

    • Deleting app cache

    • Resetting Bluetooth settings in GOS and deleting all other paired devices

    • Placing app in Exploit Compatibility Mode with all regular permissions granted (location, sensors, etc.)

    The scanner has difficulty pairing - sometimes it (seemingly) works, other times it will fail and GOS will notify me of the failure to pair. If it does pair correctly (seemingly), connecting never works. The app seems to cycle between a status of "connecting" and "connected" every few seconds when trying to connect. I have "Notify about system process crashes" on, developer mode off - the Bluetooth module doesn't seem to actually fail, at least that displays anything to me.

    I've already ruled out that this particular sensor might be bad because I've tried on current iOS, and it works without incident.

    I've submitted a ticket with Lemur for this issue too and CCed them this thread. Since, to my knowledge, BlueDriver hasn't gotten a firmware update in a while, I'm not entirely sure if this is an Android 14 issue or the scanner being too old.

    @muhomorr Emailed you two logs - one is trying to connect to scanner through app, other is having freshly paired scanner to phone and then trying to connect to scanner through app.

    emilycestmoi This appears to be a hardware issue, not an OS issue. Did you try Bluetooth on the stock OS? It doesn't seem related to this.

    Our latest release should resolves the upstream Android 14 QPR2 issues with the Galaxy Watch 6 Classic and likely many other Bluetooth devices. We still expect that some ancient insecure devices will no longer work by design but there shouldn't be more incompatibilities in GrapheneOS than the stock OS. If there are still any issues in GrapheneOS not present in the stock OS, please let us know.

    https://discuss.grapheneos.org/d/11638-grapheneos-version-2024032100-released

    It would be good to get some initial feedback about the new release and then we should probably move to a new thread for any further issues, which are likely also present in the stock OS but it will need to be confirmed.

      It would be good to get feedback about the other devices people had issues with after the QPR2 update beyond the 5th/6th generation Galaxy Watch which is confirmed to be working properly again.

      Did this also resolve the OBDLink issues? It was hopefully the same issue.

        I'm glad I can report that since updating to 2024032100 from beta channel, connection to OBDLink MX+ is working again. Didn't have to do anything special like resetting or unpairing, or anything. Just working!

        Thank you so much for your great job in getting this (AOSP?) issue tracked down!

        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.