Roon not honouring max safety volume settings after DietPi restart

I am using Allo Boss2 player with dietpi installed. In Roon I have Volume control set to device Volume and have set maximum safety levels to 70. This works fine most of the time and won’t allow me to go above. However, I noticed that if I restart the DietPi (power cycling it), after Roon rediscovers it the volume is set at 100. This is dangerous because one may just hit play without checking and do some damage to hearing or equipments.

UPDATE: this issue was solved after I upgraded DietPi to new version(v8 I think).

What do you mean by that, do you simply unplug power or do you call poweroff/reboot or similar to perform an ordinary shutdown/reboot sequence? At least ALSA mixer settings are indeed stored persistently via alsa-restore.service only on ordinary shutdown sequences, hence would be lost when simply unplugging the device, like a few other things as well, RAMlog files and such.

I simply unplug power. Roon remembers my safety volume setting though when it first re-discovers the device it sets the volume to 100 while showing my max in the UI, so it’s not simply a matter of losing that info.

so I just repeated this and took screenshots of what happens. This is what I have before power cycling:

and this is what happens right after Dietpi comes back up in Roon:

I don’t see this issue with ropieee so perhaps you can provide more info if the roon bridge version is available in settings about in roon?

I couldn’t find any version in its web based UI. Do you know how to obtain that if I SSH to it? Also, I realized I am not using the latest version of DietPi so I am updating it now.

Look under roon settings | about not in the rpi

ah, thanks. it says v7I+.

Don’t do that, as said, you’ll loose a bunch of info and variable data, as well as risk data corruption when writes are done or kept in filesystem cache. The shutdown sequence is done for a reason, to gracefully stop services, give then a chance to store variable data, sync is called to write the filesystem cache persistently to disk, DietPi-RAMlog stores the empty /var/log structure and metadata to disk to not loose new log files (along with their required permissions etc) and all such. Use poweroff or reboot and in case of the first wait until LEDs indicate a complete shutdown before unplugging power.

I’m not 100% sure though whether this solves your issue, it is just a strong general recommendation. In case Roon sets volume via device (ALSA/hardware level) and not internally (software level), it is however very likely. You can store settings manually via:

alsactl store

And you can check whether Roon applies volume via ALSA mixer settings by verifying that you see the set volume as well in:


Why not try I gave up on dietpi many years ago

Get another sd card and try it…nothing to lose

Don’t do that

that’s not a helpful answer. Power may be lost for a variety of reasons out of my control. Safety volumes should still be adhered to no matter what.

yeah, I am open to switch to that. I have another ropieee device already and works quite well.

Well it was because you said this is what you do, so I though you do it intentionally. When you usually call poweroff, forget about that.

When alsactl store is used once (or a regular shutdown/reboot), ALSA settings are stored to disk, hence a power loss won’t revert to 100% then, assuming that Roon indeed uses ALSA mixer settings to apply volume.

In case Roon applies volume internally, probably systemctl restart roonbridge makes it persistent.

sorry for not being clear. I almost never turn it off. What I meant was I could reproduce this reliably by power cycling.

The problem is actually solved now after upgrading Dietpi to the new version!

Okay great. I guess it really was an ordinary service stop (either Roon Bridge or alsa-restore.service or both), triggered by the update, which made it persistent :slightly_smiling_face:.

1 Like

IMO a major question is whether one wants a single purpose device or be able to easily add other purposes/server software. If one wants to run a Roon Bridge only, ropieee will be great, I guess, as all they do is make Roon Bridge running great on the RPi, similar to how LibreELEC is a great choice, probably the best for running (only) Kodi on an RPi or other supported device. The benefit of DietPi is indeed that its designed to allow easy install and run other software aside of it, which is not natively supported or as easy to setup on ropieee resp. LibreELEC. Since DietPi supports a large number of devices and close to 200 different software titles, bear with us that we may not setup all of then as great as the single-purpose OSes do at all time on all supported SBCs/hardware :wink:. Community/user feedback is always very welcome to detect issues or possible enhancements.


I guess ‘powerful’ was the wrong word since the point of Ropieee is doing just one thing and doing it right. But I think you are selling yourself short, DietPi is also pretty damn good in just running Roon Bridge, especially for users with some Linux experience. Anyways, thanks for the terrific work!