[HOWTO] Enable the car dock external audio without Samsung's Home apps

Search This thread

TheBeano

Senior Member
Jul 18, 2010
355
218
Note: none of this works for the Car Dock in Android 2.3.3 Gingerbread (JVB, JVK, or JVO), due to a Samsung kernel bug/feature. It should work for the Home Dock. Car Dock output is fixed in Android 2.3.4 Gingerbread (JVP or later).

This will not work with any Cyanogenmod, Teamhacksung or other open source ROMs for any version of Android, including ICS, as it calls a closed-source Samsung module that will not be present in these ROMs.


Samsung's docks have external audio outputs that are connected through the phone's USB port. These outputs don't work unless you use the latest versions of Samsung's Desk Home and Car Home apps (kindly provided by an XDA user here for those that can't download them from the market).

Unfortunately these apps are not the greatest, especially Samsung Car Home. I wanted to use Google Car Home, so I did a little reverse engineering and discovered that Samsung's apps use this Android Intent to switch the external audio output on and off:

name: com.sec.android.intent.action.INTERNAL_SPEAKER
extra: state
extra value (Integer):
0 = off (sound through phone's internal speaker)
1 = on (sound through dock external port).

You can use this in a couple of ways:

1. Through Tasker: create a profile with context Docked and an Intent action as follows:
Action: com.sec.android.intent.action.INTERNAL_SPEAKER
Cat: none
Extra: state:1
Target: Broadcast Receiver

Or, if you don't want to use Tasker:

2. I created a tiny app (attached) that triggers this intent when the phone is docked and undocked. I've only tested it with the car dock but it should work with the home dock as well. It doesn't create a background service or use any memory normally, it just gets launched and switches the external audio output on whenever the phone is plugged in to the dock.
Update: v1.1 now has separate settings for home and car docks.

Known versions where Car Dock output doesn't work:
* Android 2.1 (all versions)
* Android 2.2 prior to JPX kernel
* Android 2.3.3 (works in 2.3.4 JVP)

Ringtone and caller voice audio does not go through the external port, only music player output.

I've only tested it on the I9000 but it should work with all the Galaxy S variants, at least all the ones that work with Samsung's Dock apps anyway.

Warning: There is a nasty "crack" when the audio output is connected so you may want to have your stereo's volume turned right down.

If you find this app useful please donate to the CyanogenMod developers: go to this thread and click the link under "SUPPORT US".
 

Attachments

  • SGSDockSpeaker11.zip
    16.3 KB · Views: 4,594
Last edited:

Marcenzeichen

Member
Oct 5, 2010
31
4
Tasker is on my ToDo-List, thanks for the advise, how to use it.
But for now I only want to use the samsung car dock with the google car home app. And your app should be the only thing, I need for that, right?
 

TheBeano

Senior Member
Jul 18, 2010
355
218
Tasker is on my ToDo-List, thanks for the advise, how to use it.
But for now I only want to use the samsung car dock with the google car home app. And your app should be the only thing, I need for that, right?

Yes, you just need to have the app installed. It doesn't create a background service or use any memory normally, it just gets launched and switches the external audio socket on whenever the phone is plugged in to the dock.
 
  • Like
Reactions: evo.dev.m1nd

xperseox

Member
Jul 30, 2010
30
2
Hallo beano, thanks for you help, it's ok your apk but the sound is no good it's no bass and low volume.
Please have you a solution?

Sent from my GT-I9000 using XDA Premium App
 

TheBeano

Senior Member
Jul 18, 2010
355
218
Hallo beano, thanks for you help, it's ok your apk but the sound is no good it's no bass and low volume.

It sounds OK to me, what ROM are you using? I notice the Captivate had this problem and it was fixed by a ROM upgrade (here). Also make sure the volume is up on the phone as it does affect the external output.
 

xperseox

Member
Jul 30, 2010
30
2
Hallo Beano, my rom is js2 itv, now look your solution.


Sent from my GT-I9000 using XDA Premium App
 

TheBeano

Senior Member
Jul 18, 2010
355
218
Hallo Beano, my rom is js2 itv, now look your solution.
All the switching and EQ changes are done by the firmware, the app just tells it to do the switch, so I would try changing the firmware. I am using DocRom v9.6.6_XWJS5 with speedmod-k13c-500hz kernel from romkitchen.org right now. The bass is definitely OK with this configuration, I am listening to Mr Oizo through it at the moment. :)
 

Governator

Member
Nov 20, 2009
23
0
Hello! I was hoping that someone finds the solution to this problem and finally get you!
But unfortunately, your mod did not work for me .... I have the original Samsung car dock
sold in America (one for the vibrant) and when I plug in the galaxy S to cardock putting in jack 3.5" my in-ear headphones, the audio continues to come out through external speaker,
just noise (hiss) from the headphone out and left with much in the distance as you feel
a very low signal (mp3 music).
With your application things have not changed for me.... I've never done a test in the car with the
audio cable, but it should be the same with headphones or not?

HELP!!!:(

Ah, I forgot..... I use a the Darky 9.2 rom with supercurio (voodoo) kernel and installed also the google car home app.
 

brett.darnell

Member
Aug 2, 2010
45
4
Thanks heaps mate. Ive been needing this for ages and i bet others have been too.

I use alarm clock plus when docked but had to make sure the Samsung app was running in the background to get audio out of the dock. Not now.

Thanks

Sent from my GT-I9000 using XDA App
 

brett.darnell

Member
Aug 2, 2010
45
4
Any chance you could do a little mod?

Be awesome if we could choose a checkbox for home and car. Eg i use USB audio at the desk but not in the car.

Thanks in advance.

Sent from my GT-I9000 using XDA App
 

zaphodbb1

Member
Mar 6, 2011
15
3
St. Albans
@TheBeano

Thank you for your time effort in doing this.

I'm having trouble finding the Google Car Home app - it's not in the Android Market (for me anyway*) but is in AppBrain. However, if I try to download it via the bar-code link it re-directs to the Android Market & gives a not found message :( I've downloaded the Samsung apps you linked to and they both work for me, but would like the Google one too.
Is there any chance someone could point me in the direction of another link?


EDIT: I now see that GCH isn't available for many people & have found a link in the apps section of Robot Briefs

Off now to hack a micro usb lead to make the Samsung Car Home app auto-start + your solution via Tasker :)

*My phone is unlocked but has VodaPhone branded firmware (something I plan to change) & I'm on Froyo 2.2.1 - not sure if the VodaPhone branding is why I can't find Google Car Home
 
Last edited:

theutz

New member
Mar 26, 2011
3
0
Hello guys!first of all TheBeano great job dude.your app it's great.i use it with my galaxy s and car dock.it'a great because now with your app i can output my music direct to car speaker with 3.5 jack cable (dock to car aux).but when i receive a call it's turn to speakers mode.i want to output my voice call to 3.5 jack too, to have a nice car kit.any ideeas how to enable external output voice call to earphones .thx
 

hms666

Member
Jul 29, 2008
44
1
How about adding an options to turn on bluetooth when car-docked and wifi when desk-docked ?

Sent from my GT-I9000 using XDA App
 

theutz

New member
Mar 26, 2011
3
0
@hms666 for this, thy to download from android markert Car Dock Home v3, Custom Car Home or other application and set this features from Setting Menu.when you'll connect the phone gps,wifi special icons will be enabled

I'm still in searching for an aplication that let me to speak from my docked phone using handsfree with 3.5 jack; default it's on built in speakers when phone it's conected in car dock and if disable the speakers the cal run normaly but if i connect the jack no sound there. With the phone no conected in car dock I can make a call with earspeakers.

L.E. I have:
firmware 2.2.1
baseband version I9000XXJPY
kernel version 2.6.32.9
FROYO.XWJS5
 
Last edited:

brett.darnell

Member
Aug 2, 2010
45
4
I think its important not to make this app do more than simply toggle USB audio output.

There are heaps of other apps to handle the other docked features.

Alarm clock plus
Car dock v3
Etc

All that's needed is to be able to select on/off for each type of dock mode. Car or desk.

Maybe a toggle widget for each??
 

Top Liked Posts

  • There are no posts matching your filters.
  • 13
    Note: none of this works for the Car Dock in Android 2.3.3 Gingerbread (JVB, JVK, or JVO), due to a Samsung kernel bug/feature. It should work for the Home Dock. Car Dock output is fixed in Android 2.3.4 Gingerbread (JVP or later).

    This will not work with any Cyanogenmod, Teamhacksung or other open source ROMs for any version of Android, including ICS, as it calls a closed-source Samsung module that will not be present in these ROMs.


    Samsung's docks have external audio outputs that are connected through the phone's USB port. These outputs don't work unless you use the latest versions of Samsung's Desk Home and Car Home apps (kindly provided by an XDA user here for those that can't download them from the market).

    Unfortunately these apps are not the greatest, especially Samsung Car Home. I wanted to use Google Car Home, so I did a little reverse engineering and discovered that Samsung's apps use this Android Intent to switch the external audio output on and off:

    name: com.sec.android.intent.action.INTERNAL_SPEAKER
    extra: state
    extra value (Integer):
    0 = off (sound through phone's internal speaker)
    1 = on (sound through dock external port).

    You can use this in a couple of ways:

    1. Through Tasker: create a profile with context Docked and an Intent action as follows:
    Action: com.sec.android.intent.action.INTERNAL_SPEAKER
    Cat: none
    Extra: state:1
    Target: Broadcast Receiver

    Or, if you don't want to use Tasker:

    2. I created a tiny app (attached) that triggers this intent when the phone is docked and undocked. I've only tested it with the car dock but it should work with the home dock as well. It doesn't create a background service or use any memory normally, it just gets launched and switches the external audio output on whenever the phone is plugged in to the dock.
    Update: v1.1 now has separate settings for home and car docks.

    Known versions where Car Dock output doesn't work:
    * Android 2.1 (all versions)
    * Android 2.2 prior to JPX kernel
    * Android 2.3.3 (works in 2.3.4 JVP)

    Ringtone and caller voice audio does not go through the external port, only music player output.

    I've only tested it on the I9000 but it should work with all the Galaxy S variants, at least all the ones that work with Samsung's Dock apps anyway.

    Warning: There is a nasty "crack" when the audio output is connected so you may want to have your stereo's volume turned right down.

    If you find this app useful please donate to the CyanogenMod developers: go to this thread and click the link under "SUPPORT US".
    3
    Hi guys,

    I wrote Pawtip to include the Patch from ICS into JellyBean.
    He answered me and said that the new Nightly (cm-10.1-20130225-NIGHTLY-galaxysmtd.zip) will get this Patch.

    See here:

    http://review.cyanogenmod.org/#/c/32520/


    Regards!
    2
    The dock sound support is the only thing that pulled me away from ICSSGS and keeps me with CM9.:(

    What am I missing that makes it work for you? Please help...:)

    Hi,

    Here is the workaround for those who are unable to redirect sound using ICSSGS RC4.2 and XCaliburinhand's Galaxy Dock Sound Redirector:

    Edit your /system/build.prop file and replace the following line
    ro.product.manufacturer=unknown
    with
    ro.product.manufacturer=Samsung

    Reboot, finished.

    Confirmed working on Icy Glitch V14b5 kernel, should also work on other (redirection capable) kernels (e.g. Semaphore 0.9.x). Latest Icy Glitch kernel has now full voice call redirection also working!

    Be extra careful when editing build.prop (create a backup of file etc.)!

    Details: I checked the source code of Dock Sound Redirector on github and found that it checks if: 1. the manufacturer string is 'samsung' 2. /sys/devices/virtual/misc/dockredir/dockredir_support file exists and contains '1' in the first line. If any of these fails, will throw the error message.

    In this thread, you'll find a CWM-flashable (latest) version of Google Car Home -- could be also interesting.

    Have a nice day,

    pn
    2
    I'm not using it and I don't have a dock, so I don't know what app is needed. I did add support for it in the kernel, and the testers who were testing it confirmed it was working. I'll ask them what app they are using.
    2
    Is it this? http://xdaforums.com/showthread.php?t=975349
    Can I flash it over my Dark_Core_2.7.3_JVP kernel if I first turn of Lag fix?

    Yes, download the "Stock+Ext4 Kernel JVP - Gingerbread 2.3.4" from the first post in that thread and flash with Odin or Heimdall.

    If your Lagfix is just ext4 (no jfs etc.) you don't have to turn it off.

    If there's a weird voice at boot: that's the filesystem conversion. If there's none, all is fine, too ;)