Squeezelite Streaming Client with Raspberry Pi
For some time I have been using a Logitech Squeezebox Touch for streaming FLAC files to my hifi system. Logitech stopped production of most of the Squeezebox devices, which is a shame, because these are/where really nice audio network players, with a great sound & usability. But there is a light at the audio horizon for all you DIY people. And again, there is a Raspberry PI involved, the new all purpose magic tool for small footprint (home) computing applications. I am currently using two RasPIs, one for a XMBC Media Center (openELEC), and the second one for a Squeezebox client based on piCorePlayer. The RasPIs even got cheaper recently, they are currently available for about 30,- EUR each.
Before setting up my version of the piCorePlayer, I read a lot of comments and user stories. Most discussions were about problems with DACs (Digital Analog Converters) connected to the USB port of the Raspberry PI. Users reported crackles and noise, and it all comes down to a suboptimal implementation (at least for audio purposes) of the RasPI bus system. But then some posts pointed me to the Hifiberry DAC, which is a small DAC connetcted to the I2S bus on the Raspberry PI. I2s is a different bus and does not suffer from the problems described above. In addition, it’s architecture and protocol seem to be very well suited for audio applications. So I ordered my copy of the Hifiberry DAC from Crazy Audio, and it was delivered within a week (I guess german customs took most of the time, Crazy Audio is based in Switzerland). BTW, Crazy Audio has a great blog, with lots of very interesting audio projects on their website, and they even show some pictures of my setup in their Audio Blog.
For audio applications, I did not want to rely on the cheap switching power supplies normally used for the Raspberry PI. Instead, I build a conventional linear regulated power supply capable of delivering clean 1.5A at 5 Volts. My version is based on a standard application note for 78xx regulators, like the one you can see at the end of this page; there are 1.5A and 2A types of the 78xx regulators available, so there should be enough headroom even with a wireless dongle connected (currently the player is connected via LAN). There are some discussions whether LAN or WAN is the better solution concerning high quality audio applications, but I have not been into this topic yet.
Of course, a conventional power supply generates more heat, but the heatsink only gets lukewarm. You can see a fan on the pictures, but it is not used/connected, so the player is absolutely silent. The fan is a leftover from the NAS appliance originally installed in the case. It used to be an I** B** NAS, a crappy device that was slow AND unreliable, so I decided to make something nice of it – reuse and recycle! The heatsink is a former CPU cooler, and the power transformer (external) is also recycled.
There are several reasons why I chose piCorePlayer for the Raspberry PI: It is small (fast boot!), it is easy to set up, the system is readonly (so you can simply switch of the device after use, without the danger of corrupting the SD card), and it supports the Hifiberry DAC out of the box. In fact, setting up piCorePlayer took about 20 minutes. I spent most of the time on adapting the case to my needs, building the power supply and on making customized coolers for the RasPI.
There are other interesting distributions for the RasPI like Volumio, but I did not give them a try yet. As I mentioned before, I am already using a Squeezebox Touch, and therefore the piCorePlayer seamlessly integrates in my setup.
Last but not least a word concerning sound quality: The sound from the Hifiberry DAC is very, very good. It can absolutely compare with the sound from my Squeezebox Touch, which is already on a surpringly high level out of the box. The sound is dynamic, clear, with a nice soundstage.