github jxlarrea/kiosk-satellite 2026.10.43

4 hours ago

What's new in Kiosk Satellite 2026.10.43

Kiosk Satellite now has its own custom echo canceller. The stop word now gets through a long answer and you can talk over a realtime answer, which the old canceller rarely managed. This release also lets you pick and order the drawer menu's entries, shows album art on kiosks without internet access and adds Home Assistant's own pages to the dashboard pickers.

New Feature: A new echo canceller

  • Kiosk Satellite's own echo canceller. Kiosk Satellite now removes its own sounds from the microphone with its own canceller instead of WebRTC's. A linear filter takes out what it can predict from what the kiosk plays. A small neural network then removes the rest while keeping your voice. It was trained on recordings of eleven devices playing through their own speakers and on realtime conversations recorded on several real devices. See Microphone.
  • The stop word and barge-in work when the speaker is close to the microphone. When the speaker sits in the same case as the microphone, most of what comes back is distortion a plain filter cannot predict. The new canceller handles it, so the stop word gets through a long answer and you can interrupt a realtime answer.
  • Stereo speakers are cancelled as two paths. The canceller takes the kiosk's playback in stereo, so a device with a speaker pair gets each speaker removed on its own.
  • Devices with their own canceller are left alone. The mask only works while the microphone during playback stands clearly above the level it rests at with nothing playing. On a device whose microphone path already cancels its own echo, such as the Portal Go or an Echo Show, it never does, so the mask stands aside and the microphone goes through untouched instead of losing speech to a second canceller. The moment echo shows up again, the mask comes back.
  • Realtime conversations stay on track. The first answer after the app starts no longer cuts itself off and replies to its own words while the canceller learns the room. With music playing underneath, an answer is open to interruption within about a second instead of after 4.
  • No extra CPU. The canceller uses no more CPU than the old one. The app no longer ships the WebRTC audio processing and Abseil libraries.

Improvements

  • Choose and arrange the drawer menu (#1194). Drawer menu items under Settings > Device > User Interface opens a picker with every entry the menu can show, from Dashboard and Settings to Clear web cache, Restart Device, Exit Application, the theme switcher and plugin actions. Uncheck what you do not want and drag the rest into the order you like. It works with Kiosk Mode on or off. In a locked kiosk's quick actions menu, Allowed Actions still decides what is offered. Settings can be hidden only while remote admin is on, so there is always a way back in. The Show in the kiosk menu switch on each feature's page is now a row that opens this setting, and the update keeps the entries those switches had on. The remote admin has the same picker. See Drawer Menu.
  • Album art on kiosks without internet access (#1196). The local Sendspin player now shows the cover Music Assistant sends over the Sendspin connection, sized to the kiosk's screen, instead of downloading it from its address. A kiosk that cannot reach the internet now gets the art for SiriusXM, Pandora, Spotify and other services that keep their covers on their own servers, in Now Playing and the media notification. The cover's address is only loaded for a track the server sends no image for.
  • Home Assistant's own pages in the dashboard pickers (#1180). Energy, Activity, History, Media, To-do lists and the pages integrations add now show up in the dashboard pickers after the apps, on the device and in the remote admin. Pick one as the default dashboard, add it to the dashboard view rotation, use it as the screensaver's dashboard or a gesture's target, or select it from the ESPHome Dashboard view select. Plugins get them too, and getDashboards marks them with builtIn. Settings, Developer tools and other pages only administrators can open are left out. See Custom Pages.
  • Voice links for dashboard buttons (#1179). ks://voice starts a voice command, ks://voice/stop ends it or dismisses a ringing timer and ks://voice/mute mutes or unmutes the wake word. Point a button's tap action at one to get a push to talk or mute button that works on every kiosk, with no entity IDs in the dashboard. See Dashboard Links.
  • The Home Assistant Dashboard screensaver can hide the header and sidebar on its own (#1183). Turn on HA kiosk mode override in the Home Assistant Dashboard screensaver group to reveal its own Hide the header and Hide the sidebar switches. They apply only while the screensaver is up, so the dashboard keeps its header and sidebar for moving between views and the screensaver still fills the screen. With the override off the screensaver follows HA kiosk mode as before.
  • Hide the Music Library's source picker (#1201). Turn off Show source selection in the Music Library's User Interface group to keep the library on the source set in Settings, so nobody at the kiosk can switch from Music Assistant to Home Assistant or Sonos. The source can still be changed in Settings and in the remote admin. See Music Library.
  • Keep the Now Playing close button with double tap (#1203). Turn on Always show close button in Now Playing's User Interface group to keep the close button while Double tap to dismiss is on, so anyone who does not know the gesture can still close the view. See Sendspin.

Fixes

  • Voice Satellite animations no longer stutter on slow kiosks. While a full screen turn was up, the dashboard's WebView stayed in the frame under the opaque overlay. Every frame then went through an image reader and a new bitmap on the Java side, which set off a garbage collection every few frames that blocked the main thread for up to a few hundred milliseconds. The dashboard now leaves the frame while an opaque overlay covers it and comes back the moment the overlay starts to fade out. On an Echo Show 8 the answer phase went from one late frame in six to none, with the overlay's CPU cost down by two thirds. Docked conversations and plugin skins are unchanged.
  • The DLNA renderer comes back after a reboot (#1190). If the app started before Wi-Fi had connected, the renderer had no address to serve on, so it stopped and stayed down until it was turned off and on again. Scheduled overnight reboots did this often. The renderer now starts as soon as the network comes up and restarts if the device's address changes.
  • The calendar's Schedule shows the rest of today (#1181). The Today panel now scrolls as a whole, so every event under Later today can be reached. Before, the date, the weather and Up next could fill the panel and leave Later today empty. Short screens such as the Echo Show 5 now list Later today too. The date reads on one line, such as Tuesday 27, since the header already names the month.
  • The weather panel shows the condition icon (#1182). When you ask for the weather, the icon next to the temperature now shows up. Voice Satellite LLM Tools serves its icons as SVG images, which the panel could not draw.
  • Touches on Now Playing no longer log a rotation pause. With dashboard view rotation on, every press on Now Playing or any other screensaver logged "rotation paused by touch" and restarted the pause timer, even though rotation is already frozen while the screensaver is up. Those touches are ignored now. The touch that dismisses the screensaver still holds rotation for the pause window.

Don't miss a new kiosk-satellite release

NewReleases is sending notifications on new releases.