Autosleep feature in 1.7

I haven’t dabbled in extentions as they are not first party and I don’t want to risk messing things up. Stability is key for me.

Though I would consider this if it ran smoothly and doesn’t pose a risk to equipment.

@danny tagging you as I don’t think I replied to you directly.

i lack the switch, but i could get one

@Richard_Thornton, you going to take a stab at it or shall I place an order?

Thanks @danny!

I will pick this up over at:

1 Like

It could power-down the USB ports with non-system devices on them, like DACs.

that wouldn’t actually save any real power unless your usb dac is bus powered, which is pretty rare

Yes, power-saving with a Pi would be minimal, but it would trigger the auto-off function on DACs with that function, like the Topping DACs. See

Interesting, but that wouldn’t do what you think it would. Disabling the USB port would cause the device to disappear, indistinguishable from unplugging it. If it gets unplugged, the zone disappears and Roon can re-awaken it

Hmmm, the usb-power.rules file hack seems to be working. Of course, what that’s doing is to enable autosuspend of the device, not making it “disappear”. Roon sees the Pi as the endpoint/device, I think – it doesn’t seem to know anything about the D70 I’ve got plugged into it. Two seconds after the music ends, the kernel suspends the device and thereby disables the power to the DAC, which allows it then to power down.

and when it powers down, linux keeps the device “online” as if it’s still there? Roon doesn’t loose the endpoint?

That’s correct.

Now, the DAC is a Topping D70, which Roon doesn’t know anything about. In the Settings panel, it’s an “unidentified device”. Perhaps that contributes to Roon not removing it? Perhaps if it was something Roon identified, things would be different?

Roon knows about it. If it didn’t, it wouldn’t know what audio formats it supports. Go unplug the USB device from your Pi, and it’ll go away from Roon.

The Topping D70’s USB is implemented by XMOS – I bet there is a way to tell the XMOS to standby. I’ll poke around.

Yes, because it will disappear from the Pi. But I don’t know if the Pi is essentially the audio device as far as Roon is concerned, or the DAC. Could be the Pi just doesn’t report as an audio device if no DAC (or USB Audio-capable device) is plugged into it. I’d have to know the specifics of the interaction between RoPieee and the Roon Bridge to see that. Presumably you (or someone at Roon Labs) does have those specifics.

If you are playing out the USB of the Pi, it is the thing connected to the USB, not the Pi itself. RoonBridge is just a bridge to let Roon get remote access to the USB ports and ALSA supported hardware devices.

Correct, if the device is not found over USB, the RoonBridge will not report it’s existence to Roon.

I think I’ve got it now. I swapped in my Mytek Liberty, in place of the D70, and it behaves the same way. That is, the kernel auto-suspend feature using usb-power.rules seems to work with it as well, and even when suspended it does not disappear from the Pi’s listing of USB devices.

I have to agree it’s hard to see where you’d save much power using “Auto Sleep” with a vanilla Raspberry Pi, though perhaps a DAC hat would make it more compelling. The usb-power.rules fix seems to work well, and perhaps I’ll just file a request with spockfish to put that in as a general thing for audio class USB devices.

1 Like

that is a great idea.