Audio Buzz / Rattling Issue

Kevin Day kevin at kevux.org
Sun Feb 8 06:26:52 CET 2009


> I have never tested the headset, I did now and I have the same behavior you
> are describing !!
> The sound never goes to the headset it keeps on the FR.
> 
> Does anyone else have this problem? I am using 2008.12 also.
> 

I would like to update with information I gained from further testing.

I was able to get something close to normal audio output and even enable
the external speakers.
(however, the actual problem is still not _fixed_ at this time)

I do not remember the exact order things were done in, so here are the
rough steps:
WARNING: these are done from a console, so you need to learn/know how to
get console access first.

first, I went to trac bug #1640, downloaded, and extracted this file:
http://docs.openmoko.org/trac/attachment/ticket/1640/scenarios.tgz

I then backed up my original asound.state file:
# cp /etc/asound.state{,.orig}

Of the extracted files (from scenarios.tgz), I took the stereoout.state
file and replaced my existing asound.state file:
# cp stereoout.state /etc/asound.state

I then ran the alsactl tool to restore the sound settings from the brand
new asound.state file:
# alsactl restore

The next thing to do was to play around with the alsamixer setting so
see what does what..a royal pain in the ?undocumented? butt.
# alsamixer

Here are the important settings:
PCM - thats your main audio
Amp Spk - this seems to cause problems, when enabled it causes all
stereo audio (right and left) to output only to one speaker. Disable
this and suddenly you can get right+left through separate speakers.
Amp Stat - not sure what this is for, but turning it off turns off all
audio.
DAPM Stereo Out - This seems to be your onboard speaker, turn it off to
turn off your onboard speaker
DAPM Handset Spk - This is your external headset; turn it on to turn on
the external speakers!

I set the above to the following:
PCM - anything above ~60% produces audio; this does not seem to cause
the buzz/rattle
Amp Spk - OFF!!
Amp Stat - On
DAPM Stereo Out - off
DAPM Handset Spk - On

Now save your changes:
# alsactl store

The next step was to turn the music player's audio volume down to about
5-10%
The volume bar is ~3 millimeters in length
This is not the alsamixer volume, it is the media player's volume.
The media players volume is quite difficult to get to, you will have to
fight with the song seeking to get the volume to change.
Not a very user-friendly design in my opinion..

Once the music player is at 5-10% in volume, you will no longer have any
easily noticeable buzzing or rattling.
Of course, you won't be able to do any volume changes when not plugged
into a computer.
In addition, you will not be able to swap between internal and external
speakers while not plugged into some desktop computer as well...

The next problem is that, even though there seems to exist the boot
script: /etc/init.d/alsa-state
the sound settings are not restored when a reboot is made.
So, every single time the device gets powered on, one will need console
access to correct the audio settings with the command:
# alsactl restore

Unless one is willing to tug around an entire computer or notebook
(laptop) in addition to the freerunner a person pretty much cannot
change any of their audio settings.
That is not good at all, particularly for a cell-phone.


The problems at this time are as follows:
- inability to manually mute/unmute the internal and external speakers
via the freerunner user interface
- inability to raise software controlled volume above ~10% without
incurring audio buzz/rattling issues
- inability to restore saved audio settings between boots...why?





More information about the support mailing list