blob: 386b4db03a047354ace781c6f94cc423201733df [file] [log] [blame]
Glenn Kasten9f5130c2014-11-10 14:36:08 -08001page.title=FunPlug Audio Dongle
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
27<p>
28The diagram and photo below show an audio loopback
29<a href="http://en.wikipedia.org/wiki/Dongle">dongle</a>
30for the
31<a href="http://en.wikipedia.org/wiki/Phone_connector_(audio)">headset connector</a>
32that we call the "FunPlug".
33The Chrome hardware team designed this circuit and plug for functional testing,
34however it has many other uses too. The Android audio team uses it to measure
35<a href="audio_latency_measure.html#measuringRoundTrip">round-trip audio latency</a>,
36via the Larsen effect (feedback loop).
37</p>
38
39<h2 id="funplugCircuit">FunPlug circuit</h2>
40
41<img src="audio/images/funplug_circuit.png" alt="FunPlug circuit" />
42
43<p>
44To ensure that the output signal will not overload the microphone input,
45we cut it down by about 20 dB.
46The resistor loads are there to tell the microphone polarity switch that
47it is a US/CTIA pinout plug.
48</p>
49
50<h2 id="funplugAssembled">FunPlug assembled</h2>
51
52<img src="audio/images/funplug_assembled.jpg" alt="FunPlug fully assembled" />
53