Er was eens een handige networksoundserver gebruikmakend van PulseAudio en een USB-soundcard.
Dat werkte dan leuk. Voor een poosje. Soms duurde het poosje lang, soms duurde het poosje kort. Maar het eindigde altijd zo:
hub 2-0:1.0: port 2 disabled by hub (EMI?), re-enabling...
usb 2-2: USB disconnect, address 2
En dan ging ik maar weer de pulseaudio-daemon herstarten. Hmmpf. Frutselen aan de softwareconfiguratie mocht niet baten.
Op een dag ging de bel en zat ik net muziek te luisteren. Iemand gebruikte de elektrische deurontgrendelaar en flop, muziek weg, port disabled. Aha! Dat bleek reproduceerbaar te zijn.
Die deurontgrendelaar werkt met een flinke elektromagneet die ik op de 8V-aftakking van de meterkast heb aangesloten. Kennelijk geeft dat een lekkere optater aan het binnenshuiselijk stroomnet. Mijn versterker zegt ook PATS en geeft de stoot over z’n line-in door aan het USB-geluidskaartje, en die weer aan de interne USB-hub van de machine waar-ie aan hangt. De hub vindt dat onbehoorlijk en sluit de poort, en terecht. Met “(EMI?)” probeert de kernel te vertellen dat er misschien wel iets met elektromagnetische interferentie aan de hand is, maar ja, dat begrijp ik nu pas.
De oplossing blijkt om ook de versterker ook op mijn UPS (Uninterruptable Power Supply) aan te sluiten. Die UPS tovert lelijke rotstroom om in voorbeeldig sinusoïde prik.
Conclusies?
- Als je de hele dag met softwareproblemen bezig bent wil het wel eens voorkomen dat je een laagbijdegrondse oorzaak (zoals vieze rotstroom) over het hoofd ziet.
- Stroom kan vies zijn, en als er Gekke Dingen gebeuren, probeer dan eens een goeie UPS.
Tags: EMI, UPS, USB —
Instead of cleaning out the kitchen I’ve prepared two fortune modules and ebuilds to go with them. One contains quotes from “Fight Club”, both the movie and the novel. The other one contains the Slashdot history of the world (posted AC).
Get them here.
Teasers
From fightclub-0.1:
That old saying, you always kill the one you love, well look, it works both
ways.
– Narrator, “Fight Club” (novel)
From slashistory-0.1:
A.D. 1789: The French Revolution begins with a distributed denial of service
(DDoS) attack on the Bastille.
Tags: en_GB, fight club, fortune, slashdot —
My X11 setup contains some truly ugly fonts. In particular, it contains bitmap variants (unaliased, of course) of some common fonts, donated by Adobe. That must have been swell in the nineties but it isn’t anymore. But they’re still included in X.org X11, spreading uglyness when referenced explicitly:

This very much isn’t how I like my webpages. In this case, drilling down to the font declaration (use the excellent Firebug if you have to) yields:
BODY { font-family: "new century schoolbook", times, serif}
H1 { font-family: "new century schoolbook", times, serif}
Is this ‘new century schoolbook’ font one of those Adobe bitmap fonts? ‘xlsfonts’ yields:
$xlsfonts | grep -i century
-adobe-new century schoolbook-bold-i-normal--0-0-100-100-p-0-iso10646-1
-adobe-new century schoolbook-bold-i-normal--0-0-100-100-p-0-iso10646-1
-adobe-new century schoolbook-bold-i-normal--0-0-100-100-p-0-iso8859-1
-adobe-new century schoolbook-bold-i-normal--0-0-100-100-p-0-iso8859-1
[... dozens more]
So, let’s get our font subsystem to remap this font declaration to something more appealing. You’ll need to edit your fontconfig configuration which is described rather exhaustively elsewhere and add a stanza like this one:
<match target="pattern" >
<test name="family" qual="any" >
<string>new century schoolbook</string>
</test>target="font">
<edit mode="assign" name="family" >
<string>Nimbus Roman No9 L</string>
</edit>
</match>
This is, of course, particular to my wishes and the fonts available on my system. Run fc-cache, reload the webpage with the offending font, and tadaaaa:

Much better.
Update @20091208: With Gentoo, you can use the eselect system to accomplish this. Run eselect fontconfig list and pick the number corresponding with 70-no-bitmaps.conf. Enable it with eselect fontconfig enable $thenumber.
From the 70-no-bitmaps.conf file, it appears there’s a much better way of handling this:
<fontconfig>
<!-- Reject bitmap fonts -->
<selectfont>
<rejectfont>
<pattern>
<patelt name="scalable"><bool>false</bool></patelt>
</pattern>
</rejectfont>
</selectfont>
</fontconfig>
Tags: en_GB, fontconfig —