1page.title=Wired Audio Headset Specification (v1.1) 2@jd:body 3 4<!-- 5 Copyright 2015 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 27<p>This section specifies requirements for headsets and mobile devices to 28function uniformly across the Android ecosystem.</p> 29 30<h2 id="headset_accessory_plug_specifications">Headset accessory (plug) 31specifications</h2> 32 33<p>The following requirements apply to headset accessories.</p> 34 35<h3 id="functions">Functions</h3> 36 37<table style="width:50%"> 38 <tr> 39 <th>Function</th> 40 <th>Accessory Support</th> 41 </tr> 42 <tr> 43 <td>Stereo Audio Out</td> 44 <td>Required</td> 45 </tr> 46 <tr> 47 <td>Audio in (Mic)</td> 48 <td>Required</td> 49 </tr> 50 <tr> 51 <td>Ground</td> 52 <td>Required</td> 53 </tr> 54</table> 55 56<h3 id="control-function_mapping">Control-function mapping</h3> 57 58<table> 59 <tr> 60 <th style="width:33%">Control Function</th> 61 <th style="width:33%">Accessory Support</th> 62 <th style="width:33%">Description</th> 63 </tr> 64 <tr> 65 <td>Function A</td> 66 <td>Required</td> 67 <td>Play/pause/hook (Short Press), Trigger Assist (Long Press), Next 68 (Double Press)</td> 69 </tr> 70 <tr> 71 <td>Function B</td> 72 <td>Optional</td> 73 <td>Vol+</td> 74 </tr> 75 <tr> 76 <td>Function C</td> 77 <td>Optional</td> 78 <td>Vol-</td> 79 </tr> 80 <tr> 81 <td>Function D</td> 82 <td>Optional</td> 83 <td>Reserved (Nexus devices use this to launch Voice Assist) 84</td> 85 </tr> 86</table> 87 88<p>Assign functions to buttons as follows:</p> 89 90<ul> 91 <li> All one-button headsets must implement Function A. 92 <li> Headsets with multiple buttons must implement functions according to the 93following pattern: 94 <ul> 95 <li> 2 functions: A and D 96 <li> 3 functions: A, B, C 97 <li> 4 functions: A, B, C, D 98 </ul> 99</ul> 100 101<h3 id="mechanical">Mechanical</h3> 102 103<table> 104 <tr> 105 <th style="width:33%">Function</th> 106 <th style="width:33%">Accessory Support</th> 107 <th style="width:33%">Notes</th> 108 </tr> 109 <tr> 110 <td>4 conductor 3.5mm plug</td> 111 <td>Required</td> 112 <td>Ref: EIAJ-RC5325A standard</td> 113 </tr> 114 <tr> 115 <td>CTIA pinout order (LRGM)</td> 116 <td>Required</td> 117 <td>Except in regions with legal requirements for OMTP pinout</td> 118 </tr> 119 <tr> 120 <td>OMTP pinout order (LRMG)</td> 121 <td>Optional</td> 122 <td></td> 123 </tr> 124 <tr> 125 <td>Microphone</td> 126 <td>Required</td> 127 <td>Must not be obstructed when operating headset controls</td> 128 </tr> 129</table> 130 131<h3 id="electrical">Electrical</h3> 132 133<table> 134 <tr> 135 <th style="width:33%">Function</th> 136 <th style="width:33%">Accessory Support</th> 137 <th style="width:33%">Description</th> 138 </tr> 139 <tr> 140 <td>Ear speaker impedance</td> 141 <td>16 ohms or higher</td> 142 <td>Recommend 32 - 300 ohms</td> 143 </tr> 144 <tr> 145 <td>Mic DC resistance</td> 146 <td>1000 ohms or higher 147</td> 148 <td>Mic characteristics must be compliant with section 5.4 “Audio 149 Recording” of the current 150 <a href="{@docRoot}compatibility/android-cdd.pdf">Android CDD</a></td> 151 </tr> 152 <tr> 153 <td rowspan="4">Control Function Equivalent impedance*</td> 154 <td>0 ohm</td> 155 <td>[Function A] Play/Pause/Hook</td> 156 </tr> 157 <tr> 158 <td>240 ohm +/- 1% resistance</td> 159 <td>[Function B]</td> 160 </tr> 161 <tr> 162 <td>470 ohm +/- 1% resistance</td> 163 <td>[Function C]</td> 164 </tr> 165 <tr> 166 <td>135 ohm +/- 1% resistance</td> 167 <td>[Function D]</td> 168 </tr> 169</table> 170 171<p><em>*Total impedance from positive mic terminal to GND when button is 172pressed with 2.2 V mic bias applied through 2.2 kOhm resistor</em></p> 173 174<p>In the following diagrams, Button A maps to Function A, Button B to 175Function B, and so on.</p> 176 177<h3 id="reference_headsets">Reference headset test circuits</h3> 178 179<p>The following diagram for Reference Headset Test Circuit 1 shows the CTIA 180pinout for a 4-segment plug. For the OMTP pinout, switch the positions of the 181MIC and GND segments.</p> 182 183<img src="images/headset-circuit1.png" alt="Reference Headset Test Circuit 1" /> 184<p class="img-caption"><strong>Figure 1.</strong> Reference headset test circuit 1</p> 185 186<p>The following diagram for Reference Headset Test Circuit 2 shows how the 187actual resistor values (R1 - R4) are altered to meet this specification.</p> 188 189<img src="images/headset-circuit2.png" alt="Reference Headset Test Circuit 2" /> 190<p class="img-caption"><strong>Figure 2.</strong> Reference headset test circuit 2</p> 191 192<p>The actual resistance of the buttons parallel with the microphone (R1-R4) is 193based on the microphone capsule resistance (Rmic) and the equivalent impedance 194values (ReqA-ReqD). Use the following formula:</p> 195 196<p><em>Rn=(Rmic*ReqN) / (ReqN-Rmic)</em></p> 197 198<p>Where R<em>n</em> is the actual resistance of a button, Req<em>N</em> is the 199equivalent impedance value of that button (provided), and Rmic is the 200microphone impedance value.</p> 201 202<p>The example above assumes a 5 kohm microphone impedance (Rmic); to achieve 203an equivalent R4 impedance of 135 ohm (ReqD), the actual resistor value (R4) 204must be 139 ohms.</p> 205 206<h2 id="mobile_device_jack_specifications">Mobile device (jack) specifications</h2> 207 208<p class="caution"><strong>Caution:</strong> To achieve compatibility with the 209headset specification, devices that include a 4 conductor 3.5mm audio jack 210must meet the following specifications. For Android compatibility requirements, 211refer to the <em>Analog audio ports</em> section of the <a 212href="{@docRoot}compatibility/android-cdd.pdf">Android CDD</a>.</p> 213 214<h3 id="headset_jack_functions">Functions</h3> 215 216<table> 217 <tr> 218 <th>Function</th> 219 <th>Device Support</th> 220 </tr> 221 <tr> 222 <td>Stereo Audio Out</td> 223 <td>Required</td> 224 </tr> 225 <tr> 226 <td>Audio in (Mic)</td> 227 <td>Required</td> 228 </tr> 229 <tr> 230 <td>Ground</td> 231 <td>Required</td> 232 </tr> 233</table> 234 235<h3 id="software_mapping">Software mapping</h3> 236 237<table> 238 <tr> 239 <th style="width:33%">Function</th> 240 <th style="width:33%">Device Support</th> 241 <th style="width:33%">Description</th> 242 </tr> 243 <tr> 244 <td>Function A control event</td> 245 <td>Required</td> 246 <td>input event KEY_MEDIA 247<p>Android key KEYCODE_HEADSETHOOK</p></td> 248 </tr> 249 <tr> 250 <td>Function D control event</td> 251 <td>Required</td> 252 <td>input event KEY_VOICECOMMAND 253<p>Android key KEYCODE_VOICE_ASSIST</p></td> 254 </tr> 255 <tr> 256 <td>Function B control event</td> 257 <td>Required 258</td> 259 <td>input event KEY_VOLUMEUP 260<p>Android key VOLUME_UP</p></td> 261 </tr> 262 <tr> 263 <td>Function C control event</td> 264 <td>Required</td> 265 <td>input event KEY_VOLUMEDOWN 266<p>Android key VOLUME_DOWN</p></td> 267 </tr> 268 <tr> 269 <td>Headset insertion detection</td> 270 <td>Required</td> 271 <td>input event SW_JACK_PHYSICAL_INSERT 7</td> 272 </tr> 273 <tr> 274 <td rowspan="2">Headset type detection</td> 275 <td>Mic</td> 276 <td>input event SW_MICROPHONE_INSERT 4</td> 277 </tr> 278 <tr> 279 <td>No Mic</td> 280 <td>input event SW_HEADPHONE_INSERT 2</td> 281 </tr> 282 <tr> 283 <td rowspan="2">Headset speaker impedance</td> 284 <td>Required Headphone (low)</td> 285 <td>Failure mode is to indicate headphones so limitation would be on</td> 286 </tr> 287 <tr> 288 <td>Required Line In (high)</td> 289 <td>input event SW_LINEOUT_INSERT 6</td> 290 </tr> 291</table> 292 293<h3 id="mechanical11">Mechanical</h3> 294 295<table> 296 <tr> 297 <th style="width:33%">Function</th> 298 <th style="width:33%">Device Support</th> 299 <th style="width:33%">Description</th> 300 </tr> 301 <tr> 302 <td>4 conductor 3.5mm jack</td> 303 <td>Required</td> 304 <td></td> 305 </tr> 306 <tr> 307 <td>CTIA pinout order (LRGM)</td> 308 <td>Required</td> 309 <td>3 Pin & Mono Plug Compatible</td> 310 </tr> 311 <tr> 312 <td>OMTP pinout order (LRMG)</td> 313 <td>Optional but strongly recommended</td> 314 <td></td> 315 </tr> 316 <tr> 317 <td>Headset detect sequence</td> 318 <td>Required</td> 319 <td>Plug insert notification must be triggered only after all contacts on 320 plug are touching their relevant segments (this prevents unreliable headset 321 detection due to slow insertion.</td> 322 </tr> 323</table> 324 325<h3 id="electrical12">Electrical</h3> 326 327<h4 id="general">General</h4> 328 329<table> 330 <tr> 331 <th style="width:33%">Function</th> 332 <th style="width:33%">Device Support</th> 333 <th style="width:33%">Notes</th> 334 </tr> 335 <tr> 336 <td>Maximum output voltage drive</td> 337 <td>150mV</td> 338 <td>>= 150mV on 32 ohm 339<p>Test conditions: EN50332-2</p></td> 340 </tr> 341 <tr> 342 <td>Mic bias resistance</td> 343 <td>Required</td> 344 <td>Flexible on detection method used and microphone bias resistor 345 selection. Require that all button resistance value ranges specified below 346 be detected and related to their respective function</td> 347 </tr> 348 <tr> 349 <td>Mic bias voltage</td> 350 <td>1.8V - 2.9V</td> 351 <td>To guarantee compatibility to common microphone capsules.</td> 352 </tr> 353</table> 354 355<h4 id="function_impedance_and_threshold_detection">Function impedance and 356threshold detection</h4> 357 358<p>Devices must detect the following resistor ladder on the accessories. The 359accessories will be tested to the standardized circuit diagram in the diagram 360illustrated earlier (Reference Headset Test Circuit) where the total impedance 361is measured from MIC terminal to GND when a button is pressed with 2.2V mic 362bias applied through 2.2 kOhm resistor. This is the same effective resistance 363as the button detection circuit with the microphone in parallel with the button 364resistor.</p> 365 366<table> 367 <tr> 368 <th style="width:40%">Button Impedance Level</th> 369 <th style="width:20%">Device Support</th> 370 <th style="width:40%">Notes</th> 371 </tr> 372 <tr> 373 <td>70 ohm or less</td> 374 <td>Required</td> 375 <td>[Function A]</td> 376 </tr> 377 <tr> 378 <td>110 - 180 ohm</td> 379 <td>Required</td> 380 <td>[Function D]</td> 381 </tr> 382 <tr> 383 <td>210 - 290 ohm</td> 384 <td>Required</td> 385 <td>[Function B]</td> 386 </tr> 387 <tr> 388 <td>360 - 680 ohm</td> 389 <td>Required</td> 390 <td>[Function C]</td> 391 </tr> 392 </table> 393 394 <table> 395 <tr> 396 <th style="width:40%">Headset Speaker Impedance Level</th> 397 <th style="width:20%">Device Support</th> 398 <th style="width:40%">Notes</th> 399 </tr> 400 <tr> 401 <td>Low Threshold Detection</td> 402 <td>Required</td> 403 <td>Headphone (low) < 1 Kohm</td> 404 </tr> 405 <tr> 406 <td>High Threshold Detection</td> 407 <td>Required</td> 408 <td>Line In (high) > 5 Kohm</td> 409 </tr> 410</table> 411 412 <table> 413 <tr> 414 <th style="width:40%">4-Segment Plug Detection Resistance (between 3rd and 4th segment)</th> 415 <th style="width:20%">Device Support</th> 416 <th style="width:40%">Notes</th> 417 </tr> 418 <tr> 419 <td>4-Segment Plug Threshold</td> 420 <td>Required</td> 421 <td>Resistance >= 100 ohms</td> 422 </tr> 423 <tr> 424 <td>3-Segment Plug Threshold</td> 425 <td>Required</td> 426 <td>Resistance < 100 ohms</td> 427 </tr> 428</table> 429