Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,739,856 Members 46,649 Now Online
XDA Developers Android and Mobile Development Forum

Fun with resistors (home/car dock mode + more)

Tip us?
 
TheBeano
Old
(Last edited by TheBeano; 14th April 2011 at 09:18 PM.)
#1  
Senior Member - OP
Thanks Meter 184
Posts: 348
Join Date: Jul 2010
Default Fun with resistors (home/car dock mode + more)

We've already established that a resistor on the micro USB port can be used to force the Galaxy S into download mode, but the USB switching chip used on the phone has a lot of other capabilities that are triggered by different resistors between pin 4 and 5 of the plug.

Update 6 March 2011: Confirmed modes so far:
Desk Dock: 365K (also works with 1K)
Car Dock: 619K
In these modes audio output can be switched to pins D- and D+ of the USB port (D- is left) but this is not done by default, see this thread.

Serial port/UART: RID_FM_BOOT_OFF_UART (523K)
Read the rest of this thread for more details on using this port.
Other resistor values that also enable the serial port:
RID_AUD_DEV_TY_2 (80.07K): Doesn't switch the phone on, but produces bootlog output on the serial port when you switch it on manually. The bootlog output only starts partway through the second bootloader, rather than from the start of the primary bootloader.
UART_CABLE (150K): Same as RID_AUD_DEV_TY_2


Download mode:
301K (this thread).

Here is a list of all the resistor values, from fsa9480_i2c.h in the open source code for JPM. The resistor goes from pin 4 to pin 5 of the micro USB plug (full details on how to wire this up are in this thread). When you connect the plug with the resistor (in Froyo) you should see some messages from the fsa9480 driver in the kernel log, which you can view with the "dmesg" command.

Code:
Select Code
RID_USB_OTG_MODE,	/* 0 0 0 0 0 	GND 		USB OTG Mode              */
RID_AUD_SEND_END_BTN,	/* 0 0 0 0 1 	2K		Audio Send_End Button*/
RID_AUD_REMOTE_S1_BTN,	/* 0 0 0 1 0 	2.604K		Audio Remote S1 Button */
RID_AUD_REMOTE_S2_BTN,	/* 0 0 0 1 1 	3.208K		Audio Remote S2 Button                         */
RID_AUD_REMOTE_S3_BTN,	/* 0 0 1 0 0 	4.014K		Audio Remote S3 Button */
RID_AUD_REMOTE_S4_BTN,	/* 0 0 1 0 1 	4.82K		Audio Remote S4 Button */
RID_AUD_REMOTE_S5_BTN,	/* 0 0 1 1 0 	6.03K		Audio Remote S5 Button */
RID_AUD_REMOTE_S6_BTN,	/* 0 0 1 1 1 	8.03K		Audio Remote S6 Button */
RID_AUD_REMOTE_S7_BTN,	/* 0 1 0 0 0 	10.03K		Audio Remote S7 Button */
RID_AUD_REMOTE_S8_BTN,	/* 0 1 0 0 1 	12.03K		Audio Remote S8 Button */
RID_AUD_REMOTE_S9_BTN,	/* 0 1 0 1 0 	14.46K		Audio Remote S9 Button */
RID_AUD_REMOTE_S10_BTN,	/* 0 1 0 1 1 	17.26K		Audio Remote S10 Button */
RID_AUD_REMOTE_S11_BTN,	/* 0 1 1 0 0 	20.5K		Audio Remote S11 Button */
RID_AUD_REMOTE_S12_BTN,	/* 0 1 1 0 1 	24.07K		Audio Remote S12 Button */
RID_RESERVED_1,		/* 0 1 1 1 0 	28.7K		Reserved Accessory #1 */
RID_RESERVED_2,		/* 0 1 1 1 1 	34K 		Reserved Accessory #2 */
RID_RESERVED_3,		/* 1 0 0 0 0 	40.2K		Reserved Accessory #3 */
RID_RESERVED_4,		/* 1 0 0 0 1 	49.9K		Reserved Accessory #4 */
RID_RESERVED_5,		/* 1 0 0 1 0 	64.9K		Reserved Accessory #5 */
RID_AUD_DEV_TY_2,	/* 1 0 0 1 1 	80.07K		Audio Device Type 2 */
RID_PHONE_PWD_DEV,	/* 1 0 1 0 0 	102K		Phone Powered Device */
RID_TTY_CONVERTER,	/* 1 0 1 0 1 	121K		TTY Converter */
RID_UART_CABLE,		/* 1 0 1 1 0 	150K		UART Cable */
RID_CEA936A_TY_1,	/* 1 0 1 1 1 	200K		CEA936A Type-1 Charger(1) */
RID_FM_BOOT_OFF_USB,	/* 1 1 0 0 0 	255K		Factory Mode Boot OFF-USB */
RID_FM_BOOT_ON_USB,	/* 1 1 0 0 1 	301K		Factory Mode Boot ON-USB */
RID_AUD_VDO_CABLE,	/* 1 1 0 1 0 	365K		Audio/Video Cable */
RID_CEA936A_TY_2,	/* 1 1 0 1 1 	442K		CEA936A Type-2 Charger(1) */
RID_FM_BOOT_OFF_UART,	/* 1 1 1 0 0 	523K		Factory Mode Boot OFF-UART */
RID_FM_BOOT_ON_UART,	/* 1 1 1 0 1 	619K		Factory Mode Boot ON-UART */
RID_AUD_DEV_TY_1_REMOTE,	/* 1 1 1 1 0 	1000.07K	Audio Device Type 1 with Remote(1) */
RID_AUD_DEV_TY_1_SEND = RID_AUD_DEV_TY_1_REMOTE ,		/* 1 1 1 1 0 	1002K		Audio Device Type 1 / Only Send-End(2) */
RID_USB_MODE,		/* 1 1 1 1 1 	Open		USB Mode, Dedicated Charger or Accessory Detach */
The Following 16 Users Say Thank You to TheBeano For This Useful Post: [ Click to Expand ]
 
