검색을 해보니 삼성 스마트폰에만 해당하는 내용일 수 도 있겠지만 FSA9480라는 Fairchild사의 USB 스위치라는 것이 이러한 기능을 수행하도록 되어 있다고 한다. 기본적인 원리는 USB 포트의 D+와 D- 사이에 걸리는 저항값을 통해서 USB OTG로 동작할 것인지, 해드셋으로 동작할 것이지 등등의 모드 전환을 수행한다고 되어 있다.
USB ID resistor values
Mode Name
|
Resisor value
|
Internal mode value
|
Description
|
RID_USB_OTG_MODE
|
0 (GND)
|
0 0 0 0 0
|
USB OTG Mode
|
RID_AUD_SEND_END_BTN
|
2 K
|
0 0 0 0 1
|
Audio Send_End Button
|
RID_AUD_REMOTE_S1_BTN
|
2.604 K
|
0 0 0 1 0
|
Audio Remote S1 Button
|
RID_AUD_REMOTE_S2_BTN
|
3.208 K
|
0 0 0 1 1
|
Audio Remote S2 Button
|
RID_AUD_REMOTE_S3_BTN
|
4.014 K
|
0 0 1 0 0
|
Audio Remote S3 Button
|
RID_AUD_REMOTE_S4_BTN
|
4.82 K
|
0 0 1 0 1
|
Audio Remote S4 Button
|
RID_AUD_REMOTE_S5_BTN
|
6.03 K
|
0 0 1 1 0
|
Audio Remote S5 Button
|
RID_AUD_REMOTE_S6_BTN
|
8.03 K
|
0 0 1 1 1
|
Audio Remote S6 Button
|
RID_AUD_REMOTE_S7_BTN
|
10.03 K
|
0 1 0 0 0
|
Audio Remote S7 Button
|
RID_AUD_REMOTE_S8_BTN
|
12.03 K
|
0 1 0 0 1
|
Audio Remote S8 Button
|
RID_AUD_REMOTE_S9_BTN
|
14.46 K
|
0 1 0 1 0
|
Audio Remote S9 Button
|
RID_AUD_REMOTE_S10_BTN
|
17.26 K
|
0 1 0 1 1
|
Audio Remote S10 Button
|
RID_AUD_REMOTE_S11_BTN
|
20.5 K
|
0 1 1 0 0
|
Audio Remote S11 Button
|
RID_AUD_REMOTE_S12_BTN
|
24.07 K
|
0 1 1 0 1
|
Audio Remote S12 Button
|
RID_RESERVED_1
|
28.7 K
|
0 1 1 1 0
|
Reserved Accessory #1
|
RID_RESERVED_2
|
34 K
|
0 1 1 1 1
|
Reserved Accessory #2
|
RID_RESERVED_3
|
40.2 K
|
1 0 0 0 0
|
Reserved Accessory #3
|
RID_RESERVED_4
|
49.9 K
|
1 0 0 0 1
|
Reserved Accessory #4
|
RID_RESERVED_5
|
64.9 K
|
1 0 0 1 0
|
Reserved Accessory #5
|
RID_AUD_DEV_TY_2
|
80.07 K
|
1 0 0 1 1
|
Audio Device Type 2
|
RID_PHONE_PWD_DEV
|
102 K
|
1 0 1 0 0
|
Phone Powered Device
|
RID_TTY_CONVERTER
|
121 K
|
1 0 1 0 1
|
TTY Converter
|
RID_UART_CABLE
|
150 K
|
1 0 1 1 0
|
UART Cable
|
RID_CEA936A_TY_1
|
200 K
|
1 0 1 1 1
|
CEA936A Type-1 Charger 1
|
RID_FM_BOOT_OFF_USB
|
255 K
|
1 1 0 0 0
|
Factory Mode Boot OFF-USB
|
RID_FM_BOOT_ON_USB
|
301 K
|
1 1 0 0 1
|
Factory Mode Boot ON-USB
|
RID_AUD_VDO_CABLE
|
365 K
|
1 1 0 1 0
|
Audio/Video Cable
|
RID_CEA936A_TY_2
|
442 K
|
1 1 0 1 1
|
CEA936A Type-2 Charger 1
|
RID_FM_BOOT_OFF_UART
|
523 K
|
1 1 1 0 0
|
Factory Mode Boot OFF-UART
|
RID_FM_BOOT_ON_UART
|
619 K
|
1 1 1 0 1
|
Factory Mode Boot ON-UART
|
RID_AUD_DEV_TY_1_REMOTE
|
1000.07 K
|
1 1 1 1 0
|
Audio Device Type 1 with Remote 2
|
RID_AUD_DEV_TY_1_SEND
|
1002 K
|
Audio Device Type 1 / Only Send-End 2
| |
RID_USB_MODE
|
Open
|
1 1 1 1 1
|
USB Mode, Dedicated Charger or Accessory Detach
|
출처 : http://www.jetdroid.org/moin/SamsungUARTdebugging
이와 같은 기능을 이용해서 삼성 스마트폰 제조 과정에서 스마트폰의 정상동작을 점검하는 디버그 장비로 활용하는 것같다. 이름도 얄딱구리한 Samsung Anyway JIG라는 것이 바로 그것인 것 같다.
출처 : http://forum.xda-developers.com/showthread.php?t=1629359
비슷한 기능의 것들이 다른 스마트폰에도 있을 것이다. 우선은 위의 기능을 이용해서 micro USB 포트를 다른 모드로 동작하도록 해 보아야 겠다. 디버깅 포트로도 해보고 오디오 기능으로도 해보고 말이다. 그런데 삼성 스마트 폰이 없다. ㅋㅋㅋ