github RushB-fr/freekiosk v1.2.13
FreeKiosk v1.2.13 - MQTT & Home Assistant Integration

one month ago

Added

  • 📡 MQTT + Home Assistant Auto-Discovery: Native MQTT client with full HA integration
    • 27 auto-discovered entities in Home Assistant via MQTT Discovery protocol
    • 11 sensors: Battery level, brightness, WiFi SSID, WiFi signal, light sensor, IP address, app version, memory used, storage free, current URL, volume
    • 6 binary sensors: Screen on/off, screensaver active, battery charging, kiosk mode, device owner, motion detected
    • 2 number controls: Brightness (0-100%), volume (0-100%) — adjustable sliders in HA
    • 2 switches: Screen power (ON/OFF), screensaver (ON/OFF)
    • 5 buttons: Reload, wake, reboot, clear cache, lock
    • 1 text entity: Navigate URL — send a URL to load in the WebView
    • 20 additional commands via MQTT: TTS, toast, audio play/stop/beep, launch app, execute JS, URL rotation start/stop, restart UI
    • Push-based status: Periodic state publishing (configurable 5-3600 seconds, default 30s)
    • LWT (Last Will & Testament): Automatic availability tracking — HA shows device as unavailable on disconnect
    • Auto-reconnect: Handles WiFi drops and broker restarts with automatic re-publishing of all discovery configs
    • Always-on Motion Detection: Configurable option to run camera-based motion detection continuously (not just during screensaver)
    • Full command parity with REST API — both interfaces dispatch through the same command handler
    • Concurrent operation: MQTT and REST API can run simultaneously
    • Eclipse Paho MQTT v3.1.1 with secure password storage (Android Keychain)
    • Settings: Broker URL, port, username, password, client ID, base topic, discovery prefix, status interval, allow control
    • Connection status indicator in Settings UI
    • MQTT settings included in backup/restore
    • Full MQTT Documentation

Fixed

  • 🔊 No Audio in Lock Mode on Samsung/OneUI Devices: Audio streams were muted by Samsung when LOCK_TASK_FEATURE_NONE was set

    • LOCK_TASK_FEATURE_GLOBAL_ACTIONS is now included by default (matches Android's own default when setLockTaskFeatures() is never called), preventing Samsung/OneUI from muting audio in LOCK_TASK_MODE_LOCKED
    • Added AudioManager safety net: after entering lock task mode, setMasterVolumeMuted(false) is called followed by ADJUST_UNMUTE on all audio streams (MUSIC, NOTIFICATION, ALARM, RING)
    • Settings UI change: "Allow Power Menu" toggle renamed to "🔌 Block Power Menu" with inverted logic — power menu is now allowed by default, admin can explicitly block it if needed
    • No migration required: same storage key @kiosk_allow_power_button — existing user settings preserved; only new installs benefit from the new default
    • Applied consistently across KioskModule.kt, MainActivity.kt, and AppLauncherModule.kt
  • 🔧 Camera/Microphone Not Working in WebView on Fire OS (Echo Show, Fire tablets) (#63): Auto-grant WebView media/geolocation permissions in kiosk mode

    • OS-level permission via pm grant still required
    • WebView now receives runtime permissions automatically when kiosk mode is active

Don't miss a new freekiosk release

NewReleases is sending notifications on new releases.