Free Screenly Player with every Business or Enterprise yearly plan. How it works →

August 17, 2026

The web interface warns when a player's storage is failing or full

A memory card that is going bad rarely says so. The screen keeps playing what it already has, so nothing looks wrong from the front, while uploads, schedule changes and settings quietly stop sticking. From Anthias 2026.08.2, the player checks the storage it runs from and shows a banner at the top of every page of the web interface when something is wrong. Like the power warning, you can't dismiss it, and when both show, it sits under the power one.

The banner names the problem, because each one has a different fix:

  • "This player has run out of space": the storage is full. This one isn't a hardware fault, and the advice is to delete content you no longer need from the Schedule page. Videos are usually what filled it.
  • "This player has stopped saving changes": the storage has switched to read-only. The screen keeps playing, but anything you change is lost at the next restart.
  • "This player can't save anything": Anthias couldn't save a small test file, or read back something different from what it wrote.
  • "The memory card is returning errors": storage errors since the player last restarted.
  • "The memory card has recorded errors": errors the filesystem logged earlier, which it keeps across reboots. Saving still works.
  • "This player's storage is wearing out": built-in storage (eMMC) or an SSD reports that it's near the end of its rated life, for example with 80 percent or more of its rated writes used. A plain SD card doesn't report this.
  • "The drive is developing bad spots": an SSD or hard drive reports blocks that have gone bad.

The wording follows the hardware: "memory card" for an SD card, "built-in storage" for eMMC and "drive" for an SSD or hard drive. So does the advice. Every warning except a full disk says to take a backup from Settings while the storage can still be read, and to replace the card or drive. For an SD card it adds to buy an A1 or A2 card from a brand you recognize. Built-in eMMC is soldered to the board, so there the advice is to plan to replace the player.

System Info has a new storage card next to the "Disk" card, with the same verdict, plus the details for a support conversation: the card's maker, model and manufacture date, the filesystem's error count, how much has been written to it, the result of the last write test and, on drives that report it, SMART health, bad blocks and wear.

How it checks

An SD card has no health register, so Anthias combines what the kernel does expose: the ext4 error counters stored in the filesystem, a test file it writes and reads back, and the wear registers on eMMC. It reads the counters every minute, and on every page load, and writes the test file every 15 minutes. A full disk shows up through that test, so the "run out of space" banner can take up to 15 minutes to appear. All of this works from inside the containers, so balena installs get the warnings too.

On the x86, arm64 and Raspberry Pi 5 images, which can run from an SSD, the viewer also reads the drive's SMART data with smartctl once an hour. The viewer runs as an unprivileged user, so its image has a sudoers rule that lets that user run only smartctl --json -H -A -i on a device under /dev/.

In Anthias 2026.08.2, a memory card whose product name isn't valid UTF-8 stopped storage monitoring from starting at all. Anthias 2026.10.0 fixes that.

For developers

/api/v2/info has a new storage object. Check supported first, then branch on status, one of ok, wear, errors, full, failing or unknown. errors_count covers the life of the filesystem and survives reboots. errors_new and the write test fields reset when the player reboots. bin/collect_debug.sh adds a storage.txt to the bundle with block devices, mount flags, the ext4 error counters, card identity, SMART output and the kernel's storage errors.