Setting up a ROC-RK3328-CC as a Roon Bridge

Some weeks ago I posted in this thread about successfully getting this device working as a Roon bridge:

https://www.amazon.com/Libre-Computer-ROC-RK3328-CC-Renegade-Ethernet/dp/B078RMQYHS

Today I set up another one of these for a second home and logged everything I did getting it working. So here it is:

Note, these instructions are Mac centric as that’s what I use. Also note that this will only work with a USB DAC.

What you need:

  • A ROC-RK3328-CC Renegade board
  • A suitable power supply, anything that will work with a Raspberry Pi 3 will work, 5 Volt, 3 Amp, micro USB connector. I purchased this this one.
  • An ethernet cable connected to your network.
  • A Mac with an SD card reader.
  • Micro SD card. Get one with an A1 speed rating, not A2. I purchased SanDisk Ultra microSDXC UHS-1. I purchased 128GB. Overkill, but it was only a few dollars more than smaller cards. Get one with an SD adapter if you don’t have one.
  • balenaEtcher – This is the Mac software used to write the boot image to the Micro SD card. Google will tell you where to find it. I’m sure there is a windows alternative…
  • A monitor with HDMI and a HDMI cable.
  • A keyboard, optionally for setup. OR…
  • Forget about the keyboard and connect from your Mac for final config. That’s my choice.

Instructions:

  • Download the Armbian image.

    • Go to Renegade – Armbian
    • You will see two supported images, one is labeled CLI, the other Desktop. Download the CLI image (currently Armbian 22.11 Jammy)
  • The downloaded file will be something like Armbian_22.11.1_Renegade_jammy_current_5.15.80.img.xy

  • Go do Downloads in finder and double click the download. Finder will decompress the file to something like Armbian_22.11.1_Renegade_jammy_current_5.15.80.img (without the .xy)

  • Insert the MicroSD card into the SD card adapter. Insert that into your SD card reader

  • Start balenaEtcher

    • Click “Flash from file”, Navigate to Documents and select the .img file.
    • Click “Select target”, select your SD card.
    • Click “Flash”, it will ask you to enter your password before proceeding. This took a little over a minute.
    • When complete it will prompt you to eject, do that, then remove the card from your computer.
  • Remove the Micro SD card from the adapter and insert it into the board. The Micro SD slot is on the bottom of the board. This will be the Renegade’s “hard disk” and will live in the board as long as you use it.

  • Connect the HDMI cable from your monitor to the board

  • Connect the ethernet cable to the board

  • If you have a keyboard, plug it into one of the USB ports (you don’t really need a keyboard)

  • Connect the power adapter to the board.

  • Plug in the power adapter and watch the monitor.

  • The first boot may take several minutes. You’ll initially see a splash screen. Eventually you’ll see a prompt to create a root password.

  • You will also see the IP Address of the ROC. Write this down if you want to finish the setup from your mac. I’ll assume that’s what you’re going to do

  • From your mac, bring up Terminal.app. Run:

ssh root@<IP Address>
  • It will say something about ssh key, that I don’t remember… type ‘yes’. It will prompt for a password type 1234 hit return. Now you’re at the same ‘Create root password:’ prompt you were in on the terminal.

  • Follow the prompts to create a root password

  • Select a default shell (type 1 for bash)

  • Create a non-root user

  • Set language and locale, defaults are most likely fine

  • When done, log out (<ctrl>-d, or type exit and hit return)

  • Log back in as your non-root user:

ssh <my user>@<IP Address>
  • Important: disable the hostapd service. This service does something with WiFi and creating an access point. If you don’t disable it, it will periodically (frequently) start/try/fail and will write excessively to the system log. On the first device I set up it ran fine for a while, then after several hours of uptime it would periodically cause disruptions communicating to the DAC resulting in dropouts and clicks.
kelly@renegade:~$ sudo systemctl disable hostapd
[sudo] password for kelly:
Synchronizing state of hostapd.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install disable hostapd
Removed /etc/systemd/system/multi-user.target.wants/hostapd.service.
  • Install roon bridge:
kelly@renegade:~$ mkdir download
kelly@renegade:~$ cd download
kelly@renegade:~/download$ wget https://download.roonlabs.net/builds/roonbridge-installer-linuxarmv8.sh
<OUTPUT SNIPPED>
kelly@renegade:~/download$ chmod +x roonbridge-installer-linuxarmv8.sh 
kelly@renegade:~/download$ sudo ./roonbridge-installer-linuxarmv8.sh 

--------------------------------------------------------------------------------------

Welcome to the RoonBridge installer

This installer sets up RoonBridge to run on linux with the following settings:

 - RoonBridge will be installed in /opt/RoonBridge
 - RoonBridge's data will be stored in /var/roon/RoonBridge
 - RoonBridge will be configured to run as a system service
 - RoonBridge will run as root

These settings are suitable for turning a dedicated or semi-dedicated device
into an appliance that runs RoonBridge

If you want customize how RoonBridge is installed, see:

   http://kb.roonlabs.com/LinuxInstall

--------------------------------------------------------------------------------------

Do you want to install RoonBridge on this machine? [Y/n] y

<MORE OUTPUT SNIPPED>

Starting service roonbridge...
Service Started

--------------------------------------------------------------------------------------

All Done! RoonBridge should be running on your machine now.

--------------------------------------------------------------------------------------

kelly@renegade:~/download$ 
  • Verify it’s running:
kelly@renegade:~/download$ ps auxw | fgrep -i roon
root        7131  0.0  0.0   2308   828 ?        Ss   19:07   0:00 /bin/sh /opt/RoonBridge/start.sh
root        7134  2.2  1.1 479748 44960 ?        Sl   19:07   0:03 RoonBridge --debug --gc=sgen --server RoonBridge.exe
root        7148  7.8  1.7 1367040 69928 ?       Sl   19:07   0:10 RoonBridgeHelper --debug --gc=sgen --server RoonBridgeHelper.exe
root        7154  0.0  0.0   2664   844 ?        S    19:07   0:00 /opt/RoonBridge/Bridge/processreaper 7148
kelly       7279  0.0  0.0   5896  2016 pts/0    S+   19:09   0:00 grep -F --color=auto -i roon
kelly@renegade:~/download$ 
  • Yay!

Now you’re ready to connect to your system. Shut down the device:

sudo shutdown -h now

Unplug the board, disconnect the keyboard, monitor and move the device to wherever it will live.

Connect the USB from your DAC to the board. You must use one of the stacked USB ports (they have white plastic in the connector). The other blue USB port does not work for some reason.

Connect the power and plug it in. In a minute or so, Roon should detect the device. Go to your audio settings, you should see the Renegade with four output options:

  • Renegade ALSA
  • HDMI ALSA
  • SPDIF ALSA
  • TRS Jack ALSA

Select ‘Renegade ALSA’, the other choices require additional hardware (HDMI may work, I have not tried it).

As long as genuine RPi4s are prohibitively expensive, I think this board is an excellent choice. I have many hours of listening to the first device I set up without any issues at all (after I got the hostapd issue sorted).

I hope this is useful to some of you.

8 Likes