{"product":"screenlyos","releases":[{"date":"2026-10-26","entries":[{"areas":["security"],"breaking":true,"description":"Web pages and services whose certificates chain to emSign ECC Root CA - G3 stop loading on players running ScreenlyOS 26.10.0.","title":"Players no longer trust certificates from emSign ECC Root CA - G3","type":"security","url":"https://www.screenly.io/releases/screenlyos/26.10.0/emsign-ecc-root-distrusted/"},{"areas":["device-management"],"breaking":false,"description":"Press F8 on a player and the Device Information page lists its model, serial number, network addresses, and secure boot and disk encryption status, with a QR code beside them.","title":"The Device Information page shows a player's details on the display","type":"improvement","url":"https://www.screenly.io/releases/screenlyos/26.10.0/device-information-on-screen/"},{"areas":["apps"],"breaking":false,"description":"On x86 players with a TPM, an app that played after a web page could lose the API keys and passwords saved in its settings and fail to load its data. Apps now get them every time.","title":"Apps on x86 players with a TPM always get their saved keys and passwords","type":"fix","url":"https://www.screenly.io/releases/screenlyos/26.10.0/edge-app-secrets-tpm/"},{"areas":["content-management"],"breaking":false,"description":"Switching a screen to a single item that couldn't load yet turned the screen black; the screen now keeps showing what it had until the new item is ready.","title":"A screen keeps showing its content while a single new item loads","type":"fix","url":"https://www.screenly.io/releases/screenlyos/26.10.0/single-item-playlist-keeps-content/"},{"areas":[],"breaking":false,"description":"HDMI audio follows the connected display, and the network diagnostics and time server checks test what the player actually uses.","title":"Audio plays through the right port on Raspberry Pi, and other fixes","type":"roundup","url":"https://www.screenly.io/releases/screenlyos/26.10.0/fixes-and-improvements/"}],"json":"https://www.screenly.io/releases/screenlyos/26.10.0/v1.json","product":"screenlyos","product_label":"ScreenlyOS","url":"https://www.screenly.io/releases/screenlyos/26.10.0/","version":"26.10.0"},{"date":"2026-10-09","entries":[{"areas":["device-management","monitoring"],"breaking":false,"description":"ScreenlyOS 26.9.0 adds a screenshot command, so a player takes a screenshot the moment the dashboard asks for one, alongside commands like reboot and power off.","title":"Players support a new screenshot command","type":"release","url":"https://www.screenly.io/releases/screenlyos/26.9.0/screenshots-on-request/"},{"areas":["apps","developers"],"breaking":false,"description":"An Edge App can now tell the player it has nothing to show, and the screen moves on to the next item in the playlist instead of showing an empty app.","title":"An Edge App with nothing to show can skip its turn","type":"release","url":"https://www.screenly.io/releases/screenlyos/26.9.0/edge-apps-can-skip-their-turn/"},{"areas":["monitoring","security"],"breaking":true,"description":"Players with metrics collection turned on now serve their Prometheus metrics over HTTPS on port 9100, so monitoring systems that collect them need to switch to https.","title":"Screen metrics are served over HTTPS","type":"improvement","url":"https://www.screenly.io/releases/screenlyos/26.9.0/screen-metrics-over-https/"},{"areas":["security"],"breaking":false,"description":"ScreenlyOS now switches Bluetooth off when a player starts, and every player reports whether its Bluetooth is on or off.","title":"Players keep Bluetooth off and report its state","type":"improvement","url":"https://www.screenly.io/releases/screenlyos/26.9.0/bluetooth-off/"},{"areas":[],"breaking":false,"description":"A removed screen gets a new pairing PIN, x86 players recover from TPM faults on their own, and Scala players report themselves as Scala players.","title":"Removed screens get a new PIN to pair again, and other fixes","type":"roundup","url":"https://www.screenly.io/releases/screenlyos/26.9.0/fixes-and-improvements/"}],"json":"https://www.screenly.io/releases/screenlyos/26.9.0/v1.json","product":"screenlyos","product_label":"ScreenlyOS","url":"https://www.screenly.io/releases/screenlyos/26.9.0/","version":"26.9.0"},{"date":"2026-08-26","entries":[{"areas":["device-management"],"breaking":false,"description":"A display could run at the resolution of one connected months earlier, and a display added later wasn't set up to mirror the first.","title":"Each display runs at its own resolution, whenever it was connected","type":"fix","url":"https://www.screenly.io/releases/screenlyos/26.8.0/display-config-follows-the-screen/"},{"areas":["device-management"],"breaking":false,"description":"A ScreenlyOS disk image for Scala player hardware is available from support or sales, so a Scala player you already have can be reimaged to run Screenly.","title":"ScreenlyOS runs on Scala players","type":"release","url":"https://www.screenly.io/releases/screenlyos/26.8.0/screenlyos-on-scala-players/"},{"areas":["content-management"],"breaking":false,"description":"A player kept scheduling against its old timezone after the timezone was changed, until the player restarted.","title":"Changing a screen's timezone applies to scheduled content right away","type":"fix","url":"https://www.screenly.io/releases/screenlyos/26.8.0/timezone-changes-reach-scheduled-content/"},{"areas":["content-management"],"breaking":false,"description":"Players now download a content update in a smarter order, so a change shows up on the screen sooner and 1 large video no longer holds everything else back.","title":"Content changes reach screens sooner","type":"improvement","url":"https://www.screenly.io/releases/screenlyos/26.8.0/content-downloads-in-a-useful-order/"},{"areas":["monitoring"],"breaking":false,"description":"A player can keep a record of what actually played and for how long: proof for advertisers, a record for regulated environments, and a way to confirm content and schedules work as intended.","title":"Proof of play comes to ScreenlyOS","type":"release","url":"https://www.screenly.io/releases/screenlyos/26.8.0/proof-of-play-recording/"},{"areas":[],"breaking":false,"description":"Playback and stability fixes, from USB capture devices that now play to players that no longer restart in a loop or build up memory.","title":"Videos keep playing after one fails to load, and other fixes","type":"roundup","url":"https://www.screenly.io/releases/screenlyos/26.8.0/fixes-and-improvements/"}],"json":"https://www.screenly.io/releases/screenlyos/26.8.0/v1.json","product":"screenlyos","product_label":"ScreenlyOS","url":"https://www.screenly.io/releases/screenlyos/26.8.0/","version":"26.8.0"},{"date":"2026-07-08","entries":[{"areas":["content-management"],"breaking":false,"description":"A screen rotating through web pages used more memory on every loop until the player restarted or the screen went black, often after a few hours.","title":"Players showing web pages keep running instead of going black","type":"fix","url":"https://www.screenly.io/releases/screenlyos/26.7.0/web-content-memory-growth/"},{"areas":["content-management"],"breaking":false,"description":"After content was added to or replaced in a playlist, a player could keep showing the old content until it was restarted.","title":"New playlist content reaches the screen without a restart","type":"fix","url":"https://www.screenly.io/releases/screenlyos/26.7.0/playlist-content-appears-without-a-restart/"},{"areas":["monitoring"],"breaking":false,"description":"The System, Disk, and Network cards on a player's Diagnostics screen have larger titles, 1 line each for load and temperature, and clearer progress bars.","title":"The Diagnostics screen on the player is easier to read","type":"improvement","url":"https://www.screenly.io/releases/screenlyos/26.7.0/diagnostics-screen-refresh/"},{"areas":[],"breaking":false,"description":"Players report SD card errors and power and heat throttling, and connect to Screenly better when the service is busy.","title":"Players report more about their hardware health, and other improvements","type":"roundup","url":"https://www.screenly.io/releases/screenlyos/26.7.0/fixes-and-improvements/"}],"json":"https://www.screenly.io/releases/screenlyos/26.7.0/v1.json","product":"screenlyos","product_label":"ScreenlyOS","url":"https://www.screenly.io/releases/screenlyos/26.7.0/","version":"26.7.0"},{"date":"2026-06-19","entries":[{"areas":["device-management"],"breaking":false,"description":"A player can apply a resolution and rotation to 1 particular display, and keep it when that display moves to a different port.","title":"Players can keep a resolution and rotation for each display","type":"release","url":"https://www.screenly.io/releases/screenlyos/26.6.0/per-display-resolution-and-rotation/"},{"areas":["device-management"],"breaking":false,"description":"Changing a screen's audio output between HDMI and the 3.5mm jack in the dashboard now applies right away, without restarting the player.","title":"Switching the audio output takes effect without a reboot","type":"improvement","url":"https://www.screenly.io/releases/screenlyos/26.6.0/audio-output-applies-immediately/"},{"areas":["device-management"],"breaking":false,"description":"Selecting the 3.5mm jack as the audio output on a Screenly Player Max now sends sound to it, instead of to HDMI.","title":"The 3.5mm jack on Screenly Player Max plays sound","type":"fix","url":"https://www.screenly.io/releases/screenlyos/26.6.0/player-max-analog-audio/"},{"areas":["device-management"],"breaking":false,"description":"The setup screen showed a player's wired connection as connected whenever it had any network at all, including over Wi-Fi with no cable plugged in.","title":"The setup screen shows wired as connected only when the cable is","type":"fix","url":"https://www.screenly.io/releases/screenlyos/26.6.0/wired-status-on-the-setup-screen/"},{"areas":["device-management"],"breaking":false,"description":"A settings, help, or diagnostics screen left open on a player now closes by itself after 3 minutes, so the screen is back on its content without anyone walking over to it.","title":"Screens keep playing even when a settings screen is left open","type":"improvement","url":"https://www.screenly.io/releases/screenlyos/26.6.0/overlays-return-to-playback/"},{"areas":["content-management"],"breaking":false,"description":"A change to a playlist or a schedule could crash the player, or hold back the latest change for a whole item, depending on what the player was doing when the update arrived.","title":"Editing content on a live screen no longer crashes the player","type":"fix","url":"https://www.screenly.io/releases/screenlyos/26.6.0/content-updates-during-playback/"},{"areas":["device-management"],"breaking":false,"description":"A player could pick a resolution the display offered but the player's own graphics chip couldn't run, and the display settings it asked for didn't take effect.","title":"Players pick only resolutions they can run","type":"fix","url":"https://www.screenly.io/releases/screenlyos/26.6.0/display-modes-the-player-can-drive/"},{"areas":[],"breaking":false,"description":"Changing network settings cleans up the old connection, and the latest disk image has a download address that stays the same from release to release.","title":"Network changes no longer leave old connections behind, and other improvements","type":"roundup","url":"https://www.screenly.io/releases/screenlyos/26.6.0/fixes-and-improvements/"}],"json":"https://www.screenly.io/releases/screenlyos/26.6.0/v1.json","product":"screenlyos","product_label":"ScreenlyOS","url":"https://www.screenly.io/releases/screenlyos/26.6.0/","version":"26.6.0"},{"date":"2026-05-29","entries":[{"areas":["apps","developers"],"breaking":false,"description":"An Edge App that points at a remote page can read its own encrypted settings from its injected JavaScript as screenly_settings.","title":"Edge Apps can read their encrypted settings from injected JavaScript","type":"release","url":"https://www.screenly.io/releases/screenlyos/26.5.1/edge-app-secrets-in-injected-javascript/"},{"areas":["content-management","security"],"breaking":false,"description":"With \"Allow sending client certificate\" turned on, a player presents its own device certificate to the site, so a page behind mutual TLS can be shown on a screen.","title":"Players can show web pages that require a client certificate","type":"release","url":"https://www.screenly.io/releases/screenlyos/26.5.1/web-asset-client-certificates/"},{"areas":[],"breaking":false,"description":"Players report their hardware model and revision, so the dashboard can show which player a screen is, plus updated dependencies and system libraries.","title":"Players report which hardware they run on","type":"roundup","url":"https://www.screenly.io/releases/screenlyos/26.5.1/fixes-and-improvements/"}],"json":"https://www.screenly.io/releases/screenlyos/26.5.1/v1.json","product":"screenlyos","product_label":"ScreenlyOS","url":"https://www.screenly.io/releases/screenlyos/26.5.1/","version":"26.5.1"},{"date":"2026-05-13","entries":[{"areas":["security","device-management"],"breaking":false,"description":"A player can authenticate to an enterprise network with 802.1X PEAP over ethernet or Wi-Fi, and take a static IP address on a wired one.","title":"Players can join 802.1X enterprise networks, wired or Wi-Fi","type":"release","url":"https://www.screenly.io/releases/screenlyos/26.2.0/enterprise-network-authentication/"},{"areas":["content-management","security"],"breaking":false,"description":"Players join your Tailscale network, so a screen can show a web page or an API that only exists inside your network.","title":"Players can join your Tailscale network","type":"release","url":"https://www.screenly.io/releases/screenlyos/26.2.0/tailscale-on-a-player/"},{"areas":["device-management"],"breaking":true,"description":"A Raspberry Pi 4 connected to a 4K display now runs at 1080p, so video plays smoothly instead of stuttering.","title":"Raspberry Pi 4 players run at 1080p on a 4K display","type":"improvement","url":"https://www.screenly.io/releases/screenlyos/26.2.0/raspberry-pi-4-1080p/"},{"areas":[],"breaking":false,"description":"Work on how players connect to Screenly, and updated dependencies and system libraries.","title":"Improvements to how players connect to Screenly","type":"roundup","url":"https://www.screenly.io/releases/screenlyos/26.2.0/fixes-and-improvements/"}],"json":"https://www.screenly.io/releases/screenlyos/26.2.0/v1.json","product":"screenlyos","product_label":"ScreenlyOS","url":"https://www.screenly.io/releases/screenlyos/26.2.0/","version":"26.2.0"}],"title":"ScreenlyOS release notes","url":"https://www.screenly.io/releases/screenlyos/","version":1}