[HowTo]: Setting up a minimalist linux RoonBridge endpoint

Hi

I’ve got this all working nicely now and I use it as a source for my way too expensive hifi and am quite happy with the SQ. Certainly very comparable to Daphile which I ran before but now with extra added Roon goodness, so I thought I’d share my experience

The advantage of this particular approach is that the linux box can be fairly low spec and housed in a HTPC type enclosure so it looks like a piece of ‘proper’ hifi with a low partner annoyance factor

I have a fanless mini-ITX board with 32GB RAM (too much really) and a 60GB mini-SATA drive all plugged in to an external DC power supply, so totally silent. Network is wired via a ‘plug into a mains socket type’ wireless extender. You can get WiFi working directly with the appropriate dongle but in my experience it’s a right pfaff and a bit flaky especially if (when) it falls over

You only need a monitor and keyboard for the installation and then it runs headless with only power, network and USB to DAC plugged in

Normal caveats apply, YMMV etc etc

I used Debian 8 and you need the ‘netinst’ version. Grab the appropriate ISO from Debian (the amd64 version in most cases is the one you want) and make a bootable CD or USB. My particular mobo won’t boot off USB directly so I had to use a USB-CD drive but it matters not either way

You get to the Debian splash screen and choose Install (first option). The installer is text only but is very straightforward to use. Tab moves you around the screen, Spacebar selects or deselects options and Enter is the equivalent of OK

During the install you have to choose all the usual stuff - hostname, locale, root password, username and password etc. For the domain question most people just use WORKGROUP (which is the Windows default), but I’m not sure it matters. When it comes to the installation options just select SSH Server and System Utilities. Make sure everything else is unchecked (spacebar). When it’s all done remove the CD/USB and reboot

You get to a command prompt and login using root and the password you chose during install

Then install ALSA

$ apt-get install alsa-base alsa-utils

Then you need to install the RoonBridge

You can try using curl as per the instructions in the KB

$ apt-get install curl
$ curl -O http://download.roonlabs.com/builds/roonbridge-installer-linuxx64.sh
$ chmod +x roonbridge-installer-linuxx64.sh
$ ./roonbridge-installer-linuxx64.sh (don’t need sudo as you are root)

But that didn’t work for me as I wasn’t downloading the shell script properly ! When I ran the script I got a ‘file not found HTML’ type error and when I opened the script in nano it was just a bunch of HTML junk !!

No idea why, so plan B

Download the installer in the normal way to your Mac or Linux machine and check it is correct if you want (open it in a text editor) and then scp it to your new machine

On the Roon machine itself run

$ ifconfig -a

and note the IP of the connection (usually eth0). It will 192.168.x.x in the overwhelming majority of cases

Then on a Terminal on your Mac or Linux box

$ scp /path/to/the/download your_username@192.168.x.x:/home/your_username

You should be asked for your password (the user one, not root one) and the file is uploaded

On the Roon box

$ cd /home/your_username
$ ls

You should get

$ roonbridge-installer-linuxx64.sh

Then just do the same as above

$ chmod +x roonbridge-installer-linuxx64.sh
$ ./roonbridge-installer-linuxx64.sh

and it should all install fine

If you are Windows only (!) then I think there is an app called PuTTY or similar that works the same way as the Terminal in Unix based OS’s so try that

Unplug the monitor etc, put your new box on the hifi rack connected to your DAC and the network and then configure from your Roon control point in the usual way

Sit back and enjoy !!

1 Like

Just an update for anyone who might be using (or thinking of using) this approach to get their sounds

The version of Debian I used, although fine for RoonBridge, will not install HQPlayer NAD because of a dependency issue with one of the C++ libraries

You can try and individually update the library itself, but to be honest if you know how to do that you’re not going to be taking Linux admin advice from me :joy:

An easier way is to use Ubuntu Server 14.04 LTS (Trusty) instead. The install process is near identical (perhaps slightly easier) to that for Debian and the appropriate Signalyst .deb installs perfectly

If anyone gets stuck just ask here or just PM me

Interested to know what the minimum base hardware is for such a setup…I have a few old atom and less spec intel c2d mobo’s and I assume if a RPi can cope as a bridge then pretty much any of these mobo options would be fine (they are all fanless) and small form factor BUT I need to support full rate DSD512 where my Dacs will support that…this is my worry as for now I have only found Windows with ASIO drivers to maximise this rate.

Yes I know roon won’t do DSD512 “yet” and HQP needs an endpoint thats i7 with high end cpu too, but if my core can do the DSD512 ultimately the bridge must be able to pass it, thats my worry.

My understanding, and it is just that, is that the endpoint doesn’t need to be very high spec at all regardless of what it is playing, redbook, ‘high res’, DSD or whatever

The heavy lifting needs to be done by whatever box you run HQP on, so if you’re talking DSD512 upsampling then i7 plus CUDA offload is probably mandatory. But once that CPU intensive task is done I believe that the endpoint can be RPi or Atom or something similar

Maybe one of the Roon SysAdmins can confirm I have this right?

I understand all the heavy lifting but its the capability of Linux to support the dsd512 via USB that worries me, as some or perhaps many dsd512 capable dacs only seem to do so by using ASIO drivers under Windows in native mode.

My case in point is that my Macmini’ running bridge won’t support dsd256 but the same DAC on windows does. As macs are running *nix variant I’m worried this might still not fly for RPi or any other flavor distribution on a pc

Oh I see !

It’s a kernel extensions/USB chipset issue in the endpoint in combination with the spec of the USB input module on the DAC itself that’s at work here as I understand

For your particular DAC the Windows ASIO drivers enable DSD256 but the native OSX kexts do not

AFAIK there is no fundamental underlying reason why DSD512 won’t fly with Linux, but it would be extremely difficult to say in advance whether any given setup will work

There in lies the problem…I guess I’ll just have to try a few options and see what transpires. My biggest worry is setting the DAC to NOS mode and maybe getting no sound at all.

Plan A worked for me on Ubuntu :slight_smile:

Cheers, and thanks.

The nice people at Allo compilled a driver for my DAC on the USBridge to allow DSD native as it was only officially windows for DSD, works perfectly to. Maybe it’s possibly for your os.

Oh – so if I asked nicely, my Rotel gear could perhaps be native DSD on USBridge? I thought DoP and native DSD were the same thing in terms of how they sounded – it’s just how the DAC unpacks it. Or am I wrong?

Cheers.