github jxlarrea/kiosk-satellite 2026.8.49

3 hours ago

What's new in Kiosk Satellite 2026.8.49

A dashboard that loses its connection to Home Assistant now comes back on its own, HA kiosk mode is the app's own and reaches Home Assistant pages shown outside the dashboard, and the kiosk-mode custom resource is no longer part of any of it.

Fix: a dashboard that lost its connection recovers itself

  • A dashboard whose connection to Home Assistant died no longer sits on the "Connection lost. Reconnecting..." screen until someone walks up to the tablet (#228). One report had a panel stuck there for seven hours, behind a screensaver that looked perfectly normal.
  • Every recovery the app had was triggered by something happening: the network coming back, the app returning from the background, a wake word about to need the connection. A wall panel that is never backgrounded, on a network that never drops, produces none of those, so a connection that died for its own reasons had nothing at all coming for it.
  • Home Assistant does not always retry on its own either. It holds off reconnecting for as long as it believes the page is in the background, so a connection that drops at the wrong moment is never retried at all, with no error and nothing pending.
  • The dashboard's connection is now checked every minute, and one that has been down for three checks in a row is released and reconnected. The app also hears the connection close as it happens, so a dashboard that is not allowed to reconnect is usually back about ten seconds later.
  • A reload is the last resort if that does not take. It follows the "Auto-reload on error" setting and happens at most once every fifteen minutes, so a tablet left running while Home Assistant is down does not reload all night.

Changed: HA kiosk mode is the app's own

  • HA kiosk mode now hides the Home Assistant header and sidebar entirely on its own, and no longer has anything to do with the kiosk-mode plugin.
  • Handing that job to the resource carried a cost that only showed up on a wall tablet: it receives every entity change in your instance to decide what its own options apply to, and Home Assistant disconnects a client that falls behind reading a stream that size. On a tablet left alone, that reads as a dashboard which quietly stopped updating.
  • The setting is now a plain switch. The Off, Auto, Plugin and CSS choice is gone, and a device that had any of the three on comes back with kiosk mode on. In Home Assistant the "HA kiosk method" dropdown disappears and the "HA kiosk mode" switch stays.
  • Hiding the header and hiding the sidebar remain separate choices, and both apply the moment they are flipped, with no page reload.
  • A hidden sidebar now stays hidden. The edge swipe and the menu button both opened it back up, which on a wall panel is a stray thumb away from leaving the sidebar sitting over the dashboard.

Improved: the screensaver no longer tells the page it went away

  • Pausing the dashboard under the screensaver no longer reports the page as being in the background. Pausing works by hiding the dashboard's view, and the browser reports that exactly as it reports the app being sent behind another app, so web apps tore their session down over an optimization they could not see: Voice Satellite released the microphone and rebuilt its wake word on every screensaver, and Home Assistant's own background throttling applied under it.
  • The page now keeps being told it is visible for as long as the pause is the app's own doing, and hears nothing when the screensaver comes and goes. Being genuinely in the background, behind another app, still reaches the page as before.

Improved: the WebSocket filter says what it cannot reduce

  • The filter's telemetry now says when something else on the page is receiving every entity change on its own, in the settings and in the remote admin alike. Some cards subscribe to the whole entity stream separately and sort it out in the browser, which the filter cannot see or reduce, and that stream is heavy enough that Home Assistant will disconnect a tablet that falls behind reading it.
  • Refreshing the page after the filter is lifted now goes out in batches instead of one piece. On a large instance that was a single burst of every entity in the system, and for as long as the browser spent rebuilding from it the page stopped reading its connection.

Don't miss a new kiosk-satellite release

NewReleases is sending notifications on new releases.