[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: iBook internal speakers volume



On Tue, 2003-08-12 at 07:21, Thomas Otto wrote:
> > 	I have an iBook 900 Mhz on which I have recently installed Debian sid. I have 
> > a little trouble with the internal speakers : they do work, but the sound is 
> > extremely low. 
> > 	Changing the volume in aumix has no effect. I have read that the speaker 
> > volume is mapped to the "Spkr" channel of aumix, so I checked and found out 
> > that the "Spkr" channel is at maximum and cannot be moved (I cannot lower its 
> > value, while all other channels can be tuned noramlly).
> > 	I use the ALSA modules on a 2.4.21-ben2 kernel
> > 
> > 	Has anyone ran into this issue before, or has an idea of what might be the 
> > problem ?
> 
> Any mixer I tried didn't work here either, but if you install pbbuttonsd 
> the keys from F3 to F5 (with the speaker symbol) will allow you to 
> increase or decrease the volume, maybe it somehow circumvents the 
> /dev/mixer device.

I found that unloading and reloading the i2c-keywest module after the
snd-powermac module is loaded fixes the problem.  It allows me to use
the mixer to set the volume at a useful level after twiddling the volume
up and down (alsa-mixer or pbbuttonsd) to set it properly.  However,
this also must be done after a sleep and wake cycle or otherwise the
speaker goes either very quiet or insanely loud.  To make this work
automagically I did a few things.

I added:

post-install snd-powermac rmmod i2c-keywest && modprobe i2c-keywest

to /etc/modutils/local and reran update-modules to fix the mixer at boot
time.  When pbbuttonsd starts it sets the mixer so you don't need to
play with the volume.  However, sleep and wake needs to have the voume
twiddled before it comes back to normal.

I added the file /etc/power/pwrctl-local as (someone with more
experience is free to make the script more intelligent, it at the
current moment unloads and loads at sleep and again at wake but it works
for me):

#!/bin/bash
rmmod i2c-keywest && modprobe i2c-keywest


I also had to add/fix the /etc/pbbuttonsd.conf with this line

Script_Prof_Changed = "/etc/power/pwrctl-local"

so that it calls the power script at sleep and wake which pmud should
use by default if you don't use pbbuttonsd to replace pmud.

--mike



Reply to: