DietPi: creating a lean-and-mean Roon Bridge

Thanks Dan, that’s exactly the one.

Thanks for the very speedy update to the config files - excellent!! I will update when I can next be in front of my Pi and will let you know the outcome.

1 Like

Done this - Roon now downsamples the 192kHz flac to 48kHz as confirmed by the processor:

Regards
CJ

1 Like

Note that when running DietPi there is now option in the Roon settings to set the Max Sample Rate. On the PiCorePlayer this is set to disabled (by default). Perhaps the DietPi version has this set at 48kHz but no option to change it. Just a thought.

CJ

1 Like

Looks like 48KHz is the max value available on the official RPi kernel.

We can bump this upto 192KHz, should give the same results as PiCorePlayer, but, will require a non-official kernel:

Leave it with me, will let you know when its available for install.

I’m having trouble with my NanoPi Neo running RoonBridge on the 1.42 version of DietPi.

I’m not sure if this is a RoonBridge, DietPi, or NanoPi Neo hardware issue…

I have three DACs:

  1. Schiit Fulla 2

  2. Grace Design m9xx

  3. Oppo BDP-105D

Only the Schiit Fulla 2 works, the other two get the “An audio file is loading slowly…” message, dropouts, and dropping/finding/dropping the connection.

The testing was done at the same network drop, only the DAC was changed (and the USB cable for the Oppo, since it uses a USB 2.0 type B input)

All of the Zones/DACs report:

Signal Path: ---->Lossless
Source: --------->FLAC 44.1 kHz 16bit 2 ch
DietPi: ----------->RAAT
Output: ---------->ALSA

The settings window shows:

Zone: DietPi
I’m Fulla Schiit or m9xx or OPPO USB AUDIO 2.0 DAC
[ip address]
Linux 4.9.0-sun8i

If I lower the buffer size from the default 100ms down to 5, 10, or 25ms, Roon no longer displays any error messages, but I hear intermittent static and dropouts.

Has anyone else seen this type of behavior? Your sage advice is appreciated, thanks!!

We visited this before: the audio patches were once part of the next-branch kernel, but it looks like they never made the ‘official’ kernel:

It’s still kind of hacky though – 192kHz is possible, but limited to 16-bit. I guess PiCorePlayer uses these patches as well.

1 Like

If i’am reading this correctly, 24bit is max bit depth supported by HDMI?

Other formats are optional, with HDMI allowing up to 8 channels of uncompressed audio at sample sizes of 16-bit, 20-bit and 24-bit, with sample rates of 32 kHz, 44.1 kHz, 48 kHz, 88.2 kHz, 96 kHz, 176.4 kHz and 192 kHz

So will go with 192KHz/24bit max.

Looking good for 192KHz support on RPi HDMI, using our modified kernel:

We’ll get this completed for v143 update, and, also provide steps required here before its release, just in case our users wish to pre-test the 192KHz HDMI abilities.

3 Likes

@Dan_Knight Great news Dan…Ive been away a few days and lots to catch up on I see.

1 Like

Cool, thanks, looking forward to it

CJ

Heres how to install the DietPi kernel for RPi (installed by default in DietPi v143):
First, make a backup of your system:

dietpi-backup 1

Install new kernel:

[code]wget http://dietpi.com/downloads/binaries/rpi/dietpi_rpi_kernel.zip -O package.zip

apt-mark hold raspberrypi-kernel raspberrypi-bootloader
rm -R /boot/overlays/*
rm -R /lib/modules/*
rm -R /lib/firmware/*
rm /boot/*.img

unzip -o package.zip -d /

rm package.zip

[/code]

Reboot system:

reboot

If you need to revert back:

dietpi-backup -1
reboot
1 Like

I was looking for this a few posts ago. So Ill try it.

1 Like

Just had chance to try it - at the moment I am getting white noise when sample rate exceeds 44.1kHz. Certainly white noise at 96kHz and 192kHz. Will check others too and report back

UPDATE I don’t think the frequency is the issue it is the bit rate. I have a recording I made on a portable recorder 192kHz but 16 bit. That plays perfectly and the processor confirms 192kHz. All my other hi res recordings are 24 bit and none of those plays anything other than white noise with the music deep in the background.

UPDATE 2 Yes, I have now set the max bit rate in the Roon Playback configuration screen to be 16 bit so Roon now truncates the 24 bit data and the Hi Res music now plays albeit at 16 bit. So >16 bit is a problem with the Beta.

CJ

CJ

NOOBS question alert.

I have an SD card with dietpi setup on a Pi2 with Roon, Spotify Connect and Airplay on it.

I now have a shiny new Pi3, can I just put this SD card into to Pi3 or do I have to setup from scratch again?

.sjb

Not sure in this case: DietPi detects the Pi version at first boot. @Dan_Knight will be able to deliver the final verdict on this, but in the mean time it does not hurt to try.

My guess is that you will be OK (although you’ll miss out on all the fun of installing a fresh Pi on a Friday night… ;-)). You could clone the card with ApplePiBaker if you want to keep both Pi’s in service.

I think it may be a Friday night slog!

I could ssh but not everything previously set up seemed to work - only Roon actually.

I’m busy baking!

.shb

set up, a few days ago, my Pi 3 with HiFiBerry Digi + Pro hat and… DietPi :slight_smile:

question: I configured that “dietpi.txt” file Dan posted a while back so, I guess, everything will keep auto-updating, right?

thanks

The following are only applied on 1st run of DietPi (used for automated installations):

The following are variables that store the values you set in dietpi-config, and apply to dietpi-software:

Generally speaking, use of the dietpi.txt file is mainly for 1st run automation (eg: providing WiFi creds for 1st run).

Not sure in this case: DietPi detects the Pi version at first boot. @Dan_Knight will be able to deliver the final verdict on this, but in the mean time it does not hurt to try.

Will be fine to swap into RPi 3 from RPi 2. Device codes are detected during each boot.

I wouldn’t recommend changing from a RPi 2/3 to RPi 1, as CPU core count is reduced from 4 to 1. This applies mostly to webserver stacks and their thread count applied in dietpi-software.

2 Likes

got it, Dan: thank you :slight_smile:

so… how do I check, now and then, for updates and eventually install them? :confused:
(forgive the completely useless n00b)