[gta02-core] Audio rework

Rene Harder rehar at saweb.de
Tue Jun 23 21:57:43 CEST 2009

Werner Almesberger wrote:
> [ Copying the hardware list since this has been researched thoroughly
>   in GTA02 and GTA03. ]
> Rene Harder wrote:
>> I started already an ECN (ecn0010) with some notes and ideas what we
>> need to change.
> I added a bunch of ECNs for all the audio issues and tweaks I'm aware
> of. If you're already covering them in ECN0010, I'd just withdraw mine
> and you can list the items there. Perhaps the title of ENC0010 should
> then become something like "Audio done right, at last" ;-)
> The ECNs are:
> 0015    Edit    Remove Calypso serial interface on headset (U4401)
> 0018    Edit    Add beads/filters to audio signals leaving/entering can
> 0019    Edit    Consider applying buzz fix
> 0020    Discuss No common mode choke on stereo signals (B4102)
> 0021    Defer   Use EMI-hardened microphone (MC4301)
> 0022    Edit    Apply bass fix

My suggestion:

We keep the individual ECNs, in this way it's easier to have an overview
of the changes.
In the ECNs we shortly describe the reason/problem and refer to the ECN
with the name "global audio rework".
How does that sound?

>> If we connect JACK_INSERT to the GPIO4 pin, the codec will switch
>> automatically between earpiece and headset. However we still can select
>> the output with the corresponding register settings of the codec.
>> What do you think, is it necessary to do that in hardware?
> Hmm, you mean that on jack removal/insertion, the codec would switch
> automatically, the CPU would also get notified (via GPF4/JACK_INSERT),
> plus there would be a way for the CPU to override the codec's decision ?
> I'm not sure if the whole scenario is simple enough to do it in
> hardware. E.g., connecting headphones indicates that the user may
> be interested in cutting all audio that comes from speakers inside
> the phone, but there may be exceptions as well.

Yes you can override this feature because you need to activate it first.
That's what the data sheet says:

"Pin 43 (GPIO4) can be used as a headphone switch control input to
automatically disable the speaker
output and enable the headphone output e.g. when a headphone is plugged
into a jack socket. In this
mode, enabled by setting HPSWEN, pin 43 switches between headphone and
speaker outputs (e.g.
when pin 43 is connected to a mechanical switch in the headphone socket
to detect plug-in). ....."

Maybe we should stay as it is right now or are there any problems with
the current configuration?

>> We increase the cap size to at least 100uF (better more). This results
>> in a dramatically increased physical size of the capacitor. I think the
>> maximum capacity for a common 1206 ceramic cap is 100uF at 6.3V.
>> (f_cutoff=50Hz @Z_headphone=32OHM and C=100uF)
> In the GTA03-6410 design, I see a 47 uF cap on each channel,
> following a bead.

That's a question of the size, I think you can get a 0805 up to 47uF/6.3V .

>> In this case we need
>> to change the headset and jack to get a separate ground for headphone
>> and microphone.
> That sounds very messy, as headsets with separate ground may not
> be readily available (do they even exist ?)
> Alas, the ~1.3 V of bias we could get with headset ground at Vmid
> doesn't seem to be enough for any microphone that would be remotely
> suitable :-(

Yes it does, but would be the perfect solution for an external headset
(regarding bandwidth).
I could not find a way to solve the biasing problem with a common ground
for headphone and microphone. So i guess we need to stay with the dc
blocking capacitors.

>> Also in the GTA02 schematics there are 33 OHM resistors in series of the
>> headphone stereo path, they will increase the lower cutoff frequency but
>> will limit the maximum volume of the headphone.
>> Although it will increase our lower cut off frequency, I think we should
>> remove those completely. Also wolfson doesn't recommend any resistor in
>> the headphone paths.
> Could they be meant to offer some sort of short-circuit protection
> during jack insertion and when pressing HOLD ?

Well I'm not completely sure about that:

The output resistance of the audio amp is really small so if you now put
a high frequent signal on the audio lines (to communicate with the
calypso) your signal will decrease pretty much.
These resistor will increase the resistance in the signal path and
improve this situation a little bit.

That's just  what i think, so I might be completely wrong!!

>> Did i forgot anything else, maybe there are some problems which I'm not
>> aware of?
> I have some more:
> - no common mode choke in the stereo path (B4102). That's a component
>   change, so it may be too complicated for gta02-core, but we can at
>   least earmark it. (ECN0020)

Do yo know how much it will decrease the channel separation 10, 20 or 60 dB?

> - there's a fancy new EMI-hardened microphone that comes in a square
>   package instead of the round one. I'm not sure which one we'll get
>   from Openmoko. The old one would be a little more convenient,
>   since it doesn't require case-modding. (ECN0021)

Do we have any data about that microphone, e.g. part number, vendor etc.

> - add beads to keep the RF out (ECN0018)
> - I don't know if we'll still need to stabilize MICBIAS, aka apply
>   the buzz fix, when all this is done. (ECN0019)

I do not have a lot of information what the cause of this problem
was/is. I think it would be better to find and solve the source of the

> I hope that's all the critters we have on the audio side :)
> - Werner

More information about the gta02-core mailing list