Jump to content

Article: The Value Proposition In Computer Audio: Rodding The Raspberry, Baking the Pi (with tips for squeezing more from other SBCs)


Recommended Posts

On 7/29/2020 at 8:37 AM, EvilTed said:

@bluesman

A truly inspirational article!

 

I bought me a Pi and will try rodding it for fun :)

Thanks!  Even before the first note is played, there’s a lot of fun in seeing something you did work the way it’s supposed to work.  I still get a little buzz every time I add a line to a configuration file or even just download and set up a new program, reboot, and find what I wanted right there on the desktop.  Seeing the CPU temp run 20 degrees lower after adding four $1 heat sinks and a $7 case is a real mood elevator.
 

Every simple change brightens the day.  Every time a mod makes the JRiver Media Center GUI a little smoother and faster on a Pi, I smile.  And seeing it run as smoothly on a rodded  Pi 4 as it does on my big PCs lights up my life.  I even have one running JRMC as my WAN server, so my son and I can listen to our own music independently anywhere in the world (assuming we’ll eventually be able to travel again...)

 

And then comes the music, which is why we all do this stuff (however we do it).  Enjoy!

Link to post
Share on other sites

This is outstanding info! Many thanks!

 

I've done a few of these items on my Pi3 but now have a few other things to try. Hey, why not?!

Digital: Schiit Yggy + Gumby, Meridian Explorer2

Headphone: Woo WA22, Audez'e LCD3, Beyerdynamic T1

Amplification: Pass Labs INT30A, Focal 1027be

Analog: VPI Classic, Soundsmith Zephy, EAR 834P

LastFM: WharfRatJustin

Link to post
Share on other sites
On 8/1/2020 at 3:14 PM, jerico said:

This is outstanding info! Many thanks!

 

I've done a few of these items on my Pi3 but now have a few other things to try. Hey, why not?!

You're more than welcome!  One of the easiest and coolest things I've found is the comprehensive desktop monitoring widget called Conky (instructions here).  You can change the layout, color scheme etc, but I just use it as it comes out of the box.  Here it's showing an overclocked Pi3B+ at work playing a 24/96 flac:

 

conky_RB_flac_song_decoded_in_memory_playback.jpg.9597d3cee6a71c7e0387f7dba70e63dd.jpg

 

You'll read that you can't overclock a 3B+ because it's already overclocked.  But there's a little room for boost with code that works on most (but not all) of mine, and doing this definitely requires cooling. At the very least, you need heat sinks, but a fan cooled case is really the best (see this comparison for an idea of the relative value of different cooling cases). This code for the /boot/config.txt file comes from the RaspberryPi.org Forum and works well for me.  The most dramatic increase in performance is seen in video, which is relevant to audio if you use a graphic-intensive package like JRiver Media Center plus a monitor GUI or widget. The following will up the maximum video frame rate from about 195 to about 240:

 

arm_freq=1495 arm_freq_min=450 gpu_freq=515 gpu_freq_min=200 core_freq=530 core_freq_min=200 sdram_freq=600 sdram_freq_min=200 over_voltage=1 over_voltage_min=-3 sdram_over_voltage=1 sdram_over_voltage_min=-2 temp_soft_limit=70

 

And this will take it up to about 245-249 fps if you're feeling adventurous or want to stream video on your 3B+:

 

arm_freq=1510 arm_freq_min=500 gpu_freq=520 gpu_freq_min=300 core_freq=540 core_freq_min=300 sdram_freq=620 sdram_freq_min=300 over_voltage=2 sdram_over_voltage=1 temp_soft_limit=70

 

The easiest way to be fairly sure you can recover if it won't boot with the modified config file is to just comment out all the lines in the stock config file with a # at the beginning of each line, then paste the new code below it.  When a 3B+ won't boot with the modified boot/config file, I just move the card or SSD to another Linux machine, open the file, delete or comment out the modified code and uncomment the original code to return it to a lower level.  

 

If you don't want Conky on your desktop or you're controlling your Pi via SSH, you can check your voltage & frequency in the terminal window by running this command:  watch "vcgencmd measure_volts core && vcgencmd measure_clock arm".  Here it is with JRMC playing a flac and reloading a 10,000 file library at the same time.  The lower left window shows that it's loading cover art in this snapshot:

conky_playingJRMC_small.thumb.jpg.2f54a2a0e316ba347412a25346249d56.jpg

 

Have fun and please keep us posted!

Link to post
Share on other sites
3 hours ago, Scampy4 said:

I just wanted to say what an excellent article this is.  I enjoyed it immensely.  It's erudite and informative.  I have several raspi's running as Roon endpoints, but your article has got me itching to redeploy one or two of them and experiment further.  Thank you for your inspirational hard work.

It's my pleasure!  Stick around for the next few articles for more great stuff to do with a Pi or other SBC.  I built a simple stereo DAW with a Pi plus a $100 audio interface that has a mic preamp in it - it's the machine on which I recorded the two audio files linked at the end of this article (one a ripped vinyl album and the other a live recording of my band at the club in which we play regularly).  I'll try to incorporate George Graves's guidance as his pro recording series unfolds, to make this as fine as possible using a value based approach (OK - to spend as little money as necessary to make the best recordings a $200 rig can make).

 

I made an 8 channel renderer/player with a 3B+ and a $58 MC ADC/DAC Pi HAT that runs JRMC like a champ and plays MC formats amazingly well through its 8 RCA line outs.  I just set up a $45 BT transmitter to see if the latest BT5 / LL / HD will keep the tail in line with the dog, so I can turn my "OctoPi" into a fully wireless 7.1 system with decent SQ.  And there's a menagerie of Pi-based stuff on my bench that includes a stand-alone Wifi hotspot (so you can set up a WLAN that can be independent of your WAN connection or have internet access through it), an active crossover (3 way stereo, if you use a MC DAC), an oscilloscope (per the MagPi), and a few variants on NAS (using Samba, OpenMediaVault, OwnCloud and NextCloud).  You can even set up a RAID array on a Pi with multiple drives attached.

 

To quote the Beach Boys, "We'll have fun, fun, fun 'til her daddy takes the T1 away!"

 

spacer.png

Link to post
Share on other sites
2 hours ago, IceClass said:

Now, what's the cool looking silver case on the pis on the far left of the photo?

I'm glad you enjoyed it! 

 

That's an Inland aluminum case for the 3B+.  The only ready source I know of is Microcenter, where they're now down to about $3 each. Their machining is not the most precise, but they fit together fine and look very nice - and they allow full access to all the ports, although you may need a fine forceps to remove the microSD card through the slot provided for it. I used them when the 3 first came out because they were the best I could find. 

 

They're still fine for general use, although they lack air inlets so they don't bring the operating temps down much.  Removing the slide-in cover over the big GPIO header helps airflow a bit.  But  I strongly suggest putting heat sinks on the hot spots (SoC & LAN chips) in any case that's not fan cooled and in any fan cooled case with enough room to fit them.  Some sinks come with 3M thermal transfer tape that works OK, but I've seen drops of 5+ degrees F by removing that and using good thermal transfer paste instead.  Unfortunately, the paste isn't as adhesive as the tape. So if you drop the assembled unit or even whack it hard enough, you can dislodge a heat sink and potentially cause electrical trouble if it touches the wrong parts of the board.  Be careful!

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...