Slim Devices Squeezebox SB3/Classic

I'm going to start ripping my vinyl collection soon so I can listen to it in my car and I'm thinking of expanding the project to include a simple music server in my home audio system. I have no interest in using streaming services and my vision is primarily of choosing from a handful of play lists. Music files would be stored on a NAS device. My main preference is for spinning vinyl, but there are times when starting up a long playlist would be more convenient and desirable. I don't see myself spending a lot time browsing through digital files, so if I'm not spinning up vinyl or CD, my only use for the music server would be to play one of maybe a half dozen or so playlists.

So, after some poking around, the old Slim Devices Squeezebox seems like a good option. Though discontinued, they seem to be plentiful on Ebay, and fairly inexpensive. I like that they are controlled by a traditional remote and have a display that gives feedback as to what is playing, so the experience of running it would be much like operating my CD player. I would use one of the digital outputs into my integrated amp. I've noticed that, though there are many discussions here relating to the Squeezebox app, there doesn't seem to be much discussion of the hardware. Are there reasons why it would be preferable to look at other alternatives? I do have some reservations about spending $100+ on a ten year old digital device that may have some looming obsolescence attached to it. Other options I've considered are a Rasberry Pi with Digic board and 7" touch screen- essentially a Squeezebox clone-, or the Sonos, or the Intel NUC. I have no interest in using an old PC or laptop.
 
I started with real squeezeboxes and both of them died (SB3 and Duet) so I wouldn't be buying the old hardware. I would go with a Raspberry Pi. BTW you will need to have Logitech Media Server running on either the Pi or some other computer or NAS on the same network. Personally I would forego the touchscreen (even though it is very cool) and just use a smart phone or tablet as the remote. This gives you a portable touch screen.

Even though you may not want it now, this will also give you access to streaming (Spotify, Tidal, etc.) and internet radio. LMS has a plugin for Radio Paradise in CD quality (flac) which is free and an excellent station.
 
I second the Pi with the smartphone. While there was a bit of a learning curve and a few hair pulling moments it was worth the effort. It does everything I set out for it to do. Streaming was my first priority as I like the convenience of finding new music. I have a usb thumb drive with MP3s that I used in the car and I have been able to access that as well. Now it is a matter of getting a hard drive and software to start ripping FLAC files.
 
What I like best about using the RP - I have two Classics, a Boom, a Radio and a Duet BTW - is that you're somewhat future-proofed. In the unhappy event the Squeezebox eco-system goes away down the road, the RP is still a perfectly usable music player, just by switching software. That said, I use piCorePlayer now, and hope Logitech keeps the Squeezebox servers alive for a long time to come.

s.
 
Idatlof or E-Stat: can you offer up a link or instructions on how to build a Raspberry Pi system for this purpose?
There are many approaches, but here was mine:

1. Raspberry Pi 3B+ board. Link to Amazon.
2. Case. Lots of choices, but I liked the Zebra Tall Hat (including heat sinks). Link to Amazon.
3. Micro SD card. Get them anywhere. Just need 2 GB.
4. Lots of cheap switchers available, but I prefer an inexpensive linear. I got mine from Jameco. Alternately, I use a 2A Jockery cell phone charger.
5. Micro USB to 2.1 DC adapter. Link here.
6. You can use USB for audio output, but I chose a separate Allo DigiOne board for better performance. Link here.

You'll also need some free software. I prefer piCorePlayer as playback software using Logitech Music Server 7.9.1 and use Etcher for burning the microSD image. The RPi can be used as both LMS server and player, but I prefer to use my desktop as server component where music files live. It feeds a microRendu player in the main system via CAT6 and the RPi via Wi-Fi.

lms_performance.jpg
plugins.jpg

To summarize:

1. Enable large server side buffer
2. Have server pre-cache artwork
3. Set process priority high for uninterrupted execution
4. Disable unused plugins

It has also been suggested that periodically "vacuuming" the database files using "sqlite" provides optimum database operation after many changes. Depending upon how much new music I add, I might run this simple batch file once every month or so:

setlocal


