Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

Kiosk Satellite for Home Assistant

Stars Downloads version Build

Buy Me A Coffee

Transform any Android device into a beautiful, dedicated Home Assistant kiosk. Built specifically for Home Assistant from the ground up, Kiosk Satellite gives you a smooth, native dashboard experience. Want voice control? Pair it with Voice Satellite for a fully hands-free setup. Kiosk Satellite is completely free and open source.

Kiosk Satellite

Main Features

Guided setup: Get up and running easily. A five-step wizard connects to your Home Assistant instance, lets you pick a dashboard, detects Voice Satellite automatically, and only asks for the Android permissions it actually needs. You can run the setup directly on the device or from a browser on your computer.

Native Voice Satellite: Your kiosk gets its own assist_satellite entity, and the app's built-in engine takes over wake-word detection. It quietly listens in the background even with the screen off using a fraction of the CPU a web browser requires. There's no extra configuration needed; it inherits everything directly.

Voice Satellite

Fully unlocked plain HTTP: No certificates or reverse proxies required. A loopback proxy inside the app turns an http:// dashboard into a genuine secure context automatically, meaning your microphone and other HTTPS-only features work right out of the box.

Smooth performance on older devices: Optional optimizations filter Home Assistant's state stream to only update the entities currently visible on your screen, turning constant stutter into smooth scrolling. It also pauses rendering when the screensaver is on, dropping CPU/GPU usage dramatically. Voice and connection keep running, and anything it can't filter safely is left alone, so nothing breaks.

Measured against Fully Kiosk on a Galaxy Tab S8+ running the same dashboard

Kiosk lockdown: Keep your setup secure. Features include an exit PIN, blocked hardware buttons (back/volume/home), a status-bar shield, instant re-wake on the power button, and lock-task support for fully provisioned devices.

Custom gestures: Keep your interface clean by mapping invisible gestures to configurable actions. Use corner taps, multi-finger holds, knock-codes, claps (heard through the mic, no Voice Satellite required), or even hand signals to the camera. Use them to jump to views, run HA scripts, or open other apps without guests ever knowing.

Synchronized media player: Use your device as a perfectly synced Sendspin speaker for Music Assistant. Alternatively, let the kiosk follow another player (like any HA media player or Sonos speaker) to display album artwork, lyrics, and volume controls on screen.

Now Playing

Dynamic screensavers: Choose from dim, black, clock, local photos, or a stunning Immich photo frame with transition effects (slide, zoom, Ken Burns) and metadata overlays. Includes support for waking up via motion, face, or presence detection.

