Saturday, January 8, 2022

Replacing a Chromecast Audio with a Raspberry Pi - Part 2 - Two Years Later

Well, life happened and the promised overview of how to set up a replacement for ChromeCast Audio never happened (obviously).  If, however, you're here, you're clearly interested in how to hook a Raspberry Pi to an intercom system or something similar.  It looks like I'm going to deliver on my original promise, just a couple of years late.

Thanks to a burst water heater, we're in the midst of a major remodel and the intercom system mentioned in Part 1 needs to be relocated; as part of the relocation we're also planning to upgrade it.  NuTone offered an upgrade path to a "more modern" intercom system called an NM100 that leverages the existing intercom wiring.  As part of this effort, I plan to build a new Raspberry Pi 4 to address a couple of issues:

  • The old Raspberry Pi 3 was only a 1GB model and I'm going to need some more horsepower (more on that in a moment)
  • My husband didn't like the fact that the old Pi had to be externally powered
  • The new intercom system doesn't have the doorbell integration that the old one did (at least not without some hacking)
The need for more horsepower stems from the fact that we have Z-Wave controlled by yet another Raspberry Pi.  That one was in a central closet that is going to become a pantry as part of this remodel so it really needs to go away.  As the "intercom Pi" will be hidden inside a wall and central to the house, it's a great opportunity to combine both functions into a single Pi.  I won't be covering how to implement this; just the audio functionality.

With regard to the doorbell, I had mentioned in Part 1 that our NuTone doorbell has inductive pickups just like an electric guitar.  The old intercom system had a connection that this fed into and would play the doorbell's sound throughout the house.  Unfortunately, the new NM100 doesn't support this feature.  This is something I wish to maintain so I need a solution.

Hi Fidelity Audio with an AUX Input on a Raspberry Pi

In the previous iteration of my intercom interface, I made use of the prior generation of this board (HiFiBerry DAC+ Pro) which didn't have an AUX input.  Now, they offer the HiFiBerry DAC+ ADC Pro board which has an audio input.  I've ordered one and hope that I'll be able to leverage it to mix any audio that's playing on the intercom system with the sound of the doorbell.  My expectation is that I can simply plug the line-level output from the inductive pickups into the audio input of this board.

More on that later once I receive the board.

The Hardware

This is going to be pretty straightforward.  The hardware consists of just a handful of items:
  • A Raspberry Pi 4B 4GB model
  • A PoE power splitter to eliminate the need for a "wall wart" to power the Raspberry Pi
  • The aforementioned HiFiBerry DAC+ ADC Pro hat
  • HiFiBerry's steel enclosure designed to accommodate the DAC+ ADC Pro board and a Raspberry Pi 4
  • RCA audio cables to patch the Pi into the intercom
I'll be dropping an Ethernet cable down the wall where the intercom system is to be located.  This will be plugged into a PoE switch and will provide power for the Pi.  I would have preferred to use a PoE hat; however, the DAC+ board is currently occupying that slot.

Of course, a 4GB Pi 4 is massive overkill for this application; it would run just fine on a 1GB Pi 3B (which is what my old system is currently running on) but as I mentioned above, I'm planning to move my Z-Wave controller to this Pi as well.

That's probably enough for this update.  I'll start on Part 3 once I get the DAC+ board in and document the setup.

Replacing a Chromecast Audio with a Raspberry Pi - Part 2 - Two Years Later

Well, life happened and the promised overview of how to set up a replacement for ChromeCast Audio never happened (obviously).  If, however, ...