del "C:\ProgramData\Squeezebox\Cache\__db.*"
del "C:\ProgramData\Squeezebox\Cache\libmediascan.db"
sqlite3 "C:\ProgramData\Squeezebox\artwork.db" "VACUUM;"
sqlite3 "C:\ProgramData\Squeezebox\Cache\cache.db" "VACUUM;"
sqlite3 "C:\ProgramData\Squeezebox\Cache\library.db" "VACUUM;"
sqlite3 "C:\ProgramData\Squeezebox\Cache\persist.db" "VACUUM;"


And finally, optimizing the configuration of the RPi player for the best results. At a high level, they impact three areas: disabling what's not necessary, declocking it for reduced heat and longer battery life and making use of the large amount of otherwise unused memory as an output buffer.

Within pCP, I configure the "Buffer Size Settings" (per Soundchekk) as: 20000:600000.

And add a couple of additional parameters in config.txt:

hdmi_blanking=2
arm_freq=800
sdram_freq=400
core_freq=400
gpu_freq=300
over_voltage=-4
sdram_over_voltage=-4
gpu_mem=16

edit: oops, forgot a later addition to turn off the LEDs:

# Disable the ACT LED.
dtparam=act_led_trigger=none
dtparam=act_led_activelow=on

# Disable the PWR LED.
dtparam=pwr_led_trigger=none
dtparam=pwr_led_activelow=on
 
Last edited:
I agree with separating the server from the player. Nice write up too.
Thanks. I see three advantages:

1. Centralize music library for access to multiple devices.
2. Allows for lower powered, quieter renderers.
3. With pCP, I configure 600 MB of the otherwise unused memory as a large output buffer. It becomes essentially a memory player.
 
There are many approaches, but here was mine:

1. Raspberry Pi 3B+ board. Link to Amazon.
2. Case. Lots of choices, but I liked the Zebra Tall Hat (including heat sinks). Link to Amazon.
3. Micro SD card. Get them anywhere. Just need 2 GB.
4. Lots of cheap switchers available, but I prefer an inexpensive linear. I got mine from Jameco. Alternately, I use a 2A Jockery cell phone charger.
5. Micro USB to 2.1 DC adapter. Link here.
6. You can use USB for audio output, but I chose a separate Allo DigiOne board for better performance. Link here.

Great list. Couple of questions:

I like the look of the Zebra tall hat board. If i decided to add a DAC hat to my RP, will this accomodate it?

Is there really an advantage to linear in this context?

What do you feed the output of the DigiOne to? I currently take the output from my RP and loop it through a relatively old USB DAC, and to my aged ears it sounds fine.

tks,

s.
 
I like the look of the Zebra tall hat board. If i decided to add a DAC hat to my RP, will this accomodate it?
Yes. The objective of the "Tall Hat" is to support a board above the main one.

Is there really an advantage to linear in this context?
Most certainly! SMPS based noise creates a false brightness and reduces resolution. I find that power supplies in every component can make a significant audible difference.

What do you feed the output of the DigiOne to? I currently take the output from my RP and loop it through a relatively old USB DAC, and to my aged ears it sounds fine.
I use a modified Music Hall DAC 25.3. I replaced the OPA op amps with Burson FET modules. USB output is usually fine (used with a microRendu in the main system), but audio output can be noisy with the RPi implementation. No isolation as you find with better units. I use an external WiFi adapter with mine in the garage system.

rpi0917.jpg
 
Five years ago, I would agree.

Having used multiple SB Touch players in the past, I find that a Raspberry Pi based system offers considerably better performance.

I found this statement so intriguing that I'm going to give the your "recipe" a try. Waiting on parts. The Teddy Pardo PS that's using with my Touch should work well with the RPI. Thanks, for posting some solid information, particularly the optimization settings. My Touch is using a custom kernel that gives the ability to tweak settings and turn off all unneeded services. I've been happy with its performance, but I'm always willing to try new things.

A question, do use the audio optimized build of piCorePlayer ?

-Dave
 
The Teddy Pardo PS that's using with my Touch should work well with the RPI.
Indeed. That is also one of the recommended units for the microRendu used in the main system. There I use an Uptone LPS-1.