szczeslaw
Old
#2  
Member
Thanks Meter 28
Posts: 47
Join Date: Oct 2006
Great stuff. Thanks man.
I wonder, what is really implemented in I9000.
For example, would it be possible, to make a remote controller for music (something like HTC RC-E100 - i've had it for my Raphael and Hero, and it was great).
Well, when i find some time, i'll try to experiment a bit with that.
 
snapper.fishes
Old
#3  
snapper.fishes's Avatar
Senior Member
Thanks Meter 280
Posts: 1,602
Join Date: Aug 2010
Location: Hong Kong
Good job.

Makes you wonder why Samsung still hasn't released that damn dock yet.
 
19arek93
Old
#4  
Junior Member
Thanks Meter 0
Posts: 28
Join Date: Aug 2010
What about "USB OTG Mode"? : o
 
Helvio88
Old
#5  
Junior Member
Thanks Meter 36
Posts: 23
Join Date: Sep 2010
How did you get into the Home Dock mode?
 
TheBeano
Old
(Last edited by TheBeano; 27th October 2010 at 10:00 PM.)
#6  
Senior Member - OP
Thanks Meter 184
Posts: 348
Join Date: Jul 2010
Quote:
Originally Posted by Helvio88 View Post
How did you get into the Home Dock mode?
Both a 1k and a 330R resistor triggered Home Dock mode for me, I see they're not on the list either.
 
brunes
Old
#7  
Senior Member
Thanks Meter 42
Posts: 610
Join Date: Dec 2006
Quote:
Originally Posted by 19arek93 View Post
What about "USB OTG Mode"? : o
USB "On The Go" basically lets you connect two USB devices together with no PC in between and have them talk, assuming both devices support it.

For example maybe you could connect your SGS to a digital camera and copy photos off it. Or connect it to an MP3 player and copy songs.

http://en.wikipedia.org/wiki/USB_On-The-Go
 
szczeslaw
Old
#8  
Member
Thanks Meter 28
Posts: 47
Join Date: Oct 2006
Quote:
Originally Posted by snapper.fishes View Post
Good job.

Makes you wonder why Samsung still hasn't released that damn dock yet.
They did, but only for America for now (at least it's listed in accessories on Samsung's US website).

Quote:
Originally Posted by TheBeano View Post
Both a 1k and a 330R resistor triggered Home Dock mode for me, I see they're not on the list either.
Well, 1K didn't work for me. I'll have to find 330R (it won't be easy though, cause i have a lot of mess in tools and electronic parts, after moving to another apartement ).
 
tonymy01
Old
(Last edited by tonymy01; 28th October 2010 at 11:53 AM.)
#9  
Senior Member
Thanks Meter 22
Posts: 175
Join Date: Aug 2010
Location: Sydney
It is 301K, not 330ohms(=330R) +1K. ...for the download mode I presume you are talking about?
 
TheBeano
Old
(Last edited by TheBeano; 28th October 2010 at 12:59 PM.)
#10  
Senior Member - OP
Thanks Meter 184
Posts: 348
Join Date: Jul 2010
Quote:
Originally Posted by szczeslaw View Post
Well, 1K didn't work for me. I'll have to find 330R (it won't be easy though, cause i have a lot of mess in tools and electronic parts, after moving to another apartement ).
Check in the dmesg log for something like this:

Code:
Select Code
<4>[15461.339356] [FSA9480] FSA9480_ReadIntRegister
<4>[15461.389352] [otg_clock_enable] clk_enable(otg_clock) OK.
<4>[15461.402600] [FSA9480] FSA9480_ProcessDevice (dev1 : 0x0, dev2 : 0x40)
<4>[15461.402707] AudioVideo
<4>[15461.402769] FSA9480_enable_spk
<6>[15461.402842] set_dock_state : 0X1
<4>[15461.423626] FSA9480_Enable_SPK --- enable
In fsa9480_i2c.c it is going through the branch where the home dock is plugged in, but the device detected is FSA9480_DEV_TY2_AV, which should be 80K, not 1K? So, more testing needed I think.

Also I have Alarm Clock PlusV2 installed which is the app that was triggered by this action. I did try installing the Samsung Desk Home app but it doesn't work on Froyo.

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes