-
Notifications
You must be signed in to change notification settings - Fork 30
features and modes
github-actions[bot] edited this page Mar 30, 2026
·
1 revision
Understanding FreeKiosk's display modes and capabilities
Docs Home • Installation • Integrations
Tip
Choose your operational mode first, then proceed to Installation and Integrations.
Display any website in fullscreen kiosk mode.
Capabilities:
- Any HTTPS/HTTP URL
- SSL support (including self-signed certificates)
- Fullscreen immersive experience
- Perfect for Home Assistant dashboards
Best for:
- Home Assistant dashboards
- Information displays
- Web-based applications
- Digital signage
- Corporate dashboards
Lock the tablet to a specific Android application.
Capabilities:
- Lock to any installed Android app
- Auto-relaunch on exit/crash
- Test mode for safe deployment
- 5-tap gesture + PIN for settings access
Best for:
- Cloud gaming (Steam Link, Xbox Cloud Gaming)
- Digital signage apps
- Corporate applications
- Media players
- Custom Android apps
Multi-URL tile grid for quick navigation between multiple dashboards.
Capabilities:
- Configurable tile grid
- One-tap navigation between URLs
- Auto-return to dashboard after inactivity
- Custom names and URLs for each tile
Best for:
- Multi-dashboard environments
- Resource collections
- Quick access portals
- Control centers
- Multiple Home Assistant views
Enhanced media playback and multi-app support.
Capabilities:
- Native media player integration
- Multi-app switching
- Time-based content scheduling
- Performance monitoring
Best for:
- Video playback
- Audio streaming
- Media galleries
- Scheduled content rotation
Note
See Roadmap and Changelog for detailed release information.
| Level | Description | Use Case |
|---|---|---|
| Basic | WebView kiosk with minimal restrictions | Testing, personal use |
| Standard | External app with navigation blocking | Single-app deployments |
| Enterprise | Device Owner full lockdown | Production, public kiosks |
- Device Owner Mode - Complete device control
- Navigation Blocking - Disable home, recent apps, settings
- Overlay Prevention - Block system dialogs and notifications
- Watchdog Service - Automatic recovery and monitoring
- PIN Protection - Secure settings access
- Screen Pinning - Task locking policies
| Method | Tools | Scale | Guide |
|---|---|---|---|
| Manual | Touch interface | Single device | Installation |
| ADB Script | Command line | Small batches | ADB Config |
| MDM Integration | Enterprise tools | Large fleets | Coming soon |
- ADB Provisioning - Headless scripted deployment
- Configuration Backup - Save/restore complete settings
- Auto-launch - Boot-time automatic startup
- Keep-alive - Continuous monitoring and recovery
- Remote Control - REST API and MQTT automation
- Mass Deployment - Configure multiple devices via scripts
| Use Case | Recommended Mode | Setup Guide |
|---|---|---|
| Home Assistant Dashboard | WebView Mode | Installation |
| Cloud Gaming Kiosk | External App + Device Owner | ADB Configuration |
| Corporate Kiosk | External App + Device Owner | Installation |
| Multi-Dashboard | Dashboard Mode | Installation |
| Media Display | Media Mode | Installation |
| Custom Android App | External App Mode | ADB Configuration |
Home Assistant Dashboard:
adb shell am start -n com.freekiosk/.MainActivity \
--es url "https://homeassistant.local:8123" \
--es pin "1234"Cloud Gaming Kiosk:
adb shell am start -n com.freekiosk/.MainActivity \
--es lock_package "com.valvesoftware.steamlink" \
--es pin "1234" \
--es test_mode "false"Corporate Information Display:
adb shell am start -n com.freekiosk/.MainActivity \
--es url "https://dashboard.company.com" \
--es pin "0000" \
--es rest_api_enabled "true"- Installation: Complete setup guide
- Integrations: REST API and MQTT
- ADB Provisioning: Headless deployment
- FAQ: Common questions