Remote administration: Manage everything from your computer. The embedded web admin (http://<device-ip>:2324) mirrors your settings, shows a live screenshot, provides a web console for logs, and handles configuration backups.

Dashboard view rotation: Set your kiosk to automatically cycle through specific dashboard views on an endless loop, customizing how many seconds each view stays on screen.

DLNA renderer: Push videos, images, and live cameras directly to the full screen using media_player.play_media, perfect for HA automations.

Dashboard

Native ESPHome integration: Home Assistant discovers the kiosk automatically. No broker, no YAML. You get a massive catalog of entities right out of the box: screen light, volume sliders, screensaver switches, a live camera stream, and full diagnostics.

Built-in Bluetooth proxy: Acting just like an ESP32, the ESPHome connection relays BLE advertisements and active connections for your BTHome sensors, locks, and buttons. Multiple kiosks can even form a Bluetooth mesh network.

Everyday kiosk conveniences: Pull-to-refresh, boot on start, keep-screen-awake, adaptive brightness using the device's light sensor, scheduled themes, custom JavaScript injection, and self-signed certificate support.

Advanced camera streams: Import streams via Go2RTC or manually add WebRTC, MSE, HLS, or MJPEG cameras. You can arrange up to four feeds into responsive camera views accessible from the device, Remote Admin, or Home Assistant.

Cameras

Kiosk Satellite + Voice Satellite

Voice Satellite turns a Home Assistant dashboard into a full hands-free voice assistant with a wake word, timers, and announcements. However, because it relies on the browser, it hits a wall on dedicated devices: browsers can't listen while the screen is off, their wake-word engines are resource-heavy, and standard HTTP setups block microphone access entirely.

Kiosk Satellite shatters those limits. The app runs Voice Satellite's wake-word models natively and transparently. Voice Satellite realizes it’s inside Kiosk Satellite and smoothly hands over the detection work. You still configure everything as usual in Voice Satellite; the kiosk just makes it always-on, highly efficient, and independent of the screen state.

Voice Satellite Settings

This massive performance boost is one of the best reasons to use Kiosk Satellite. By running native inference on the CPU, the wake-word pipeline operates incredibly fast, saving your device's battery and CPU while keeping the dashboard buttery smooth. It’s so efficient that vsWakeWord can comfortably run on something as low-powered as an Amazon Echo Show 5.

Plus, you aren't forced to keep the dashboard open. With background listening enabled, the wake word continues working even if the screen is off or you have another app open. Just say the word, and the kiosk instantly brings the dashboard front and center to answer.

CapabilityVoice Satellite aloneKiosk Satellite + Voice Satellite
Wake word with the dashboard on screen
Wake word with the screen off
Wake word with another app in front✅ Returns to the dashboard on trigger
Mic access in non-HTTPS HA instances
Detection cost⚠️ Browser based, heavy on the device✅ Native CPU inference, 10x-30x faster
Wake word on low-end hardware⚠️ Struggles✅ CPU only, no GPU needed
Survives reboots⚠️ Manual relaunch✅ Start on boot

While you don't have to use Voice Satellite (Kiosk Satellite is a fantastic HA dashboard all on its own), putting them together essentially gives you a custom-built smart display and voice hub.

Installation

Kiosk Satellite is completely free and distributed as an APK for sideloading:

  1. Download the latest APK from the releases page.
  2. Copy it to your Android device (or download it directly there) and open it. If Android prompts you, allow installation from unknown sources.
  3. Open the app and follow the simple setup wizard.

Pro Tip: In the first step (naming the device), enable Remote Administration. You can then finish the rest of the setup from your computer's browser.

Requirements: Android 7.0 or newer, a reachable Home Assistant instance, and a long-lived access token (found in HA Profile → Security → Long-lived access tokens). For voice features, make sure to install Voice Satellite from the default HACS repository.

Documentation

  • JavaScript API: Info on window.kioskSatellite and the wake-word handoff protocol.
  • Remote API: Details on the REST + WebSocket interface.
  • ESPHome: Everything you need to know about native HA entities and Bluetooth proxying via the ESPHome API.
  • Camera streams: Using Go2RTC import, setting up camera views, and HA controls.
  • Screen: Keep-awake settings, default brightness, and adaptive brightness logic.
  • Screensavers: Modes, schedules, brightness, motion waking, and triggers.
  • Device camera: Utilizing the tablet's physical camera for still images and motion detection in HA.
  • Media Player: The floating player, Now Playing views, Sendspin integration, and following HA/Sonos players.
  • DLNA: Pushing media to the kiosk from HA or DLNA apps.
  • Immich: Setting up the Immich photo-frame screensaver, metadata overlays, and local caching.
  • At a Glance: Adding a row of entity states directly onto your screensaver.
  • Kiosk and Lockdown: Understanding Kiosk Mode protections, permissions, and device owner provisioning.
  • Home Launcher: Setting Kiosk Satellite as the device's home screen.
  • Gestures: Mapping touch and camera gestures to custom actions.
  • Microphone: Capture modes and AGC for devices with quiet microphones.
  • Optimizations: Performance switches and connection tweaks for older hardware.
  • Permissions: A detailed breakdown of every Android permission the app requests, adb grant commands, and background service details.
  • Updates: How updates work, required permissions, and enabling hands-free updates.

Device Specific Guides

  • Meta Portal: Running Kiosk Satellite on a Meta Portal and fixing Person detector permissions.
  • Amazon Fire tablets: Navigating Fire OS quirks, clearing lock screens, and useful adb tweaks.

License

Kiosk Satellite is free for personal, non-commercial use, licensed under CC BY-NC-ND 4.0. You are welcome to use and share it, but commercial use and derivative works are not permitted. See LICENSE for full details.

Acknowledgements

Kiosk Satellite stands on the shoulders of several amazing open-source projects. A massive thank you to:

And finally, thank you to every package author in our pubspec.yaml whose hard work this app quietly depends on.

关于 About

Turn any Android device into a beautiful, dedicated Home Assistant kiosk. Purpose-built for Home Assistant from the ground up.
androidapkbluetooth-low-energybluetooth-proxycameradlnaesphomehome-assistanthome-automationhomeassistantiotkioskmqttmusic-assistantsendspinvoicevoice-assistantvoice-controlvoice-satellitewebrtc

语言 Languages

Dart71.0%
Kotlin15.3%
JavaScript10.3%
HTML2.8%
C++0.5%
Python0.1%
Ruby0.0%
CMake0.0%
Swift0.0%
Objective-C0.0%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
1271
Total Commits
峰值: 238次/周
Less
More

核心贡献者 Contributors