blob: d87c19ae9fca327cdf364aef3b42f74b292499c9 [file] [log] [blame]
Clay Murphy7327b8e2014-10-29 18:37:03 -07001page.title=Wired audio headset specification
2@jd:body
3
4<!--
5 Copyright 2014 The Android Open Source Project
6
7 Licensed under the Apache License, Version 2.0 (the "License");
8 you may not use this file except in compliance with the License.
9 You may obtain a copy of the License at
10
11 http://www.apache.org/licenses/LICENSE-2.0
12
13 Unless required by applicable law or agreed to in writing, software
14 distributed under the License is distributed on an "AS IS" BASIS,
15 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 See the License for the specific language governing permissions and
17 limitations under the License.
18-->
19<div id="qv-wrapper">
20 <div id="qv">
21 <h2>In this document</h2>
22 <ol id="auto-toc">
23 </ol>
24 </div>
25</div>
26
Clay Murphy92c38f92014-10-30 18:19:30 -070027<p><em>Version 1.0</em></p>
28
Clay Murphy7327b8e2014-10-29 18:37:03 -070029<p>This document specifies the requirements for headsets and mobile devices to
30function uniformly across the Android ecosystem. It is separated into two
31sections beginning with the specifications for the headset
32accessory followed by the specifications for the mobile device.</p>
33
34<h2 id=headset_accessory_plug_specifications>Headset Accessory (Plug) Specifications</h2>
35
36<p>The requirements in the following section apply to the headset accessory.</p>
37
Clay Murphy0bbc34a2014-11-04 17:35:47 -080038<h3 id=functions>Functions</h3>
Clay Murphy7327b8e2014-10-29 18:37:03 -070039
40<table>
41 <tr>
42 <th>
43<p><strong>Function</strong></p>
44</th>
45 <th>
46<p><strong>Accessory Support</strong></p>
47</th>
48 </tr>
49 <tr>
50 <td>
51<p>Stereo Audio Out</p>
52</td>
53 <td>
54<p><strong>Required</strong></p>
55</td>
56 </tr>
57 <tr>
58 <td>
59<p>Audio in (Mic)</p>
60</td>
61 <td>
62<p><strong>Required</strong></p>
63</td>
64 </tr>
65 <tr>
66 <td>
67<p>Ground</p>
68</td>
69 <td>
70<p><strong>Required</strong></p>
71</td>
72 </tr>
73</table>
74
Clay Murphy0bbc34a2014-11-04 17:35:47 -080075<h3 id=control-function_mapping>Control-Function Mapping</h3>
Clay Murphy7327b8e2014-10-29 18:37:03 -070076
77<table>
78 <tr>
79 <th>
80<p><strong>Control Function</strong></p>
81</th>
82 <th>
83<p><strong>Accessory Support</strong></p>
84</th>
85 <th>
86<p><strong>Description</strong></p>
87</th>
88 </tr>
89 <tr>
90 <td>
91<p>Function A</p>
92</td>
93 <td>
94<p><strong>Required</strong></p>
95</td>
96 <td>
97<p>Play/pause/hook (Short Press), Trigger Assist (Long Press), Next (double press)</p>
98</td>
99 </tr>
100 <tr>
101 <td>
102<p>Function B</p>
103</td>
104 <td>
105<p>Optional</p>
106</td>
107 <td>
108<p>Vol+</p>
109</td>
110 </tr>
111 <tr>
112 <td>
113<p>Function C</p>
114</td>
115 <td>
116<p>Optional</p>
117</td>
118 <td>
119<p>Vol-</p>
120</td>
121 </tr>
122 <tr>
123 <td>
124<p>Function D</p>
125</td>
126 <td>
127<p>Optional</p>
128</td>
129 <td>
130<p>Reserved (Nexus devices will use this reserved function to launch Google Now
131voice search)</p>
132</td>
133 </tr>
134</table>
135
136<p><strong>Assign functions to buttons as follows</strong>:</p>
137
138<ul>
139 <li> All one-button headsets must implement Function A.
140 <li> Headsets with multiple buttons must implement functions according to the
141following pattern:
142 <ul>
143 <li> 2 functions: A and D
144 <li> 3 functions: A, B, C
145 <li> 4 functions: A, B, C, D
146 </ul>
147</ul>
148
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800149<h3 id=mechanical>Mechanical</h3>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700150
151<table>
152 <tr>
153 <th>
154<p><strong>Function</strong></p>
155</th>
156 <th>
157<p><strong>Accessory Support</strong></p>
158</th>
159 <th>
160<p><strong>Notes</strong></p>
161</th>
162 </tr>
163 <tr>
164 <td>
165<p>4 conductor 3.5mm plug</p>
166</td>
167 <td>
168<p><strong>Required</strong></p>
169</td>
170 <td>
171<p>Ref: EIAJ-RC5325A standard</p>
172</td>
173 </tr>
174 <tr>
175 <td>
176<p>CTIA pinout order (LRGM)</p>
177</td>
178 <td>
179<p><strong>Required</strong></p>
180</td>
181 <td>
182<p>Except in regions with legal requirements for OMTP pinout</p>
183</td>
184 </tr>
185 <tr>
186 <td>
187<p>OMTP pinout order (LRMG)</p>
188</td>
189 <td>
190<p>Optional</p>
191</td>
192 <td></td>
193 </tr>
194 <tr>
195 <td>
196<p>Microphone</p>
197</td>
198 <td>
199<p><strong>Required</strong></p>
200</td>
201 <td>
202<p>Must not be obstructed when operating headset controls</p>
203</td>
204 </tr>
205</table>
206
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800207<h3 id=electrical>Electrical</h3>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700208
209<table>
210 <tr>
211 <th>
212<p><strong>Function</strong></p>
213</th>
214 <th>
215<p><strong>Accessory Support</strong></p>
216</th>
217 <th>
218<p><strong>Description</strong></p>
219</th>
220 </tr>
221 <tr>
222 <td>
223<p>Ear speaker impedance</p>
224</td>
225 <td>
226<p><strong>16 ohms or higher</strong></p>
227</td>
228 <td>
229<p>Recommend 32 - 300 ohms</p>
230</td>
231 </tr>
232 <tr>
233 <td>
234<p>Mic DC resistance</p>
235</td>
236 <td>
237<p><strong>1000 ohms or higher</strong></p>
238</td>
239 <td>
240<p>Mic characteristics must be compliant with section 5.4 Audio Recording of
241current Android Compatibility Definition Document (CDD)</p>
242</td>
243 </tr>
244 <tr>
245 <td>
246<p>Control Function Equivalent impedance*</p>
247
248<p>*Total impedance from positive mic terminal to GND when button is pressed with
2492.2 V mic bias applied through 2.2 kOhm resistor</p>
250</td>
251 <td>
252<p><strong>0 ohm</strong></p>
253</td>
254 <td>
255<p>[Function A] Play/Pause/Hook</p>
256</td>
257 </tr>
258 <tr>
259 <td></td>
260 <td>
261<p><strong>240 ohm</strong> +/- 1% resistance</p>
262</td>
263 <td>
264<p>[Function B]</p>
265</td>
266 </tr>
267 <tr>
268 <td></td>
269 <td>
270<p><strong>470 ohm</strong> +/- 1% resistance</p>
271</td>
272 <td>
273<p>[Function C] </p>
274</td>
275 </tr>
276 <tr>
277 <td></td>
278 <td>
279<p><strong>135 ohm</strong> +/- 1% resistance</p>
280</td>
281 <td>
282<p>[Function D]</p>
283</td>
284 </tr>
285</table>
286
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800287<h3 id=reference_headset_test_circuit_1>Reference Headset Test Circuit 1</h3>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700288
289<img src="images/headset-circuit1.png" alt="Reference Headset Test Circuit 1" />
290<p class="img-caption"><strong>Figure 1.</strong> Reference headset test circuit 1</p>
291
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800292<p class="note"><strong>Note:</strong> Four-segment plug shows CTIA pinout. For
293OMTP pinout, please swap MIC and GND segments.</p>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700294
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800295<h3 id=reference_headset_test_circuit_2>Reference Headset Test Circuit 2</h3>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700296
297<img src="images/headset-circuit2.png" alt="Reference Headset Test Circuit 2" />
298<p class="img-caption"><strong>Figure 2.</strong> Reference headset test circuit 2</p>
299
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800300<p class="note"><strong>Note:</strong> The second reference circuit above
301illustrates how the actual resistor values (R1 - R4) will change based on the
302microphone capsule resistance to achieve the equivalent impedance values as
303required by the specification. The example above assumes a 5 kOhm microphone
304impedance. Therefore, as an example, to achieve an equivalent R4 impedance of
305135 Ohm, the actual R4 resistor value needs to be 139 Ohms.</p>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700306
307<h2 id=mobile_device_jack_specifications>Mobile Device (Jack) Specifications</h2>
308
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800309<p class="caution"><strong>Caution:</strong> To achieve compatibility with the
310headset specification above, devices that include a 4 conductor 3.5mm audio
311jack must meet the following specifications. Please see the <em>Analog audio
312ports</em> section of the <a
313href="{@docRoot}compatibility/android-cdd.pdf">Android Compatibility Definition
314Document (CDD)</a> for Android compatibility requirements.</p>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700315
316<p><strong>Headset Jack Functions</strong></p>
317<table>
318 <tr>
319 <th>
320<p><strong>Function</strong></p>
321</th>
322 <th>
323<p><strong>Device Support</strong></p>
324</th>
325 </tr>
326 <tr>
327 <td>
328<p>Stereo Audio Out</p>
329</td>
330 <td>
331<p><strong>Required</strong></p>
332</td>
333 </tr>
334 <tr>
335 <td>
336<p>Audio in (Mic)</p>
337</td>
338 <td>
339<p><strong>Required</strong></p>
340</td>
341 </tr>
342 <tr>
343 <td>
344<p>Ground</p>
345</td>
346 <td>
347<p><strong>Required</strong></p>
348</td>
349 </tr>
350</table>
351
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800352<h3 id=software_mapping>Software mapping</h3>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700353
354<table>
355 <tr>
356 <th>
357<p><strong>Function</strong></p>
358</th>
359 <th>
360<p><strong>Device Support</strong></p>
361</th>
362 <th>
363<p><strong>Description</strong></p>
364</th>
365 </tr>
366 <tr>
367 <td>
368<p>Function A control event </p>
369</td>
370 <td>
371<p><strong>Required</strong></p>
372</td>
373 <td>
374<p>input event KEY_MEDIA</p>
375
376<p>Android key KEYCODE_HEADSETHOOK</p>
377</td>
378 </tr>
379 <tr>
380 <td>
381<p>Function D control event</p>
382</td>
383 <td>
384<p><strong>Required</strong></p>
385</td>
386 <td>
387<p>input event KEY_VOICECOMMAND</p>
388
389<p>Android key KEYCODE_VOICE_ASSIST</p>
390</td>
391 </tr>
392 <tr>
393 <td>
394<p>Function B control event</p>
395</td>
396 <td>
397<p><strong>Required</strong></p>
398</td>
399 <td>
400<p>input event KEY_VOLUMEUP</p>
401
402<p>Android key VOLUME_UP</p>
403</td>
404 </tr>
405 <tr>
406 <td>
407<p>Function C control event</p>
408</td>
409 <td>
410<p><strong>Required</strong></p>
411</td>
412 <td>
413<p>input event KEY_VOLUMEDOWN</p>
414
415<p>Android key VOLUME_DOWN</p>
416</td>
417 </tr>
418 <tr>
419 <td>
420<p>Headset insertion detection</p>
421</td>
422 <td>
423<p><strong>Required</strong></p>
424</td>
425 <td>
426<p>input event SW_JACK_PHYSICAL_INSERT 7</p>
427</td>
428 </tr>
429 <tr>
430 <td>
431<p>Headset type detection</p>
432</td>
433 <td>
434<p><strong>Mic</strong></p>
435</td>
436 <td>
437<p>input event SW_MICROPHONE_INSERT 4</p>
438</td>
439 </tr>
440 <tr>
441 <td>
442<p>Headset type detection</p>
443</td>
444 <td>
445<p><strong>No Mic</strong></p>
446</td>
447 <td>
448<p>input event SW_HEADPHONE_INSERT 2</p>
449</td>
450 </tr>
451 <tr>
452 <td>
453<p>Headset speaker impedance</p>
454</td>
455 <td>
456<p><strong>Required Headphone (low)</strong></p>
457</td>
458 <td>
459<p>Failure mode is to indicate headphones so that limitation would be on</p>
460</td>
461 </tr>
462 <tr>
463 <td>
464<p>Headset speaker impedance</p>
465</td>
466 <td>
467<p><strong>Required Line In (high)</strong></p>
468</td>
469 <td>
470<p>input event SW_LINEOUT_INSERT 6</p>
471</td>
472 </tr>
473</table>
474
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800475<h3 id=mechanical11>Mechanical</h3>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700476
477<table>
478 <tr>
479 <th>
480<p><strong>Function</strong></p>
481</th>
482 <th>
483<p><strong>Device Support</strong></p>
484</th>
485 <th>
486<p><strong>Description</strong></p>
487</th>
488 </tr>
489 <tr>
490 <td>
491<p>4 conductor 3.5mm jack</p>
492</td>
493 <td>
494<p><strong>Required</strong></p>
495</td>
496 <td></td>
497 </tr>
498 <tr>
499 <td>
500<p>CTIA pinout order (LRGM)</p>
501</td>
502 <td>
503<p><strong>Required</strong></p>
504</td>
505 <td>
506<p>3 Pin & Mono Plug Compatible</p>
507</td>
508 </tr>
509 <tr>
510 <td>
511<p>OMTP pinout order (LRMG)</p>
512</td>
513 <td>
514<p>Optional but <strong>Strongly Recommended</strong></p>
515</td>
516 <td></td>
517 </tr>
518 <tr>
519 <td>
520<p>Headset detect sequence</p>
521</td>
522 <td>
523<p><strong>Required</strong></p>
524</td>
525 <td>
526<p>Plug insert notification must only be triggered after all contacts on plug are
527touching their relevant segments. This will prevent unreliable headset
528detection due to slow insertion. </p>
529</td>
530 </tr>
531</table>
532
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800533<h3 id=electrical12>Electrical</h3>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700534
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800535<h4 id=general>General</h4>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700536
537<table>
538 <tr>
539 <th>
540<p><strong>Function</strong></p>
541</th>
542 <th>
543<p><strong>Device Support</strong></p>
544</th>
545 <th>
546<p><strong>Notes</strong></p>
547</th>
548 </tr>
549 <tr>
550 <td>
551<p>Minimum output voltage drive capacity </p>
552</td>
553 <td>
554<p>150mV </p>
555</td>
556 <td>
557<p>&gt;= 150mV on 32 ohm</p>
558
559<p>Test conditions: EN50332-2</p>
560</td>
561 </tr>
562 <tr>
563 <td>
564<p>Mic bias resistance </p>
565</td>
566 <td>
567<p>Required</p>
568</td>
569 <td>
570<p>Flexible on detection method used and microphone bias resistor selection.
571Require that all button resistance value ranges specified below be detected and
572related to their respective function</p>
573</td>
574 </tr>
575 <tr>
576 <td>
577<p>Mic bias voltage</p>
578</td>
579 <td>
580<p>1.8V - 2.9V</p>
581</td>
582 <td>
583<p>To guarantee compatibility to common microphone capsules.</p>
584</td>
585 </tr>
586</table>
587
Clay Murphy0bbc34a2014-11-04 17:35:47 -0800588<h4 id=function_impedance_and_threshold_detection>Function Impedance and Threshold Detection</h4>
Clay Murphy7327b8e2014-10-29 18:37:03 -0700589
590<p>Devices must detect the following resistor ladder on the accessories. The
591accessories will be tested to the standardized circuit diagram in the diagram
592illustrated earlier (Reference Headset Test Circuit) where the total impedance
593is measured from MIC terminal to GND when a button is pressed with 2.2V mic
594bias applied through 2.2 kOhm resistor. This is the same effective resistance
595as the button detection circuit with the microphone in parallel with the button
596resistor.</p>
597<table>
598 <tr>
599 <th>
600<p><strong>Button Impedance Level</strong></p>
601</th>
602 <th>
603<p><strong>Device Support</strong></p>
604</th>
605 <th>
606<p><strong>Notes</strong></p>
607</th>
608 </tr>
609 <tr>
610 <td>
611<p><strong>70 ohm or less</strong></p>
612</td>
613 <td>
614<p><strong>Required</strong></p>
615</td>
616 <td>
617<p>[Function A]</p>
618</td>
619 </tr>
620 <tr>
621 <td>
622<p><strong>110 - 180 ohm </strong></p>
623</td>
624 <td>
625<p><strong>Required</strong></p>
626</td>
627 <td>
628<p>[Function D]</p>
629</td>
630 </tr>
631 <tr>
632 <td>
633<p><strong>210 - 290 ohm</strong></p>
634</td>
635 <td>
636<p><strong>Required</strong></p>
637</td>
638 <td>
639<p>[Function B]</p>
640</td>
641 </tr>
642 <tr>
643 <td>
644<p><strong>360 - 680 ohm </strong></p>
645</td>
646 <td>
647<p><strong>Required</strong></p>
648</td>
649 <td>
650<p>[Function C]</p>
651</td>
652 </tr>
653 <tr>
654 <td>
655<p><strong>Headset speaker impedance level</strong></p>
656</td>
657 <td></td>
658 <td></td>
659 </tr>
660 <tr>
661 <td>
662<p>Low Threshold Detection</p>
663</td>
664 <td>
665<p><strong>Required</strong></p>
666</td>
667 <td>
668<p>Headphone (low) &lt; 1 Kohm</p>
669</td>
670 </tr>
671 <tr>
672 <td>
673<p>High Threshold Detection</p>
674</td>
675 <td>
676<p><strong>Required</strong></p>
677</td>
678 <td>
679<p>Line In (high) &gt; 5 Kohm</p>
680</td>
681 </tr>
682</table>