Thanks, for posting some solid information, particularly the optimization settings.
It works fine out of the box, but lends itself to fine tuning.

A question, do use the audio optimized build of piCorePlayer ?
If by that you mean the "Audio" version, yes. I'm running 3.22 and while I have 3.5, I haven't yet burned a new sd card.

I thought I might miss the touch screen but really don't. Upstairs, I use an iPad and either my iPhone or Apple Watch in the garage for control purposes.
 
If by that you mean the "Audio" version, yes. I'm running 3.22 and while I have 3.5, I haven't yet burned a new sd card.

Thanks. I downloaded both versions of 3.5. I'll use the Audio version.

I thought I might miss the touch screen but really don't. Upstairs, I use an iPad and either my iPhone or Apple Watch in the garage for control purposes.

I've been using the Touch with the screen turned off for years. I also use an IPad, and an IPhone for control.

-Dave
 
I have a SBT which has been unused for a couple of years. System was taken out of service, then never fully reinstalled after home reno. Wondering now, What do I need to do to bring up to date...to extent possible as I guess it is open source now?
 
There are many approaches, but here was mine:

1. Raspberry Pi 3B+ board. Link to Amazon.
2. Case. Lots of choices, but I liked the Zebra Tall Hat (including heat sinks). Link to Amazon.
3. Micro SD card. Get them anywhere. Just need 2 GB.
4. Lots of cheap switchers available, but I prefer an inexpensive linear. I got mine from Jameco. Alternately, I use a 2A Jockery cell phone charger.
5. Micro USB to 2.1 DC adapter. Link here.
6. You can use USB for audio output, but I chose a separate Allo DigiOne board for better performance. Link here.

You'll also need some free software. I prefer piCorePlayer as playback software using Logitech Music Server 7.9.1 and use Etcher for burning the microSD image. The RPi can be used as both LMS server and player, but I prefer to use my desktop as server component where music files live. It feeds a microRendu player in the main system via CAT6 and the RPi via Wi-Fi.

View attachment 1247203
View attachment 1247205

To summarize:

1. Enable large server side buffer
2. Have server pre-cache artwork
3. Set process priority high for uninterrupted execution
4. Disable unused plugins

It has also been suggested that periodically "vacuuming" the database files using "sqlite" provides optimum database operation after many changes. Depending upon how much new music I add, I might run this simple batch file once every month or so:

setlocal


del "C:\ProgramData\Squeezebox\Cache\__db.*"
del "C:\ProgramData\Squeezebox\Cache\libmediascan.db"
sqlite3 "C:\ProgramData\Squeezebox\artwork.db" "VACUUM;"
sqlite3 "C:\ProgramData\Squeezebox\Cache\cache.db" "VACUUM;"
sqlite3 "C:\ProgramData\Squeezebox\Cache\library.db" "VACUUM;"
sqlite3 "C:\ProgramData\Squeezebox\Cache\persist.db" "VACUUM;"


And finally, optimizing the configuration of the RPi player for the best results. At a high level, they impact three areas: disabling what's not necessary, declocking it for reduced heat and longer battery life and making use of the large amount of otherwise unused memory as an output buffer.

Within pCP, I configure the "Buffer Size Settings" (per Soundchekk) as: 20000:600000.

And add a couple of additional parameters in config.txt:

hdmi_blanking=2
arm_freq=800
sdram_freq=400
core_freq=400
gpu_freq=300
over_voltage=-4
sdram_over_voltage=-4
gpu_mem=16

edit: oops, forgot a later addition to turn off the LEDs:

# Disable the ACT LED.
dtparam=act_led_trigger=none
dtparam=act_led_activelow=on

# Disable the PWR LED.
dtparam=pwr_led_trigger=none
dtparam=pwr_led_activelow=on

This has got to be one of the most helpful posts I've read on any forum. There is no lag on my pCP any more, searching, jumping thru a song, etc, super quick now. Thank you!

Note: https://www.picoreplayer.org/how_to_edit_config_txt.shtml has the simple instructions needed to mount the partition containing config.txt.
 
Back
Top Bottom