Low earpiece volume (Was: Questions about the usability of GTA02)

Rask Ingemann Lambertsen rask at sygehus.dk
Thu Feb 12 14:32:44 CET 2009

On Tue, Feb 10, 2009 at 09:35:07AM +0100, Erland Lewin wrote:
> My main problem with the FR at the moment is that the volume in the built-in
> earpiece, and wired headset as well are way too low. It works in a quiet
> indoor environment, but on a busy street I can hardly hear that someone is
> talking on the phone at all, and in a room with other people talking in the
> background, it is difficult to hear the person at the other end.

   Just wondering: What happens if you run this as root during a call (on a
distrubution which uses FSO)?

# (sleep 5 && echo -e 'AT+CLVL?;+CLVL=255\r' && sleep 1) | mickeyterm

   You should see output something like this:

read history from /root/.mickeyterm_history
<----------- Mickey's Term V2.9.1 @ /dev/pts/2 ----------->
AT-Command Interpreter ready
+CLVL: 175

Good Bye.

   It should report the current modem output volume (175 here) and then set
it to 255, which is the loudest possible on the TI Calypso.

   In your /usr/share/openmoko/scenarios/gsmhandset.state, what are the
values of these controls?

1) Control  4 "Speaker Playback Volume" (LOUT2VOL and ROUT2VOL in [2]).
2) Control  6 "Bypass playback volume".
3) Control 52 "ROUT2 Phase" (should be "Inverted").
4) Control 92 "DAPM Handset Spk" (should be "true").

("Bypass" refers to the tree lines at the top of the drawing in [2] while
"side tone" refers to the line that goes right from "MIC MUX" in the lower
left of the same drawing.)

   There's also the possibility of using a larger speaker:

# alsactl restore -f /usr/share/openmoko/scenarios/gsmspeakerout.state

   Of particular interest are:

1) Control  3 "Headphone Playback Volume" (LOUT1VOL and ROUT1VOL in [2]).
2) Control  6 "Bypass playback volume".
3) Control 87 "DAPM Stereo Out" (should be "true" [3]).
4) Control 92 "DAPM Handset Spk Switch" (should be "false" [3][4]).
5) Control 93 "Amp State Switch" (should be "true").
6) Control 94 "Amp Spk Switch" (should be "true").

[1] https://wiki.openmoko.org/wiki/Neo_Freerunner_audio_subsystem
[2] https://wiki.openmoko.org/wiki/Neo_1973_audio_subsystem#ALSA_Channels
[3] Mine, as installed from the Debian distribution, has "true"/"false"
swapped. Both of control 87 and control 93 must be set to "true" to enable
sound from headphones or the large speaker.
[4] Or set it to "true" to use both speakers and check control 4.

> My impression is that this is a hardware limitation, and that even with max
> volume from the GSM chip to the audio codec (CLVL=255), and maximum Alsa
> volumes, the volume won't be high enough from the earpiece.. I think the
> only way around this is to use a Bluetooth headset, but I don't think the
> Bluetooth headset profile works in the version of the bluetooth stack
> (bluez-3) that's on the Freerunner now.

   Sound from the modem can be captured, so it ought to be possible to
increase volume in software with e.g. sox and the 'gain', 'loudness' or 'vol'

Rask Ingemann Lambertsen
Danish law requires addresses in e-mail to be logged and stored for a year

More information about the community mailing list