Picture frame with Roon interface

After recent comment in one of John Darko’s videos, I realized it would be neat to have a standalone Roon “now playing” display. I also thought when not playing music it could make a nice digital picture frame.

A quick weekend project later, here is roFrame. Link if anyone is interested:

Enjoy!

9 Likes

This is killer. Haven’t built mine yet, but if it works as you describe it is a far better solution to a lot of random shenanigans I’ve tried before.

Given functionality I assume I could use a pi zero 2 W instead of a Pi4, right?

Not sure if the pi zero has sufficient RAM to run the x11 desktop, chromium, and the python program. It might work out with some slimming on the OS

Ah. I’m just trying to be cheap. Guess it’s a Pi4 for me just to be sure.

It’s a bit out of my league I think. But this is awesome

1 Like

I tried by changing the memory of my RPi4 to 512M and worked for a few minutes started thrashing, so does not look for the Zero. I ordered one to experiment.

Thanks, Jaime, got my “now playing” display working with a slightly different monitor and it all seems to work well.

Only issue I see is that if you reboot the Pi you seem to get multiple entries in the Extensions / View and have to remove old ones and sometimes re-enable? Could just be me…

Thanks again, a great extension!

1 Like

Thanks Russ! Happy is working for someone else :slight_smile: I’ll take a look at the multiple entry issue. I do see it in my Roon too.

Something similar can be achieved using the the official 7-inch Raspberry Pi Touchscreen and RoPieee.

One can select which Roon Control Zone is the basis for the “now playing display”. Therefor it is not necessary to use the RoPieee installation as endpoint for Roon. It can be used just as display for any other endpoint or endpoint group. The endpoint or endpoint group can even controlled to a certain extend using the touch screen. The touch screen is rather small, however.

1 Like

I did consider RoPieee, but my system is located in the living room and design goal was to have the display to have other functionality, like picture frame, when not in use by Roon. And also turn itself off in the evenings to extend the panel lifetime.

As an Roon extension, controls could theoretically be added to software, but that would go against the spirit of just being a display device.

Looking forward to the updates. Another small thing I’ve noticed is that the display does not seem to respond to on/off settings in .env file. I’m in a different timezone but I can’t think that would make much difference and I guess it is not my different display as you are presumably controlling the display from the Pi?

DISPLAY_CONTROL=on
DISPLAY_OFF_HOUR=22
DISPLAY_ON_HOUR=10
IMAGE_SIZE=600
NAME=roFrame
PORT=5006
ROON_API_KEY_FNAME=roon_api_key.txt
ROON_CORE_ID_FNAME=roon_core_id.txt
ROON_ZONE=iMac Speakers
SLIDESHOW=on
SLIDESHOW_FOLDER=./pictures
SLIDESHOW_TRANSITION_SECONDS=500
TZ=Europe/London

I’m with Jaime, I have a RoPieee Display and it is good, but this is different and more suited to a lounge scenario.

Your config looks correct. The display control uses the X11 DPMS interface by issuing the xset commands from the python app. For reference:

https://wiki.archlinux.org/title/Display_Power_Management_Signaling

Maybe your screen for some reason does not support the VESA DPMS standard. Do you have a link to the docs of the panel? Maybe other commands can be used to turn it on or off? I could also blank the screen as a fallback, not ideal but may meet your requirement.

Try the following commands at the terminal window:

display should turn off

DISPLAY=:0 xset dpms force off

display should turn on

DISPLAY=:0 xset dpms force on

and let me know if the screen does what is expected.

Tuneshine is awesome

1 Like

That looks very cool. It does Spotify and Apple Music, and setup is through Bluetooth. Things to put in the todo list :slight_smile:

Yes they work for me, with


DISPLAY=:0 xset dpms force off

# display should turn on

DISPLAY=:0 xset dpms force on

I can turn off the display via a terminal and back on.

I installed 0.1.1 but with a few issues, added it to github rather than here.

Great, but you convert this to a iOS app to run on an old iPad?
The iPad sleeps when there is nothing playing then wakes to display ‘What’s Playing’

No need to get a new screen or RPi, as have old iPads available, stuck on iOS 12

Thanks, and sorry about this. I did added note with workaround. Something I don’t understand about Roon extension auth yet…

I imagine it’s possible, but I am not an iOS developer. I have a few old iPads around and would be nice find a new life for them, but Apple does not make that easy.