[Verizon Samsung Galaxy S 4] vacaloca:
Yes, I have complained to Samsung, and I will try to follow up with the ticket I mentioned in the OP, and tell them I have performed a hard reset... since I actually have now. I sent them an e-mail with the logcat attached, being very clear about the issue and all the 'approved' troubleshooting steps I had done, so hopefully someone competent looks at it.

While I do agree that the Bluetooth firmware in the car might be ancient, it has always worked since 2004 on every single cell phone I've had... starting from the Motorola E815 and going forward.... so I don't think it's my car's bluetooth that has the issue. :)

I felt like debugging a bit this morning, so I turned on logcat and reproduced the issue on my phone. One thing I noticed is that a lot of the stock apps (SVoice, Visual Voice Mail, SHealth, possibly others) have event actions associated with bluetooth on the log. I used the stock debloat ROM from here: http://xdaforums.com/showthread.php?t=2296109 which has most if not all of those apps removed, and tested again... however the apps were not the problem, it seems the issue is related to the bluetooth stack/firmware itself.

I tried to log dmesg output, but I didn't see anything meaningful, but it's possible I clipped the times that the problem occurred, so I'll try again. As for logcat itself (only lines that have 'Bluetooth' in them, here it is (the first number in parenthesis is the line number of the logcat capture): *Note: this was taken before I did the second test on the bare-bones ROM.

I could provide the full capture if anyone is interested.

