Whole-house Audio

Before we built the house, we had planned on installing a sophisticated multi-source, multi-zone whole-house audio amplifier.  We actually had a model picked out and pulled speaker wire and CAT5e for keypads to each room.  But when we finally got around to installing the whole-house audio, we re-thought this idea.  We talked and decided we did not really need the ability to have different sources in different room simultaneously – there are just the two of us.  We are perfectly content to listen to the same music or for one person to be listening to music and one watching TV, which is possible without an expensive matrix system.  Instead, we decided to buy a single multi-channel amp and then use relays on the home controller to turn speakers on an off in each room.  This has worked out great.

The Amplifier

The amplifier we use is a Xantech PA1235.  This amplifier has 12 channels (6 stereo pairs).  Each channel can drive up to two 8 ohm speakers for a total of 24 speakers (12 pairs).  Also, each pair of channels can be configured to be either a stereo pair or two mono signals.  Finally, the amp can be directly controlled by IR.  Each stereo pair can be set to a different group code so they can be independently controlled (On, Off, and Volume.)  The amp also has discrete IR codes to set volume levels, for example, there is a code to set the volume to 25%, 50%, 60%, etc.  This is very nice for controlling volume from the home controller.

We have plans to eventually use all 24 speakers possible on the amp.

Speakers

We use mostly in-ceiling and in-wall speakers, though there are bookshelf speakers in the Library and Great Room.  I like reasonable quality sound, but I am not a serious audiophile so price was more important than quality.  I have found that the inexpensive AudioSource IC-8 speakers have quite good sound and are easy to install.  I did splurge a bit on the bookshelf speakers in the great room.  And of course the speakers in the Theater are a whole different story...

Speaker Control

For each pair of channels on the amp there are four speakers: two rights and two lefts.  In our case, these always run to two different rooms--one left and one right in each room.  But we wanted to control each room and the amp, obviously, can only turn the channel pair on and off.  To solve this problem, the speaker wire runs from the amp to a relay on one of the add-on boards of the home controller.  The relays are used to turn on and off the speakers in each room.  The remote for a room is set up to have a unique device code for audio and the home controller has been programmed to responded to these on/off IR signals.  These are not the actual IR signals for the amp.  Instead, when the home controller receives the 'on' signal for a room, if the amp channel needed for that room is not already on, it sends the appropriate 'on' signal to the amp to turn on the channels.  It then turns on the appropriate relays to allow sound to the speakers in that room.  'Off' does just the opposite.  It turns off the relays for the room.  If another room is not also using the same amp channels, it turns off the amp channels.

The home controller also responds to a special 'on exclusive' IR code for each room.  When this code is received, all other rooms are turned off except the room that sent the signal.  There is also a code to turn all speakers off in all rooms.  So all audio can be turned off with one button.

Any time speakers are turned on or off, the home controller uses text-to-speech to announce the change.  That way, if I am listening to music in the computer room and Scott decides to turn on the bedroom speakers to listen also, I will know he turned them on and won't turn the music off on him.

There is a button on the remote you can press that will cause the home controller to announce which rooms currently have speakers on.

Source Selection

The Xantech amp supports either a dedicated source for each pair of channels or a single "global" source that drives all channels.  We use the single source input.  This input is driven from the sound card of the home automation PC.  All our music is played from MP3s on that PC.  We have four other sources that can also be played through the whole house audio:  two PVR's, a DVD player, and a receiver used for radio.  These sources all feed into a Xantech RS41AV IR-controlled A/V switcher.  The output of this switcher goes to the line-in on the home automation PC sound card.  Since all whole-house audio goes through the PC, the PC can always overlay the audio with announcements from the home controller which uses the PC for text-to-speech.  The home controller actually does all the switching control.  It is programmed to respond to codes from the remotes that tell it which source to select.  For example, if you select Radio, the controller will turn on the receiver used for radio, send the IR signal to select the appropriate source on the A/V switcher, and un-mute the line-in on the home automation PC.  The last item it does by talking to Girder via serial communications.  If later you select to hear MP3 music from the PC, it will turn off the radio receiver (since it knows it is on) and mutes the line in of the sound card.

Another set of IR codes on the audio device of the remote let you pick play lists of our MP3s.  When you select a play list, the controller starts Media Player on the home automation PC and selects that play list, again using Girder.  The home controller uses text-to-speech to announce the play list selected.  If you select a play list but forget to put the audio source back to the home automation PC, the home controller does this for you.   You can also stop, pause, or select next and previous songs using the remote.  The home controller relays these requests to Media Player via Girder.

Whole-house announcements

Our home controller talks to us a lot.  Most of the time it does this in “announce mode” so no matter where we are in the house we will hear it.  When it wants to say something in announce mode, for example a reminder, the home controller mutes any audio source currently playing, turns on all speakers in the house (but not the ones out on the deck), makes the announcement, restores audio to just the speakers that were on before the announcement and, finally, un-mutes the audio source.  This all happens very quickly and smoothly.

One of the things that the house announces is the "call to dinner."  I do all the cooking so when a meal is ready I hit a button on an X-10 wireless remote transmitter.  Depending on the time of day, the house will announce that breakfast, lunch, or dinner is ready.  That way, I don't have to go looking for Scott or yelling through the house.

Text-to-speech

Our house talks to us using text-to-speech from our home automation controller.  It does this by sending a serial command to Girder.  Girder comes with a text-to-speech module.  We bought AT&T's natural voice engine and one of their voices.  The AT&T voices sound far better than the Microsoft default voices.  AT&T no longer supports or produces these, but you can still get them from Nextup.com.

Reminders

We have programmed the home controller to remind us of things like watering the plants and checking the softener salt.  Once one of these reminders is triggered, the home controller will make the announcement every 15 minutes until someone acknowledges it.  There is an IR code used to acknowledge reminders.  The controller only makes reminder announcements if someone is home.  If a reminder is triggered when no one is home, it will start the announcements as soon as someone gets home.  If no one acknowledges a reminder by midnight, the reminder is cleared.  This is a really great feature, though at times it can seem like the house is nagging you!

Audio “Scenes”

There are IR codes so you can use the remote to setup audio “scenes” in the house.  There are currently three of these:

Entire House On – Turns every speaker on in the house.  (We like to jam when we clean the house! :)

Inside Party – Turns on the speakers in select rooms where guests will be with the volume fairly subdued.

Outside Party – Turns on the deck speakers and select inside speakers with the volume fairly subdued.