A live dashboard on a signage screen needs a URL with no login, a kiosk browser to render it, and a refresh the dashboard runs itself. Turn on anonymous access with the Viewer role, build the kiosk URL with a 30 second refresh and a 1 hour window, and save the refresh interval in the dashboard too, because the URL parameter can be dropped on reload.
A snapshot of a dashboard looks perfect on a signage screen and then goes stale an hour later, because it is a picture of the data at one moment. A live dashboard needs three things working together: a URL that opens with no login, a browser on the screen that renders it full screen, and the dashboard refreshing its own panels. This page covers the dashboard side: anonymous access, the kiosk URL, the refresh interval, and the load and image persistence that come with panels that change every 30 seconds. The player side, what a web page player does with your URL, is in what to know about a web page signage player.
The answer in one URL
The setup that works is one address, loaded by a kiosk browser on the screen:
https://grafana.plant.local/d/filling-line?kiosk&refresh=30s&from=now-1h&to=now&autofitpanels
Each parameter does one job:
| Parameter | Job | Value for an unattended screen |
|---|---|---|
kiosk |
removes the side menu and the top bar | on |
refresh |
reloads panel data | 30s |
from and to |
pins the time window | now-1h to now |
autofitpanels |
stretches panels into the space kiosk mode frees | on |
The server's own documentation lists these URL query parameters and the dashboard variables you can pass the same way. One known layout gap: autofitpanels leaves some cleared space empty on certain dashboards, so check the layout with the parameter on before the screen goes on the wall.
That URL only renders if the server hands the page to anyone who asks, which is the anonymous access step below.
What you need
- A Grafana instance on a network the screen can reach, wired LAN preferred.
- A screen that renders web pages. Our displays are Android all-in-one units and you can put your own kiosk browser app on one; our own player software plays images and video from a card, and it is the wrong tool for a live URL.
- A dashboard laid out for 1920 x 1080 in landscape.
- Edit access to the server configuration, for the anonymous access block.
The how to choose a digital signage player guide covers the screen half of the decision.
The setup, step by step
- Turn on anonymous access. In
grafana.ini, in the[auth.anonymous]block, setenabled = true, pointorg_nameat the organization that holds the signage dashboard, and setorg_role = Viewer. Restart the server; the file is read at startup. - Contain that access. This is the one real exposure in the setup. The software's own configuration documentation states that every visitor becomes a Viewer with no sign-in, and that people with that access could edit or delete dashboards in some versions. Put the signage dashboard in its own organization, set the dashboard permissions so the Viewer role can view only, and keep the server inside the firewall.
- Lay the dashboard out for the room. Dark background, no pure-white bars, and letter heights checked against the viewing distance: the planning figure is 30 ft per inch of capital height, and 20 ft per inch is the safer choice for fast reading. Line spacing 1.7 times the capital height.
- Build the kiosk URL from the table above and open it once in a normal browser. You should see the dashboard with no menus and the data window pinned to the last hour.
- Save a 30 second default refresh in the dashboard itself. The
refreshURL parameter is reported as being dropped from the URL when the page reloads, so the saved interval is the one that sticks. - Load the URL into the screen's kiosk browser and set that browser as the device's home app, so the dashboard comes back on its own after a power cut. Disable screen sleep and hide the cursor while you are in the app's settings. What the browser shows when the network drops varies by app; how to handle web links in kiosk signage covers that behavior.
- Run the checks in the next section before you close the cabinet.
How to check it worked
- On a laptop on the same network, open the URL in a private browser window. No login prompt means anonymous access is live. A redirect to a sign-in page means the
[auth.anonymous]block is not in effect; check the restart. - Watch one panel for 60 seconds. The data or the time axis should advance twice at a 30 second refresh.
- Reload the page by hand. Panels that freeze after a reload mean the default refresh was never saved; the URL parameter is the weaker carrier.
- Cut power to the screen for 10 seconds and restore it. The dashboard should return with no one touching it.
- Read one value off the screen and one off the source system in the same minute. Numbers that match close the loop.
Worked example: one filling line, one screen
A filling line gets a screen on the guard rail. Operators read it from about 15 ft, and the dashboard carries 8 panels: line rate, bottle count, downtime, three temperatures, a pressure and a tank level. The URL is the one in the first section.
Query load: one refresh every 30 seconds is 2 a minute, 120 an hour. Eight panels makes 960 panel queries an hour, 16 a minute. The screen runs 12 h a day, so the data source serves 11,520 panel queries a day from this one screen. Compare that with what the source already serves at peak before you add screens. A small or shared source gets the 60 second refresh, which halves the load.
Text size: at 30 ft per inch of capital height, a 15 ft reading distance wants 0.5 in capitals. The safer 20 ft per inch figure wants 0.75 in. Set panel titles at 0.75 in and the headline rate at 2 in: 2 in at the safer figure reads from 40 ft, so the line lead sees it from the aisle.
Static panels and image persistence
A live dashboard is mostly fixed pixels. The title, the panel frames, the legends and the axis marks sit in the same place every shift, all year, and a bright fixed element on an LCD can leave image persistence. On LCD it is usually temporary and clears with varied content. Two habits prevent it: the dark layout with no pure-white bars from step 3, and rotation. Use the kiosk browser's page rotation to alternate two dashboard URLs every 5 minutes, a line view and a plant view, so the pixels move.
When a live dashboard is the wrong tool
If the numbers change once a shift, a browser is the wrong tool. Export the dashboard as an image on a schedule and play it from a card: no browser, no network at the screen, the pattern in offline dashboard signage for screens without logins. The live factory data display article walks the whole choice, dashboard screen or signage screen, for plant data. A floor usually ends up with both: live dashboards at the line, and shop-floor screens and andon-style boards for the notices the dashboards do not carry.
The decision
Recommendation: Run the anonymous kiosk URL with a 30 second refresh and a 1 hour window for up to five screens on one network; at eight panels each that is 80 panel queries a minute, and a small or shared data source gets 60 seconds, which halves it. Data that changes once a shift or slower: exported images from a card, no browser. Screen in another building: keep the server inside your network and reach it over a VPN. A snapshot stays the tool for e-mail, where frozen data is the point.
Questions
Why is the Public dashboards option missing from the Share menu?
The feature shipped in recent major releases of the software. An instance on an older release does not show the menu item, and no setting turns it on there. On those instances the anonymous access route in this article is the way to show a live dashboard, and it works on old and new versions alike. Upgrading the instance adds the feature if you specifically want a shareable public link.
Several screens will show the same dashboard. How much load is that?
Multiply the per-screen rate by the screen count. One 8 panel dashboard at a 30 second refresh generates 960 panel queries an hour, which is 16 a minute, so five screens is 80 a minute. Stretching the refresh to 60 seconds halves that to 40 a minute, and it is the first lever to pull before you touch the server.
What happens to the dashboard after a power cut?
Set the kiosk browser as the home app on the screen. At power-on the device starts the app, the app loads the URL, and the dashboard comes back with no one touching it. Anonymous access matters here: a screen that restarts into a login prompt stays on that prompt until someone types a password. Power-cycle the screen once during commissioning so you see the recovery yourself.
Can a screen in another building reach the dashboard?
Inside your own network, route it and keep the server behind the firewall. Across the public internet, put HTTPS in front of it and remember that anonymous access means anyone who finds the URL can read, and in some versions edit, the dashboards behind it. A site-to-site link or a VPN into the building network keeps the URL private while the screen still loads it as an ordinary web page.
Planning information, not legal or engineering advice. Rules differ by place: check codes and permits with your local authority and your licensed trades.