(14508):06-01 05:46:03.309 D/BluetoothRemoteDevices( 1606): aclStateChangeCallback: State:Connected to Device:00:02:C7:20:AF:43
(14509):06-01 05:46:03.329 D/BluetoothRemoteDevices( 1606): Remote Device name is: HANDS FREE
(14510):06-01 05:46:03.329 V/BluetoothEventManager( 6305): Received android.bluetooth.device.action.NAME_CHANGED
(14511):06-01 05:46:03.339 D/BluetoothRemoteDevices( 1606): Remote class is:2098184
(14512):06-01 05:46:03.339 D/BluetoothDevicePreference( 6305): profile ::HEADSET connectionStatus::0
(14513):06-01 05:46:03.349 D/BluetoothDevicePreference( 6305): Is my device connected::false
(14514):06-01 05:46:03.349 I/BluetoothDevicePreference( 6305): summaryResId != 0
(14515):06-01 05:46:03.349 D/BluetoothDevicePreference( 6305): profile ::HEADSET connectionStatus::0
(14516):06-01 05:46:03.349 D/BluetoothDevicePreference( 6305): Is my device connected::false
(14517):06-01 05:46:03.349 I/BluetoothDevicePreference( 6305): summaryResId != 0
(14518):06-01 05:46:03.349 D/BluetoothHeadset( 6305): getConnectionState()
(14519):06-01 05:46:03.349 D/BluetoothHeadset( 6305): getConnectionState() in if statement
(14526):06-01 05:46:03.349 V/BluetoothEventManager( 6305): Received android.bluetooth.device.action.CLASS_CHANGED
(14527):06-01 05:46:03.359 D/BluetoothDevicePreference( 6305): profile ::HEADSET connectionStatus::0
(14528):06-01 05:46:03.359 D/BluetoothDevicePreference( 6305): Is my device connected::false
(14529):06-01 05:46:03.359 I/BluetoothDevicePreference( 6305): summaryResId != 0
(14530):06-01 05:46:03.359 D/BluetoothDevicePreference( 6305): profile ::HEADSET connectionStatus::0
(14531):06-01 05:46:03.359 D/BluetoothDevicePreference( 6305): Is my device connected::false
(14532):06-01 05:46:03.359 I/BluetoothDevicePreference( 6305): summaryResId != 0
(14533):06-01 05:46:03.359 D/BluetoothHeadset( 6305): getConnectionState()
(14534):06-01 05:46:03.359 D/BluetoothHeadset( 6305): getConnectionState() in if statement
(14541):06-01 05:46:03.369 I/VVM Application( 3348): -----------------Action: android.bluetooth.device.action.ACL_CONNECTED
(14542):06-01 05:46:03.369 E/VVM -- BluetoothDevice( 3348): Failed to stop Bluetooth !!!!!!!
(14553):06-01 05:46:03.409 D/BluetoothNotiBroadcastReceiver( 6305): onReceive
(14555):06-01 05:46:03.429 D/BluetoothHeadset( 3348): Proxy object connected
(14565):06-01 05:46:03.629 D/BluetoothHeadset( 6305): connect(00:02:C7:20:AF:43)
(14573):06-01 05:46:03.649 I/BluetoothHeadsetServiceJni( 1606): connectHfpNative: sBluetoothHfpInterface: 0x7623f0ec
(14576):06-01 05:46:03.649 D/BluetoothAdapterProperties( 1606): CONNECTION_STATE_CHANGE: 00:02:C7:20:AF:43: 0 -> 1
(14579):06-01 05:46:03.649 D/BluetoothAdapterService(1114561256)( 1606): Get Bonded Devices being called
(14580):06-01 05:46:03.649 D/CachedBluetoothDevice( 6305): Command sent successfully:CONNECT Address:mDevice Profile:HEADSET
(14581):06-01 05:46:03.649 D/BluetoothDevicePreference( 6305): profile ::HEADSET connectionStatus::0
(14582):06-01 05:46:03.649 D/BluetoothDevicePreference( 6305): Is my device connected::false
(14583):06-01 05:46:03.649 I/BluetoothDevicePreference( 6305): summaryResId != 0
(14584):06-01 05:46:03.649 D/BluetoothDevicePreference( 6305): profile ::HEADSET connectionStatus::0
(14589):06-01 05:46:03.659 D/BluetoothDevicePreference( 6305): Is my device connected::false
(14590):06-01 05:46:03.659 I/BluetoothDevicePreference( 6305): summaryResId != 0
(14591):06-01 05:46:03.659 D/BluetoothHeadset( 6305): getConnectionState()
(14592):06-01 05:46:03.659 D/BluetoothHeadset( 6305): getConnectionState() in if statement
(14606):06-01 05:46:03.679 V/BluetoothEventManager( 6305): Received android.bluetooth.headset.profile.action.CONNECTION_STATE_CHANGED
(14607):06-01 05:46:03.679 D/CachedBluetoothDevice( 6305): onProfileStateChanged: profile HEADSET newProfileState 1
(14608):06-01 05:46:03.689 D/BluetoothDevicePreference( 6305): profile ::HEADSET connectionStatus::1
(14609):06-01 05:46:03.689 D/BluetoothDevicePreference( 6305): Is my device connected::false
(14610):06-01 05:46:03.689 I/BluetoothDevicePreference( 6305): summaryResId != 0
(14611):06-01 05:46:03.689 D/BluetoothDevicePreference( 6305): profile ::HEADSET connectionStatus::1
(14612):06-01 05:46:03.689 D/BluetoothDevicePreference( 6305): Is my device connected::false
(14613):06-01 05:46:03.689 I/BluetoothDevicePreference( 6305): summaryResId != 0
(14614):06-01 05:46:03.689 D/BluetoothHeadset( 6305): getConnectionState()
(14615):06-01 05:46:03.689 D/BluetoothHeadset( 6305): getConnectionState() in if statement
(14634):06-01 05:46:03.739 I/BluetoothHeadsetServiceJni( 1606): connection_state_callback
(14683):06-01 05:46:03.749 D/BluetoothAdapterProperties( 1606): CONNECTION_STATE_CHANGE: 00:02:C7:20:AF:43: 1 -> 2
(14685):06-01 05:46:03.749 D/ALSADevice( 219): setBluetoothNREC 1
(14689):06-01 05:46:03.749 V/BluetoothEventManager( 6305): Received android.bluetooth.headset.profile.action.CONNECTION_STATE_CHANGED
(14690):06-01 05:46:03.749 D/CachedBluetoothDevice( 6305): onProfileStateChanged: profile HEADSET newProfileState 2
(14691):06-01 05:46:03.749 D/BluetoothDevicePreference( 6305): profile ::HEADSET connectionStatus::2
(14692):06-01 05:46:03.749 D/BluetoothDevicePreference( 6305): HEADSET profile Connected
(14693):06-01 05:46:03.749 D/BluetoothDevicePreference( 6305): Is my device connected::true
(14694):06-01 05:46:03.749 I/BluetoothDevicePreference( 6305): summaryResId != 0
(14695):06-01 05:46:03.749 D/BluetoothDevicePreference( 6305): profile ::HEADSET connectionStatus::2
(14696):06-01 05:46:03.749 D/BluetoothDevicePreference( 6305): HEADSET profile Connected
(14697):06-01 05:46:03.749 D/BluetoothDevicePreference( 6305): Is my device connected::true
(14698):06-01 05:46:03.749 I/BluetoothDevicePreference( 6305): summaryResId != 0
(14699):06-01 05:46:03.759 D/BluetoothHeadset( 6305): getConnectionState()
(14700):06-01 05:46:03.759 D/BluetoothHeadset( 6305): getConnectionState() in if statement
(14707):06-01 05:46:03.759 D/BluetoothNotiBroadcastReceiver( 6305): onReceive
(14708):06-01 05:46:03.759 D/BluetoothAdapterService(1114561256)( 1606): Get Bonded Devices being called
(14721):06-01 05:46:04.109 I/BluetoothHeadsetServiceJni( 1606): connection_state_callback
(14733):06-01 05:46:04.129 D/BluetoothVoIPService( 1283): handleMessage: 5
(14734):06-01 05:46:04.129 D/BluetoothVoIPService( 1283): changeVoIPStateToCallState:0
(14735):06-01 05:46:04.129 W/BluetoothVoIPService( 1283): convertToCallState : index(0), state(IDLE)
(14736):06-01 05:46:04.129 W/BluetoothVoIPService( 1283): convertToCallState : index(0), state(IDLE)
(14737):06-01 05:46:04.129 W/BluetoothVoIPService( 1283): convertToCallState : index(0), state(IDLE)
(14738):06-01 05:46:04.129 E/BluetoothVoIPService( 1283): handleVoipCallStateChange() mPhone:IDLE
(14739):06-01 05:46:04.129 E/BluetoothVoIPService( 1283): mFVoIPCall:(IDLE), mBVoIPCall:(IDLE), mRVoIPCall:(IDLE)
(14740):06-01 05:46:04.129 E/BluetoothVoIPService( 1283): mVoIPPhoneState:(IDLE), newVoIPState:(IDLE)
(14750):06-01 05:46:04.139 E/BluetoothVoIPService( 1283): mVoIPCall :(0), mVoIPCallsetup:(0), mVoIPCallheld:(0)
(14751):06-01 05:46:04.139 D/BluetoothVoIPService( 1283): VoIPcall:(0), VoIPcallsetup:(0), VoIPcallheld:(0)
(14752):06-01 05:46:04.150 D/BluetoothVoIPService( 1283): newVoIPState:(IDLE), isBluetoothHeadsetConnected():(true)
(14753):06-01 05:46:04.150 D/BluetoothVoIPService( 1283): mAudioPossible:(false)
(14754):06-01 05:46:04.150 D/BluetoothVoIPService( 1283): mNumActive(0,0)
(14755):06-01 05:46:04.150 D/BluetoothVoIPService( 1283): mNumHeld(0,0)
(14756):06-01 05:46:04.150 D/BluetoothVoIPService( 1283): mRingingCallState(IDLE,IDLE)
(14757):06-01 05:46:04.150 D/BluetoothVoIPService( 1283): mForegroundCallState(IDLE,IDLE)
(14758):06-01 05:46:04.150 D/BluetoothVoIPService( 1283): mVoIPRingingNumber(com.android.phone.BluetoothVoIPService$CallNumber@42811ad0,com.android.phone.BluetoothVoIPService$CallNumber@42811ad0)
(14759):06-01 05:46:04.150 D/BluetoothVoIPService( 1283): phone state changed
(14760):06-01 05:46:04.150 D/BluetoothVoIPService( 1283): mNumActive : 0, mNumHeld: 0, mconvertCallState : IDLE
(14781):06-01 05:46:04.190 D/ALSADevice( 219): setBluetoothNREC 0
(15156):06-01 05:46:07.192 D/LocalBluetoothManager( 6305): setting foreground activity to null
(15473):06-01 05:46:11.537 D/BluetoothAtPhonebook( 1606): getRedialCalltype: BLUETOOTH_HEADSET_CALL_CONDITION(0)
(15474):06-01 05:46:11.537 D/BluetoothAtPhonebook( 1606): getRedialCalltype: BLUETOOTH_HEADSET_CALL_TYPE(1)
(16641):06-01 05:46:12.488 D/BluetoothPhoneService( 1283): handleMessage: 2
(16643):06-01 05:46:12.488 D/BluetoothPhoneService( 1283): handlePreciseCallStateChange foreground: DIALING, background: IDLE, ringing: IDLE
(16645):06-01 05:46:12.488 E/BluetoothPhoneService( 1283): Could not get a handle on Connection object for the call
(16647):06-01 05:46:12.488 E/BluetoothPhoneService( 1283): getNumHeldCdma prev : 0
(16649):06-01 05:46:12.488 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(16651):06-01 05:46:12.488 E/BluetoothPhoneService( 1283): numHeld : 0
(16652):06-01 05:46:12.488 E/BluetoothPhoneService( 1283): getNumHeldCdma curr : 0
(16653):06-01 05:46:12.488 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(16654):06-01 05:46:12.488 D/BluetoothPhoneService( 1283): CDMA 3way call state change. mNumActive: 0 mNumHeld: 0 IsThreeWayCallOrigStateDialing: false
(16655):06-01 05:46:12.488 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; when 2nd call is incomming; app.cdmaPhoneCallState.IsThreeWayCallOrigStateDialing() : false
(16656):06-01 05:46:12.488 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; isGeneric = false
(16657):06-01 05:46:12.488 E/BluetoothPhoneService( 1283): callsSwitched : false
(16658):06-01 05:46:12.488 D/BluetoothPhoneService( 1283): foregroundVoIPCall : IDLE, backgroundVoIPCall : IDLE
(16659):06-01 05:46:12.488 D/BluetoothPhoneService( 1283): Send +CIEV
(16708):06-01 05:46:12.518 D/BluetoothPhoneService( 1283): handleMessage: 2
(16710):06-01 05:46:12.518 D/BluetoothPhoneService( 1283): handlePreciseCallStateChange foreground: DIALING, background: IDLE, ringing: IDLE
(16712):06-01 05:46:12.518 E/BluetoothPhoneService( 1283): Could not get a handle on Connection object for the call
(16714):06-01 05:46:12.518 E/BluetoothPhoneService( 1283): getNumHeldCdma prev : 0
(16716):06-01 05:46:12.518 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(16718):06-01 05:46:12.518 E/BluetoothPhoneService( 1283): numHeld : 0
(16720):06-01 05:46:12.518 E/BluetoothPhoneService( 1283): getNumHeldCdma curr : 0
(16722):06-01 05:46:12.518 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(16724):06-01 05:46:12.518 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; when 2nd call is incomming; app.cdmaPhoneCallState.IsThreeWayCallOrigStateDialing() : false
(16726):06-01 05:46:12.518 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; isGeneric = false
(16728):06-01 05:46:12.518 E/BluetoothPhoneService( 1283): callsSwitched : false
(16932):06-01 05:46:12.778 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(16936):06-01 05:46:12.778 D/InCallScreen( 1283): ============== dumpBluetoothState() =============
(16974):06-01 05:46:12.848 D/BluetoothHeadset( 1283): getConnectionState()
(16979):06-01 05:46:12.888 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(16987):06-01 05:46:12.888 I/binder_sample( 1283): [android.bluetooth.IBluetooth,2,48,com.android.phone,9]
(16988):06-01 05:46:12.898 D/InCallScreen( 1283): = isBluetoothAvailable: true
(16989):06-01 05:46:12.898 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(16990):06-01 05:46:12.898 D/InCallScreen( 1283): = isBluetoothAudioConnected: false
(16991):06-01 05:46:12.908 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(16992):06-01 05:46:12.908 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(16993):06-01 05:46:12.908 D/InCallScreen( 1283): = isBluetoothAudioConnectedOrPending: false
(16994):06-01 05:46:12.908 D/InCallScreen( 1283): = PhoneGlobals.showBluetoothIndication: false
(16996):06-01 05:46:12.908 D/BluetoothHeadset( 1283): getConnectionState()
(16997):06-01 05:46:12.908 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(17004):06-01 05:46:12.908 D/InCallScreen( 1283): = BluetoothHeadset.State: 2
(17005):06-01 05:46:12.918 D/InCallScreen( 1283): = BluetoothHeadset audio connected: false
(17014):06-01 05:46:12.918 D/BluetoothHeadset( 1283): getConnectionState()
(17015):06-01 05:46:12.918 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(17025):06-01 05:46:12.928 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17026):06-01 05:46:12.928 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17042):06-01 05:46:12.948 D/BluetoothHeadset( 1283): getConnectionState()
(17043):06-01 05:46:12.948 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(17053):06-01 05:46:12.958 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17054):06-01 05:46:12.958 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17055):06-01 05:46:12.958 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17056):06-01 05:46:12.958 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17189):06-01 05:46:13.168 D/BluetoothPhoneService( 1283): handleMessage: 2
(17190):06-01 05:46:13.168 D/BluetoothPhoneService( 1283): handlePreciseCallStateChange foreground: DIALING, background: IDLE, ringing: IDLE
(17191):06-01 05:46:13.168 E/BluetoothPhoneService( 1283): Could not get a handle on Connection object for the call
(17192):06-01 05:46:13.168 E/BluetoothPhoneService( 1283): getNumHeldCdma prev : 0
(17193):06-01 05:46:13.168 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(17194):06-01 05:46:13.168 E/BluetoothPhoneService( 1283): numHeld : 0
(17195):06-01 05:46:13.168 E/BluetoothPhoneService( 1283): getNumHeldCdma curr : 0
(17196):06-01 05:46:13.168 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(17197):06-01 05:46:13.168 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; when 2nd call is incomming; app.cdmaPhoneCallState.IsThreeWayCallOrigStateDialing() : false
(17198):06-01 05:46:13.168 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; isGeneric = false
(17199):06-01 05:46:13.168 E/BluetoothPhoneService( 1283): callsSwitched : false
(17239):06-01 05:46:13.208 D/BluetoothPhoneService( 1283): handleMessage: 2
(17240):06-01 05:46:13.208 D/BluetoothPhoneService( 1283): handlePreciseCallStateChange foreground: DIALING, background: IDLE, ringing: IDLE
(17241):06-01 05:46:13.208 E/BluetoothPhoneService( 1283): Could not get a handle on Connection object for the call
(17242):06-01 05:46:13.208 E/BluetoothPhoneService( 1283): getNumHeldCdma prev : 0
(17243):06-01 05:46:13.208 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(17244):06-01 05:46:13.208 E/BluetoothPhoneService( 1283): numHeld : 0
(17245):06-01 05:46:13.208 E/BluetoothPhoneService( 1283): getNumHeldCdma curr : 0
(17246):06-01 05:46:13.208 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(17247):06-01 05:46:13.208 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; when 2nd call is incomming; app.cdmaPhoneCallState.IsThreeWayCallOrigStateDialing() : false
(17248):06-01 05:46:13.208 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; isGeneric = false
(17249):06-01 05:46:13.208 E/BluetoothPhoneService( 1283): callsSwitched : false
(17272):06-01 05:46:13.248 D/BluetoothHeadset( 1283): getConnectionState()
(17273):06-01 05:46:13.248 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(17283):06-01 05:46:13.248 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17284):06-01 05:46:13.248 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17301):06-01 05:46:13.268 D/BluetoothHeadset( 1283): getConnectionState()
(17302):06-01 05:46:13.268 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(17312):06-01 05:46:13.268 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17313):06-01 05:46:13.268 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17314):06-01 05:46:13.278 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17315):06-01 05:46:13.278 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17482):06-01 05:46:13.819 D/BluetoothHeadset( 1283): getConnectionState()
(17484):06-01 05:46:13.819 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(17497):06-01 05:46:13.829 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17498):06-01 05:46:13.829 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17515):06-01 05:46:13.849 D/BluetoothHeadset( 1283): getConnectionState()
(17516):06-01 05:46:13.849 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(17526):06-01 05:46:13.859 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17527):06-01 05:46:13.859 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17528):06-01 05:46:13.859 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17541):06-01 05:46:13.859 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17778):06-01 05:46:13.969 D/BluetoothPhoneService( 1283): handleMessage: 2
(17779):06-01 05:46:13.969 D/BluetoothPhoneService( 1283): handlePreciseCallStateChange foreground: ACTIVE, background: IDLE, ringing: IDLE
(17780):06-01 05:46:13.969 E/BluetoothPhoneService( 1283): Could not get a handle on Connection object for the call
(17781):06-01 05:46:13.969 E/BluetoothPhoneService( 1283): getNumHeldCdma prev : 0
(17782):06-01 05:46:13.969 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(17783):06-01 05:46:13.969 E/BluetoothPhoneService( 1283): numHeld : 0
(17784):06-01 05:46:13.969 E/BluetoothPhoneService( 1283): getNumHeldCdma curr : 0
(17785):06-01 05:46:13.969 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(17786):06-01 05:46:13.969 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; when 2nd call is incomming; app.cdmaPhoneCallState.IsThreeWayCallOrigStateDialing() : false
(17787):06-01 05:46:13.969 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; isGeneric = false
(17788):06-01 05:46:13.969 E/BluetoothPhoneService( 1283): callsSwitched : false
(17789):06-01 05:46:13.969 D/BluetoothPhoneService( 1283): foregroundVoIPCall : IDLE, backgroundVoIPCall : IDLE
(17790):06-01 05:46:13.969 D/BluetoothPhoneService( 1283): Send +CIEV
(17820):06-01 05:46:13.989 D/BluetoothHeadset( 1283): getConnectionState()
(17821):06-01 05:46:13.989 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(17830):06-01 05:46:13.999 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17831):06-01 05:46:13.999 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17848):06-01 05:46:14.019 D/BluetoothHeadset( 1283): getConnectionState()
(17850):06-01 05:46:14.019 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(17860):06-01 05:46:14.019 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17861):06-01 05:46:14.019 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17862):06-01 05:46:14.029 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17863):06-01 05:46:14.029 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17913):06-01 05:46:14.109 D/BluetoothHeadset( 1283): getConnectionState()
(17915):06-01 05:46:14.109 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(17924):06-01 05:46:14.119 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17925):06-01 05:46:14.119 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17942):06-01 05:46:14.139 D/BluetoothHeadset( 1283): getConnectionState()
(17943):06-01 05:46:14.139 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(17954):06-01 05:46:14.149 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17955):06-01 05:46:14.149 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(17956):06-01 05:46:14.159 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(17957):06-01 05:46:14.159 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(18147):06-01 05:46:15.030 D/BluetoothHeadset( 1283): getConnectionState()
(18149):06-01 05:46:15.030 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(18158):06-01 05:46:15.040 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(18159):06-01 05:46:15.040 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(18602):06-01 05:46:19.184 D/BluetoothPhoneService( 1283): handleMessage: 2
(18604):06-01 05:46:19.184 D/BluetoothPhoneService( 1283): handlePreciseCallStateChange foreground: DISCONNECTING, background: IDLE, ringing: IDLE
(18606):06-01 05:46:19.184 E/BluetoothPhoneService( 1283): Could not get a handle on Connection object for the call
(18608):06-01 05:46:19.184 E/BluetoothPhoneService( 1283): getNumHeldCdma prev : 0
(18614):06-01 05:46:19.194 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(18616):06-01 05:46:19.194 E/BluetoothPhoneService( 1283): numHeld : 0
(18618):06-01 05:46:19.194 E/BluetoothPhoneService( 1283): getNumHeldCdma curr : 0
(18620):06-01 05:46:19.194 D/BluetoothPhoneService( 1283): CDMA call state: SINGLE_ACTIVE prev state:IDLE
(18624):06-01 05:46:19.194 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; when 2nd call is incomming; app.cdmaPhoneCallState.IsThreeWayCallOrigStateDialing() : false
(18626):06-01 05:46:19.194 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; isGeneric = false
(18628):06-01 05:46:19.194 E/BluetoothPhoneService( 1283): callsSwitched : false
(18630):06-01 05:46:19.194 D/BluetoothPhoneService( 1283): foregroundVoIPCall : IDLE, backgroundVoIPCall : IDLE
(18634):06-01 05:46:19.194 D/BluetoothPhoneService( 1283): Send +CIEV
(18686):06-01 05:46:19.224 D/BluetoothHeadset( 1283): getConnectionState()
(18688):06-01 05:46:19.224 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(18706):06-01 05:46:19.224 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(18715):06-01 05:46:19.224 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(18780):06-01 05:46:19.264 D/BluetoothHeadset( 1283): getConnectionState()
(18781):06-01 05:46:19.264 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(18791):06-01 05:46:19.264 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(18792):06-01 05:46:19.264 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(18811):06-01 05:46:19.274 D/BluetoothHeadset( 1283): getConnectionState()
(18812):06-01 05:46:19.274 D/BluetoothHeadset( 1283): getConnectionState() in if statement
(18821):06-01 05:46:19.284 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(18822):06-01 05:46:19.284 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(18882):06-01 05:46:19.334 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(18891):06-01 05:46:19.334 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(19253):06-01 05:46:19.474 D/InCallScreen( 1283): isBluetoothAudioConnected: ==> isAudioOn = false
(19254):06-01 05:46:19.474 D/InCallScreen( 1283): isBluetoothAudioConnectedOrPending: ==> FALSE
(20193):06-01 05:46:22.177 D/BluetoothPhoneService( 1283): handleMessage: 2
(20195):06-01 05:46:22.177 D/BluetoothPhoneService( 1283): handlePreciseCallStateChange foreground: IDLE, background: IDLE, ringing: IDLE
(20196):06-01 05:46:22.177 E/BluetoothPhoneService( 1283): Could not get a handle on Connection object for the call
(20197):06-01 05:46:22.177 E/BluetoothPhoneService( 1283): getNumHeldCdma prev : 0
(20198):06-01 05:46:22.177 D/BluetoothPhoneService( 1283): CDMA call state: IDLE prev state:IDLE
(20199):06-01 05:46:22.177 E/BluetoothPhoneService( 1283): numHeld : 0
(20201):06-01 05:46:22.177 E/BluetoothPhoneService( 1283): getNumHeldCdma curr : 0
(20202):06-01 05:46:22.177 D/BluetoothPhoneService( 1283): CDMA call state: IDLE prev state:IDLE
(20203):06-01 05:46:22.177 D/BluetoothPhoneService( 1283): CDMA 3way call state change. mNumActive: 0 mNumHeld: 0 IsThreeWayCallOrigStateDialing: false
(20204):06-01 05:46:22.177 D/BluetoothPhoneService( 1283): call handleCdmaSetSecondCallState false && (mNumActive + mNumHeld) == 0
(20205):06-01 05:46:22.177 D/BluetoothPhoneService( 1283): cdmaSetSecondCallState: Setting mCdmaIsSecondCallActive to false
(20206):06-01 05:46:22.177 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; when 2nd call is incomming; app.cdmaPhoneCallState.IsThreeWayCallOrigStateDialing() : false
(20207):06-01 05:46:22.177 E/BluetoothPhoneService( 1283): swap; CONF -> THRWAY ; isGeneric = false
(20208):06-01 05:46:22.177 E/BluetoothPhoneService( 1283): callsSwitched : false
(20210):06-01 05:46:22.177 D/BluetoothPhoneService( 1283): foregroundVoIPCall : IDLE, backgroundVoIPCall : IDLE
(20211):06-01 05:46:22.177 D/BluetoothPhoneService( 1283): Send +CIEV

In the case above, the test call to my carrier's voicemail system lasted for 5 seconds, it includes the time that I was connected to the handsfree system until the disconnection (by putting my 2004 Prius NAV screen in test mode) It does not include the re-initialization afterwards, but rest assured the 4 calls I did one after the other to test are very similar to this logcat capture.