github jxlarrea/kiosk-satellite 2026.9.46

3 hours ago

What's New in Kiosk Satellite 2026.9.46

This release lets plugins put a health tile on the Remote Admin Overview, adds a Restart device action for device owners and Shizuku users, stops a flapping light sensor from flooding the Home Assistant recorder and makes Remote Admin load with a quarter of the bytes.

New Feature: Plugin Status Tiles

  • Status Tiles on the Overview: SDK 1 gains publishStatusTile and removeStatusTile, so a plugin that knows something about the kiosk's health can say it where people look for it, next to Home Assistant, Voice Satellite, ESPHome, Media Player, Service and App Version. A tile is a title, a one-line state and a dot in the same green, amber, red and muted vocabulary the built-in tiles use. Plugin tiles follow the built-in six, carry the plugin's name under the state line so they never read as a claim the kiosk makes and open the plugin's own page. Each plugin may hold two tiles and eight changes a second. Tiles leave with their plugin: disabling or uninstalling it, or turning Plugin Manager off, removes them. The remote API gains getPluginStatusTiles. Hello World demonstrates it with a Status tile demo group and the status tile guide covers the API. Addresses #526.

Added: Restart Device

  • Restart Device: A Restart Device entry in the kiosk drawer, a matching tile on the Remote Admin Overview and a Restart device ESPHome button reboot the whole device, not just the app. Android lets no ordinary app do that, so all three appear only where the restart can land: on a kiosk provisioned as the device owner, or with a granted Shizuku connection. The drawer entry and the tile ask for confirmation first. The ESPHome button follows the Shizuku connection, so a grant made later lists it and a Shizuku that stopped removes it. A Shizuku started over ADB does not survive the reboot. The remote API gains rebootDevice and getDeviceRebootSupport. The ESPHome, Shizuku and kiosk guides describe the routes. Addresses #528.

Fixed

  • Flapping Light Sensor Flooding the Recorder: Some panels ship a light sensor driver that alternates between two far-apart values several times a second with nothing in the room changing. The native damper cannot tell that from a real change, so the Ambient light entity wrote a recorder row every 2 seconds all day. The entity now sits behind a token bucket: a real change, including the settled value the damper sends right after it, still reaches Home Assistant at once, while a sensor that keeps flapping is held to one update every 30 seconds carrying its latest reading. Adaptive brightness reads the sensor directly and is not affected. Fixes #521.

Changed

  • Home Assistant Tile Says Validated: The flag behind the Remote Admin Overview tile records whether this run's connection check passed. It never drops when Home Assistant later goes away, so a green Connected dot could sit under a dashboard pane reporting an outage. The tile and its Needs attention card now describe what the flag actually means: Validated, or Not validated while the kiosk retries the check every 30 seconds. Addresses #525.
  • Remote Admin Loads Far Fewer Bytes: The admin's stylesheet and modules are now minified when the app is built and the embedded server serves the page and every file gzipped to any browser that accepts it. The megabyte of readable source a first visit, or the first visit after an update, used to download is now about a quarter of that on the wire and the browser parses less. The kiosk compresses the bundle once, off the UI thread, when the admin is first opened, so no request costs the panel any compression work. The readable sources moved to app/remote-ui and the remote API guide describes the build step. Addresses #530.

Don't miss a new kiosk-satellite release

NewReleases is sending notifications on new releases.