Disabling the PC speaker in FreeBSD
Hardware
I had already disabled it obviously, but adding screenshot for posterity
Do you all remember the PC speaker (Wikipedia link)? That tiny, shrill little beep generating box hiding inside your computer before proper sound cards came along? I can distinctly remember the silly sounds the PC speaker in our 486SX desktop made whenever we played Commander Keen or whenever it was booted up and did a floppy drive seek. Them were the days I tell you. I’m not Bill Kurtis.
My little Armada M300 netbook is old enough to have a PC speaker, but because I use it as as a ultra budget netbook now I don’t like having FreeBSD beep at me whenever I finish [TAB]
-ing to a directory or if I accidentally enter an invalid command… especially when I’m in a busy coffee shop. Beep beep slurp beep.
ASIDE: From researching this over the course of an afternoon, I couldn’t believe how many people in forums and news groups condescendingly told others who asked to just open their computers and unplug the PC speaker from their motherboards. Yeah, that’s an elegant solution available to everyone, thanks!
To disable the PC speaker on a FreeBSD machine you essentially have two options: you can disable the chirping device in the kernel itself, or a far simpler solution is just to mute it.
Kevin Kinsely on the FreeBSD mailing lists details the quick command:
% mixer speaker 0:0
As far as I can tell this setting is also preserved when you restart the machine, so there’s no need to put this line in any initialisation scripts or the like.
Ruud Jansen also suggested these commands to use in X11 for enabling and disabling those annoying beeps. So far I haven’t needed to use them, but passing them on for what they may be worth.
% xset b off % xset b on