Music Distribution

The main issue when I moved to the new flat, oh, three-ish years ago? I think, was how to listen to music.

I want to be able to walk between rooms, listening to the same music.  This means that there has to be some kind of way to distribute music between the rooms.

I looked into various ready-made wireless systems like Sonos, but these all made The System the central point.  I don’t want that.  I want to be able to control the music in any way that I want to, which means from Emacs.

So I wanted (sort of) passive systems that would allow me to say “the volume in room X is Y”, and that would allow me to pause and skip the music from any room, while still tying into my own Emacs-based playing system.

The first element is the sound card.  I settled on a RME Multiface box.  It’s really a semiprofessional music routing card. It has a lot of inputs and a lot of outputs, and you can route any combinations of any inputs to any outputs, while controlling the volume.  You see how this would work for me: I’d just play a flac file, while having each room be one stereo output, and I’d set the volume per output.

RME Outputs

I now had all these outputs, but how would I get the music to the various rooms?  I first tried a couple of wireless systems.  They both had two problems: 1) There was a half-second latency, so if you heard sounds from different rooms, it sounded kinda psychadelic.  2) They didn’t work.  That is, they had frequent drop-outs, and made beastly noises while doing so.  I know, I know — nothing that’s wireless actually works.

My second idea was to try a powerline audio thing.  The bandwidth requirements for audio are pretty minuscule, so I thought there might be a chance that something like this would work.  But, as with the wireless systems, it 1) had a beastly latency and 2) didn’t work.  The drop-outs were even more brutal.

So: Wires it is.  I’d have to install wires between all the rooms to get music to them.  But what kind of wires?

That’s when I learned the magical word: balun. It means “balanced/unbalanced”, or something like that.  Basically, a balun is a device that takes an unbalanced signal (like RCA audio) and makes is balanced (or what we computer people call differential). 

Doing research over the intertubes I found a few companies selling this stuff.  The baluns are generally non-powered, and use cat5 cabling.  Like these babies:

Two Baluns
Cat5 Port

They are just perfect!  You just hook them up to your audio outputs, string some cat5 to a different room, plug another one in there, and plug the audio output into whatever amplifier/speakers you have there.

The sound quality is totally fine, too.  That is, I can’t hear anything obviously bad.  There’s bass, and there’s treble, and there’s the middle part.  Perfect!

The main problem is, of course, all the cabling.  That means a lot of these:

And some stretches off wall that look like this:

Cat5.  Wouldn’t bet on the e

Ok, some of those are Ethernet.

That’s a lot of hammering and drilling, but it’s totally worth it.  It just works 100%.  No drop-outs, no odd noises, no latency.  And the fi is so hi.

Wired is the new black.

Lars Animal Rescue


When I came home today, I found a magpie (Pica Pica) sitting on top of my outlet box.  That’s on the fourth floor, so it had flown up the stairs.  Confused bird.

Anyway, I thought could just open the window and let it fly out, but it flew on up to the top floor where there’s no windows.  So I got some gloves on, preparing to grab it and carry it down, and let it fly out the window on my floor.

Whaddayouknow!  Birds are difficult to grab.  And magpies make really loud, startling sounds at a 20cm distance.

Anyway, I kinda was able so shoo shoo it down to the open window, and it totally got the idea once it saw the window.  It only bounced its head against the other window (which was closed) a couple of times.

Poor bird.

Anyway:  Success!  Fly birdie!  Fly!

Emacs Light Switches

Tellstick Duo

Telldus launched a new version of their nifty USB-based “home automation” thingy a couple of months ago.  It’s mostly the same as the last version, but this one can receive signals as well as send signals.

This means that you can buy stuff like this switch, glue it onto a wall somewhere, and control your lights more like a normal person.  Instead of having to use computer-ey interface.  Like an animal!

It works pretty well.  As before, the USB interface exposes a serial interface. To get it working under Linux, you need to tell it about the serial numbers, because this devices is brand new:

[larsi@quimbies ~]$ cat /etc/modprobe.d/tellstick.conf
options ftdi_sio vendor=0x1781 product=0x0c31

After doing that, the device shows up as /dev/ttyUSB0, and if it receives something, it spits out data like

Wireless Wall Switch Sticky-Taped On To The Wall


So you basically just stick lots of switches on the wall, and then create rules to respond to these strings.

I’ve updated the Emacs code.

It seems to work pretty well.  There range is OK — it kinda goes through one wall, and kinda works over 7 meters.  But it’s not 100%, which is annoying.  I’ve bought two devices, so far, to get coverage over the flat, but I think I might need one more.

Anything that’s wireless sucks, but being able to just glue switches anywhere is pretty awesome.

Will This Do?

I was reading an MC Siegler post linked to from HackerNews, where he rants about the iOS Gmail client and Google products in general:

And all of this is the M.O. of pretty much all Google iOS apps. They’re half-ass, buggy, and generally ugly to boot.

The obvious retort is “yeah, and Apple never released anything half-assed.  Right.”  But the thing is — he has a point.  Google releases stuff that kinda works.  And then they seldom give it any polish to take it past the “barely useful” level.

Look at Google Finance.  Just look at it.  In particular, look at that chart:

The point of charts is that you’re supposed to read them.  So: How much woas Nasdaq down at 1.30pm?  Let’s see…  the lines are at -0.68% and -1.36%…  and it’s about one quarter below the -0.68% line…  so that should be…  oh, I give up and go to Yahoo Finance.

It’s obvious how that chart came to be.  Somebody was told “make the chart”.  They implemented it by finding the extremal point, and then drew a line at the halfway point, and then made it symmetrical by going the same distance the other direction.

And it’s total crap.  Nobody who has any pride in what they are doing would perpetrate something like that instead of doing it the hard way — finding the “pleasing numbers” (0.25, 0.5, 1, etc) that people can actually read. And then using those numbers on the lines.

That chart has been like that ever since Google Finance launched, many many years ago.

Having a crappy chart on one web page isn’t a catastrophe.  But it boggles my mind how the people responsible can look at that…  thing…  and not spend the half hour it would take to fix it.  For years on end.  This mild feeling of willthisdoitis typifies most offerings from Google. And I wonder why.