GSM buzz and gsmhandset.state

Jan R jan.random at googlemail.com
Thu Oct 23 20:09:37 CEST 2008


On Thu, 23 Oct 2008 22:04:36 +0800, matt_hsu wrote:
> Can I know which hardware version do you use? A5 or A6? I used your
> state files to try my A5. It seems that it could reduce the buzzing
> noise.
> But it could not get rid of it all.

/proc/cpuinfo says it's A6 (0360), while frameworkd (Debian) says A5. 
It's the one with capacitor on SD clock lines. Should be A6 if I remember 
the text on the PCB correctly.


Seems that I was lucky with getting no buzz at all, most of the time it 
is still audible (not hurting ears anymore though).

Investigating further, I recorded Mic1 and Mic2 while calling directly on 
the FreeRunner (switched to a modified capturehandset.state with 
increased recording levels while calling):

http://wiki.openmoko.org/images/3/34/Lmic1_Rmic2-interference-call.wav

(no headset connected, both mic capture volumes 3, only mic1 routed 
through ALC_MIX, mic2 directly to right PGA).

Snippet of the waveform:
http://wiki.openmoko.org/wiki/Image:Lmic1_Rmic2-interference-call.png

A voicebox recording of the buzzing before the "fix":
http://wiki.openmoko.org/images/7/71/FR_GSM_buzz.wav

After the "fix", the voicebox did not record endlessly anymore and 
recognized the remaining buzz as silence.

Looking at the first recording, it is visible that Mic1 signal is 
inverted by the path it takes through the wolfson chip. Sadly it does not 
seem to be possible to mix inverted Mic1 and Mic2 in hardware without 
going through ADC - doing so on the PC reduced noise somewhat... I wonder 
if that could be done in software on the FreeRunner, recording both mic 
signals, deducing from Mic1 when contamination occurs, extracting the 
according waveform from Mic2 signal, and then subtracting the extracted 
(average) buzzing waveform from Mic2 whenever Mic1 levels get over a 
certain threshold - and then playing back the resulting signal over 
either PCM or voice codec to the GSM modem. I think that plan might be 
thwarted by full duplex restrictions by the chip, as I did not succeed 
yet to play back recorded audio while still recording without heavy 
artifacts (clicking, a lot of noise).

Turning off sidetone mic on MONO MIXER (control 77) and playing back 
music over Hi-Fi DAC/PCM to mono interface / GSM resulted in buzz-free 
(though a little distorted, did not tweak much) music experience on the 
phone called. This basically confirms that signals get contaminated 
through MIC path.

I did not succeed yet in playing back recorded MIC signals over the voice 
codec/voice DAC without the signals leaving the wolfson chip (loopback) - 
is that actually possible?

Cheers,
Jan





More information about the community mailing list