BalenaCloud with ScreenlyOse

I’m using BalenaCloud with ScreenlyOse as digital signage in one tv screen with Raspberry pi 3 B+. Is there a way to show same content to another (one or two) tv screens which all have raspberry attached.

ScreenlyOse uses IP address and when I go with browser to that IP address I can change digital signage content.

Now I like to have that same content to another tv screens so that I have only one ip address where I need to change content and it shows up to all screens at same time

Every Raspberry has own IP address.

I can do several applications in balenacloud but then I need to change content to all raspberrys using their own ip address and there’s no idea to do that.

Any ideas?

Hi @Jaakkoo,

First of all, welcome to balena community : )

Let me rephrase your question to make sure I understand it right: You are following our blog post to deploy a signage application with Screenly OSE. You have multiple Raspberry Pis with each connected to a different screen. Then you’d like to show the same content on all screens. Is this a fair summary?

From your message I got the impression that you created an individual application for each Raspberry Pi. If that’s so, then actually you need only 1 application for all your devices. This way you could run the same application (and content) on all your devices. Consecutively, when you update your application (with new content), all devices belonging to the same application get the new version. Then each device still uses a different IP.

I recommend you to go over our introduction documentation that explains all of these in more detail:

Finally, just so you know, we have a new blog post featuring balenaDash:

Perhaps you will be interested in that as well.



Yes your summary is correct.

I have created one application with raspberry and it works fine. I have couple of raspberrys in the box waiting how to solve this that I can show on them same content that one I have already created.

So what I understand of your message is that now that I have this one working application in balenacloud I could add new devices to that application. But do I give those new raspberrys own IP, because they cannot use same IP. Screenly content is managed from browser with IP address, I don’t understand how those new raspberrys are managed with same content as first created…I will read documentation again…hopefully I understand this…

Heya ! Thanks for getting back to us. In case of our demo project ( what we’ve done is to enable the raspberry pi to ask for content itself. So if you have multiple devices, you can tell them to ask for the same content and they should display it accordingly. In the sample application, as in the blog post, this is controlled by the WPE_URL variable that you can set via the balena dashboard. More details are in the “Displaying your own content” section. If you’re using your own code, I htink the principle could be the same, have the devices ask for the content to display. This way you don’t need to know where the devices actually are on the network nor know their IP addresses, as the devices only need to know the address of the content server, while the content server does not need to know the actual devices it is serving. Let me know if this makes sense :slight_smile:


I have done the project like this ( could that WPE_URL variable work if I add new device to same application which is working

Ah ! Thanks for that :slight_smile: The variable will not work for this, as the application (screenly) would need to know how to read that variable. I can take a look into screely and see if it could be pointed to a URL and let you know if I’ll find anything :slight_smile:

okey, thanks, I’ve been struggled with this some time now and I don’t have a clue how to solve this. It would be annoying and takes time if I have 3-4 raspberrys attached to 3-4 screens and I need to change content to all of them


I have 9 raspberry that run on a screenly-ose application on balena cloud, each to a local ip, and a public ip.
I have password protected access to screenly, and to put content in each, I do it 1 by 1, but it goes very quickly if we use instead the local address (mp4, jpg …) , knowing that you can send multiple files at once.
What is the longest is to go into “asset” internet links, because it must be done 1 by 1.
After, if we want the same content on all raspberry, rather than put mp4 files, we must put http links in the “assets” that point to a local server with mp4 or other content;
like that if you want to modify all raspeberry at the same time, just change the file “video1” on the local server or page1.html
Like that in one time we change all the contents of all raspberry without touching screenly.


small error
it does not work with mp4 files, because of the duration of the asset, on the other hand it works very well with photos or images,

as well as with “google slide” in autommatic reading … (we can convert the power points in google slide)


Any ideas to this that? I know that if the file name stays the same and only content in the file changes then I can show same content with multiple raspberrys but if I need to add new content or duratation changes then I need to change it to all applications with their own public device url.

Can it done with dhcp or can one raspberry be master and other raspberrys slaves and slaves show content what master is pushing?

Hey @Jaakkoo did you try the solution suggested by @stephane? I am afraid I don’t know enough about screenly to help you further with this. If you need to deliver files to multiple devices I would suggest to have an application variable which points to a server which serves the contents. This server could be one of the raspberries exposed through the web url and the others can poll it for new content.

It seems to me impossible, it would extract the directory root / data /
which contains the directory “screenly_assets” which contains the data to be displayed by the player as well as the file “screenly.db” which is in the directory: “/ home / pi / screenly / ansible / roles / screenly / files/” and the copy in other players. can be with the terminal? I do not think so ;
For that it would have a winscp access, but it should still be done one by one.