Settings in 0.9.7
Deze inhoud is nog niet vertaald.
These are the settings on the Configure page of version 0.9.7, in the order the app shows them. Settings marked Advanced are hidden while the page is set to Basic.
Identity
Section titled “Identity”Panel ID
Basic · panel_id
Stable id used in entity IDs and MQTT topics (lowercase, digits, underscores; 63 characters maximum).
Panel Assistant fills this in on first start, before it connects to anything, so a panel always has one:
- when the Android device name is set and is not just the model, the ID is made from that name;
- otherwise it is the model followed by a short suffix that keeps two panels of the same model apart.
Whatever you type is converted on save: letters become lowercase, any run of other characters becomes one underscore, and leading or trailing underscores are dropped.
| You type | Stored as |
|---|---|
Front Door |
front_door |
Hall - Upstairs |
hall_upstairs |
garage.wall 2 |
garage_wall_2 |
The ID names the panel in MQTT topics and entity IDs, in the panel list other panels show in their header switcher, and as the host name on every line the panel ships to a log collector. For the name people see, use Friendly name.
The ID is never copied when settings are applied to another panel, because two panels must not share it.
Related: Move a panel from MQTT
Friendly name
Basic · friendly_name
HA device display name.
This is the name shown:
- on the panel’s device card in Home Assistant, whether the panel is connected through Panel Assistant or through MQTT;
- for this panel in other panels’ header switcher.
Left blank, it uses the Android device name, which is also what the Home Assistant Companion app uses by default, and falls back to the model when the device has no name. Unlike Panel ID it is only a label, so you can rename it at any time without affecting entity IDs. It is never copied when settings are applied to another panel.
Manufacturer
Advanced · manufacturer
HA device-card manufacturer override (blank = profile/auto).
The manufacturer on the Home Assistant device card is the first of these that has a value:
- this setting, used exactly as you type it;
- the manufacturer named in the panel’s device profile;
- the manufacturer Android reports.
Fill it in only when the automatic value is wrong or unhelpful, for example a rebadged panel that reports the chip or board maker rather than the brand on the box. It changes only the label; it does not change which device profile or hardware features the panel uses. It is treated as specific to this panel, so it is not copied when settings are applied to other panels by default. See also Model.
Related: Runtime panel profiles
Model
Advanced · model
HA device-card model override (blank = profile/auto).
The model on the Home Assistant device card is the first of these that has a value:
- this setting, used exactly as you type it, with nothing added;
- the model named in the panel’s device profile;
- the model, device or product name Android reports.
| Connection | Automatic value (2 or 3) is shown as |
|---|---|
| MQTT | the name followed by (ha-paneld), so the panel can be told apart from another integration that manages the same hardware |
| Panel Assistant | the name as it is, without that marker |
Like Manufacturer, this changes only the label: device profile matching and hardware features are unaffected.
Related: Runtime panel profiles
Area in Home Assistant
Advanced · ha_area
Where this panel lives, by Home Assistant area name. This can only be changed in ha-paneld if your HA user has admin permissions, otherwise change it on your device in HA.
The list offers the areas that exist in your Home Assistant. Leaving it blank means “follow Home Assistant”.
- When the device already has an area in Home Assistant, Panel Assistant adopts it here, even if you never open this setting.
- When the device has no area, the one you choose here is written to it, which needs a Home Assistant user with admin rights. Without admin rights it stays a request, and it is also suggested when the device is first registered.
- When you choose an area that differs from the device’s area in Home Assistant, Panel Assistant keeps your choice rather than reverting it. Choosing the same area as Home Assistant ends the override.
The change applies without restarting anything.
Broker URL
Basic · mqtt_broker
Blank auto-discovers HA over mDNS.
Left blank, the panel looks for Home Assistant on the local network over mDNS and connects to tcp://<address>:1883 on the Home Assistant instance that has that port open, which suits the Mosquitto add-on. Enter a URL when your broker runs elsewhere or on another port.
| Scheme | Connection | Port when none is given |
|---|---|---|
tcp://, mqtt://, or no scheme |
unencrypted | 1883 |
ssl://, mqtts://, tls:// |
TLS | 8883 |
Examples: homeassistant.local, mqtts://192.168.x.x, tcp://[fd00::10]:1883 (IPv6 addresses go in square brackets).
WebSocket brokers, paths and user names inside the URL are not accepted; put credentials in Username and Password. How the host name is resolved is set by address family.
Related: Move a panel from MQTT
Username
Basic · mqtt_user
Credential for this panel.
The user name the panel gives the broker, together with Password. With the Mosquitto add-on this is usually a Home Assistant user you created for the panel.
- Clearing the user name also clears the stored password, so the panel connects without credentials.
- If the broker rejects the pair, the panel status shows that authentication was rejected.
The value is treated as specific to this panel and is not copied to other panels by default.
Related: Move a panel from MQTT
Password
Basic · mqtt_password
Blank on save keeps the current password.
The password for Username. The form never shows the stored password, so the field is empty each time you open it.
| When you save with | The stored password |
|---|---|
| the field empty | is kept |
| a new password | is replaced |
| the user name cleared | is cleared as well |
| a changed broker URL and the field empty, in Hardened security mode | is discarded |
Like the user name, it is not copied to other panels by default.
Related: Move a panel from MQTT
MQTT + Home Assistant WebSocket address family
Advanced · mqtt_address_family
Applies to the MQTT broker connection and the panel's Home Assistant WebSocket connections; plain HTTPS reads always try every published address. Automatic learns a working route and falls back between IPv6 and IPv4. Prefer IPv4 keeps IPv6 as a fallback; Force IPv4 rejects endpoints with no IPv4 address.
This only matters when a host name, such as your broker or homeassistant.local, resolves to both IPv6 and IPv4 addresses.
| Choice | What happens | When to pick it |
|---|---|---|
| Automatic (default) | Tries IPv6 first, switches family when a connection fails, and remembers the family that worked for next time. | Almost always. |
| Prefer IPv4 | Tries IPv4 first, still falls back to IPv6. | IPv6 is advertised on your network but does not reliably reach the broker or Home Assistant, and the panel keeps reconnecting. |
| Force IPv4 | Never uses IPv6. | As above, when IPv6 must be avoided entirely. |
The setting is read at each new connection attempt, so it takes effect the next time the panel connects. Log shipping does not use it; it always tries IPv4 first on its own.
Behaviour
Section titled “Behaviour”Auto-sleep presence source
Basic · auto_sleep_source
Use the panel’s calibrated proximity sensor, or choose Home Assistant Area devices. If the selected source is unavailable, automatic sleep pauses and touch remains available.
| Choice | What watches for people | When to pick it |
|---|---|---|
| Panel (default for new installations) | The panel’s own proximity sensor, once the panel has learned it | The panel has a usable proximity sensor and faces the people who use it |
| Home Assistant | The presence devices in the Home Assistant Area this panel is assigned to; the Configure page lists them so you can include or leave out each one | The room already has a better presence sensor, or the panel has no usable proximity sensor |
With Home Assistant, the panel checks its Area assignment and shows the Area it found. Until the panel has an Area, Auto sleep cannot be switched on with this source.
An installation that already had auto sleep configured before this choice existed keeps the Home Assistant behaviour it had. A change takes effect straight away and restarts the auto sleep decision with the new source.
Related: Adaptive proximity and wake on wave
Auto sleep
Basic · Default off · auto_sleep
Automatically wake the panel when activity is detected and switch the screen off after the learned delay. Manual screen control remains separate.
Navbar mode
Advanced · navbar_mode
Soft on-screen navigation bar for panels with no native navbar. Native leaves navigation to the panel's own Android bar and draws nothing. Note that hiding the Android system bars, from the built-in renderer's fullscreen setting or the Android dashboard lock, still hides a native bar.
Wake on wave
Basic · Default off · wake_on_wave
Wake after a calibrated clear-to-near-to-clear wave. Set up proximity on the panel; touch-to-wake remains available.
Lock Android to dashboard (experimental)
Advanced · Default off · kiosk_lock
Root-only casual-use lock. Hides Android system bars and returns to the selected dashboard within about 3 seconds when another app or Recents opens. It does not hide Home Assistant navigation. Release it here, from Home Assistant, through adb, with 7 rapid top-left taps, or during the 60-second unlocked window after reboot.
App watchdog
Advanced · Default off · watchdog_enabled
Self-heal the dashboard app: relaunch if it dies, return if backgrounded too long.
When the watchdog is on, Panel Assistant checks the dashboard app every 30 seconds and acts on two situations. It never acts while the dashboard is in front.
| Situation | What the watchdog does |
|---|---|
| The app’s process is dead on two checks in a row | Starts the app again |
| The app is running but has not been in front for five minutes, for example because someone opened Settings and walked away | Brings the dashboard back to the front |
| The app keeps crashing as soon as it starts | Backs off instead of relaunching over and over, and shows a health warning; this clears when the dashboard comes back to the front |
The watchdog needs root or the Panel Assistant helper to see the dashboard’s state, and does nothing on panels with neither.
Apps the lock allows
Advanced · kiosk_companion_packages
Android package names, separated by commas, that the dashboard lock leaves in front instead of returning to the dashboard. Use it to reach a companion app's own screens. Needs root.
While Lock Android to dashboard is on, it brings the dashboard back whenever another app is in front. An app listed here is allowed to stay in front, for example the settings screens of a companion app that the dashboard opens. Enter full Android package names such as com.example.app, separated by commas; a value that is not a valid package name is rejected when you save. Up to 512 characters fit.
The list only matters while the lock is on. A change is in force at the lock’s next check, within about three seconds, with no restart.
Touch sound
Advanced · Default on · touch_sound
Audible tap feedback (system touch sounds).
Silence boot chime
Advanced · silence_boot_chime
Mute the firmware startup chime.
Some panel firmware plays a chime at startup through the ring and notification volumes. Turning this on records those volumes, then silences them, so the panel restarts quietly. It is on by default. Turning it off restores exactly the volumes recorded when it was turned on. If there is no recorded volume, for example after upgrading from an older version that did not record one, the panel stays silent rather than guessing a level.
Because the chime and ring or notification sounds share the same volume on these panels, leave this on unless you need those sounds from the panel.
Prevent idle dim
Advanced · Default on · prevent_idle_dim
Stop the vendor firmware dimming the backlight at the screen-off timeout.
Some panel firmware turns the backlight right down when Android’s screen-off timeout passes, even while the screen is meant to stay on, so the panel goes very dim some time after the last touch.
| State | What Panel Assistant does |
|---|---|
| On (default) | Saves the current screen-off timeout once and sets it to never; the built-in renderer also keeps the screen on while it is showing |
| Off | Puts back the saved timeout, or 60 seconds if none was saved |
It should normally stay on for a mains-powered panel. Screen sleep that you want is better handled by Auto sleep.
Related: Security mode
Keep panel responsive
Advanced · Default on · keep_awake
Keep the network and background services running while the screen is off.
With this on, Panel Assistant holds two Android locks:
- one that stops the processor from going into deep sleep;
- one that stops the Wi-Fi radio from going into power saving.
Without them, a panel with its screen off can stop answering on the network, drop its connection to Home Assistant or miss commands. The screen can still turn off as normal.
It is on by default because wall panels run on mains power. Turn it off only on a battery-powered device where standby time matters more than staying reachable.
Related: Security mode
Display
Section titled “Display”Dark mode
Advanced · Default on · dark_mode
Themes ha-paneld's own screens and sets the dashboard's default colour scheme on panels without a system dark-mode setting (Android 9 and older). A theme picked inside Home Assistant overrides the dashboard default; this web UI always follows the viewing browser's own preference.
This setting appears only on panels running Android 9 or older. On Android 10 and later the panel has its own system dark-mode control, and Panel Assistant follows that for everything, so the toggle is hidden.
On the dashboard it is a default, not an override:
| Situation | What the dashboard shows |
|---|---|
| No theme picked in Home Assistant on this panel | The scheme this setting chooses |
| A theme picked in the Home Assistant profile | That theme; this setting is ignored |
| Dashboard theme forcing Dark or Light | The forced scheme; this setting only themes Panel Assistant’s own screens |
Ambient light source
Advanced · auto_brightness_ha_entity
Blank uses the panel light sensor. Select a Home Assistant illuminance sensor when the panel has no suitable sensor.
The value is a Home Assistant entity id beginning with sensor., such as sensor.living_room_illuminance. The picker lists the illuminance sensors Home Assistant reports. When you save, the panel checks the entity with Home Assistant, and refuses it unless:
- the panel is already connected to Home Assistant (save any connection change first, then pick the entity);
- the entity exists;
- it has the
illuminancedevice class or alxunit; - it is reporting a number at that moment, so a sensor that is currently unavailable is refused.
Choose an entity when the panel has no light sensor of its own, or when a sensor elsewhere in the room better represents the light people see. With an entity selected, the panel can start from up to seven days of that entity’s recorded history instead of learning from nothing. Clear the field to go back to the panel’s own sensor.
Related: Adaptive brightness
Auto-brightness
Advanced · Default off · auto_brightness
On-panel engine maps a lux stream to the backlight (off = HA drives the screen).
Minimum level
Advanced · auto_brightness_minimum_percent
Lowest automatic screen level as a percentage. Proposals scale from this floor to full brightness; manual brightness can still go lower.
The range is 4% to 99%, and the default is 4%. That lowest value is where the backlight’s own minimum sits, so a lower number would change nothing on the screen. Raising the floor lifts the whole automatic range: the darkest room gets this level, and the brightest still gets full brightness.
Raise it if the screen gets too dim to read at night or in a dark corner. It only bounds Auto-brightness; manual brightness, from the panel or from Home Assistant, can still go below it. The change applies at once, and the chart on the Configure page previews it before you save.
Related: Adaptive brightness
Sensitivity
Advanced · Default 50 · 0 to 100 · auto_brightness_response_percent
How much of the difference from the learned ambient-light pattern is applied to the screen, once the engine has decided a change is real. Lower values keep the screen closer to its learned daily pattern. While the pattern is still being learned the screen follows the measured light directly.
| Value | What the screen does |
|---|---|
0 |
Follows the learned daily pattern alone and ignores short changes, such as a lamp switched on |
50 (default) |
Applies half the difference between the measured light and the pattern |
100 |
Applies the whole difference |
It is not a follow-the-light control. A brief brightening is acted on only once it has lasted, or risen sharply enough to count, whatever this is set to, and while the pattern is still being learned the screen follows the measured light directly. Lower it if the screen reacts to changes you would rather it ignored; raise it if it feels slow to catch up when the room lights change. The change applies at once, and the chart on the Configure page previews it before you save.
Related: Adaptive brightness
System
Section titled “System”CPU profile
Advanced · cpu_governor
Live CPU scaling profile until reboot; Auto = the SoC's dynamic governor.
Zigbee router
Advanced · Default off · zigbee_router
Run the on-board Zigbee gateway as a router/repeater (NSPanel Pro).
This setting appears only on a panel with a built-in Zigbee gateway, such as the Sonoff NSPanel Pro. Turning it on starts the vendor gateway if it is not already running and switches it to the Repeater role, so the panel can extend an existing Zigbee network run by your own coordinator. To join it to that network:
- Turn this switch on and save.
- Open permit-join on your coordinator.
- Use Request join in the Join Zigbee network row that appears under the switch. The button stays disabled once the router has joined.
Turning it off stops the gateway and frees the radio. Stock firmware often starts the gateway at boot by itself, and Panel Assistant only stops it when you have set this switch explicitly, so a gateway you already rely on is left alone by default.
While the router is on, Panel Assistant samples the gateway once a minute. After a 15-minute start-up grace period it treats the gateway as a runaway if either of these happens:
- it restarts three or more times within ten minutes;
- it stays unjoined while using more than half a CPU core for five consecutive samples.
A runaway gateway is stopped and this setting is turned off, to protect the panel’s responsiveness.
Related: Performance, Sonoff NSPanel Pro
Interface language
Basic · ui_language
Language used by ha-paneld's own interface. Automatic uses an explicit page override first. Configure setting labels and help can then follow the connected Home Assistant user's language; browser, device and English are the remaining fallbacks.
| Choice | Status |
|---|---|
| Automatic | Picks a language by the order described in the help above |
| English, German, French, Italian, Spanish, Simplified Chinese | Released translations |
| Dutch, Polish, Ukrainian | Early access: machine drafts not yet independently reviewed, shown so you get your language rather than English |
The setting covers Panel Assistant’s own screens and web pages, including the Configure page and the app’s native Android screens. It does not change the Home Assistant dashboard, which follows your Home Assistant profile.
ha-paneld auto-update
Advanced · Default on · self_update
ha-paneld updates itself from GitHub releases on the selected channel. Only shown where verified app install is available.
With this on, the panel checks for a newer release about 30 seconds after Panel Assistant starts and then once every 24 hours, and installs it when one is available on the update channel. The install is signature-checked, and the app restarts itself onto the new version. The same daily check runs the other automatic updates first, because this one restarts the app:
With it off, the panel still reports available releases, and you install them yourself from Home Assistant’s update entity or from a computer. The setting appears only on panels where Panel Assistant can install verified apps.
Related: Updates and recovery, Security mode
ha-paneld auto-update channel
Advanced · update_channel
Release channel the self-updater follows.
Companion auto-update
Advanced · Default off · companion_auto_update
Install/update the minimal HA Companion over root when missing or out of date.
Companion auto-update channel
Advanced · companion_update_channel
Release channel the Companion auto-updater follows.
WebView auto-update
Advanced · Default off · webview_auto_update
Keep the System WebView on this panel's recommended build (from the ha-paneld mirror), installing a newer one over root on the update check. Off by default — a WebView swap needs a restart to take effect. Only shown where a recommended build exists (not on Play-updated panels).
Launcher app
Advanced · launcher_package
App the Launcher button brings forward. Blank auto-picks an app. Selecting Panel admin (ha-paneld) also makes and keeps ha-paneld the Android Home app.
The picker lists apps that register as an Android Home app. When the field is blank, Panel Assistant resolves the launcher in this order, and the Configure page shows which app it landed on:
- the panel’s default Home app, if it is a real launcher;
- otherwise another installed launcher;
- otherwise its own panel admin launcher, an app drawer for panel maintenance.
Apps that register as a Home app without being a launcher, such as the Home Assistant Companion, Android Settings and some vendor control panels, are never picked automatically, because opening them would hide the dashboard rather than open an app drawer.
Choosing Panel admin makes Panel Assistant the Android Home app and keeps it so, restoring it if something else takes over. If you later hand the panel back to its own launcher, Panel Assistant clears this setting first.
Related: Vendor packages
Network ADB
Advanced · Default off · network_adb
Security risk: keeps classic ADB listening on TCP port 5555 across boots and reconnects. Enable only during active maintenance on a trusted network. If ADB was enabled outside ha-paneld, it must also be disabled there.
Camera
Section titled “Camera”Camera
Advanced · Default off · camera_enabled
Off by default. Serves the panel's camera as a video-only RTSP stream and as a JPEG snapshot for Home Assistant to pull; no frames leave the panel unless a client is connected, and the panel shows a red light whenever the camera is open.
Resolution
Advanced · camera_resolution
What a stream gets when its URL does not ask for something else. A stream URL can override it with ?res=, in either direction.
| Choice | Size | When to pick it |
|---|---|---|
| 480p | 640 × 480 | A panel that already struggles to keep its dashboard smooth, or a busy network |
| 720p (default) | 1280 × 720 | Most rooms |
| 1080p | 1920 × 1080 | When detail matters and the panel and network have headroom |
It applies to the snapshot as well as the stream, unless the snapshot URL asks for its own with ?res=. Higher resolutions cost the panel more processing and the network more data.
Related: Control API and Home Assistant reference
Frame rate
Advanced · Default 15 · 1 to 30 · camera_fps
What a stream gets when its URL does not ask for something else. A stream URL can override it with ?fps=, in either direction.
The value is frames per second, from 1 to 30, with 15 as the default. A lower rate saves processing on the panel and bandwidth on the network; a doorway or room view rarely needs more than the default.
A change here applies from the next time the camera opens.
Related: Control API and Home Assistant reference
Bitrate (kbps)
Advanced · Default 2000 · 250 to 8000 · camera_kbps
What a stream gets when its URL does not ask for something else. A stream URL can override it with ?kbps=, in either direction.
The value is the H.264 video bitrate in kilobits per second, from 250 to 8000 in steps of 250, with 2000 as the default.
| Value | Picture and cost |
|---|---|
| Lower | Less network traffic; suits a busy Wi-Fi network or a small view |
2000 (default) |
The starting point |
Higher, up to 8000 |
A cleaner picture, especially with movement or at 1080p, at the cost of more network traffic |
Below 250 H.264 does not produce a usable picture at any size, which is why that is the floor. As with the other stream settings, the first client to open the camera binds the session and later viewers share it. A change here applies from the next time the camera opens.
Related: Control API and Home Assistant reference
Exposure
Advanced · Default 0 · -2 to 2 · camera_exposure
Exposure bias in stops, for a camera that reads a room darker or brighter than it looks. 0 leaves the camera's own automatic exposure alone; the panel clamps this to whatever range the sensor actually supports.
The value runs from -2 to +2 stops in half-stop steps, with 0 as the default. It works on top of the camera’s automatic exposure, which keeps working either way.
| Value | Effect | When to use it |
|---|---|---|
-2 to -0.5 |
Darker picture | A bright window or lamp washes the picture out |
0 (default) |
The camera’s own automatic exposure | Most rooms |
+0.5 to +2 |
Brighter picture | A room looks murky on camera |
Camera sensors adjust exposure in their own step sizes and ranges, so the panel rounds your value to the nearest step the sensor offers and limits it to the sensor’s range. A camera that reports no exposure control ignores the setting. The change applies from the next time the camera opens, to both the stream and snapshots.
Dashboard
Section titled “Dashboard”Dashboard app
Advanced · dashboard_package
App used for the dashboard. Blank uses ha-paneld's built-in renderer.
This chooses which app draws the dashboard on the panel. The list always starts with Auto and Built-in renderer, followed by any supported Home Assistant Companion app installed on the panel. Using the Companion app as the dashboard is retired: it is listed only so a panel already set up that way keeps working, and Panel Assistant never removes it for you. Other launchable apps are not offered. If the panel is already set to an app the list does not recognise, that choice stays in the list rather than being dropped silently.
| Choice | Stored value | What happens | When to pick it |
|---|---|---|---|
| Auto | blank | Uses Panel Assistant’s own renderer. | The usual choice. |
| Built-in renderer | builtin |
Uses Panel Assistant’s own renderer, named explicitly. | When you want the choice spelled out in a backup or script. |
| A Companion app | its Android package name | Hands the dashboard to that app. | Retired as a panel dashboard. A panel already using it keeps working; switch to Auto once the panel is in Panel Assistant. |
A change takes effect immediately: the panel launches the newly selected app as soon as the setting is saved. Selecting the built-in renderer needs a working Home Assistant connection first, so connect with Browser sign-in before choosing it.
Related: The built-in renderer
Entity filtering
Advanced · Default off · dashboard_entity_learning
Built-in renderer: limit Home Assistant's state stream to dashboard-used entities and learn runtime dependencies. Manage sources and pins in Entities.
Home Assistant’s frontend normally subscribes to the state of every entity the signed-in user can see, and the panel has to receive and process all of those updates even when its dashboard shows only a few. With this on, the built-in renderer limits that subscription to the entities the dashboard uses, so Home Assistant filters the stream before sending it. On a large installation this is usually the biggest single improvement on a slow panel.
The entity set comes from two kinds of evidence:
- a scan of the dashboard’s configuration;
- entities the dashboard is seen to use while it runs.
To set it up:
- Turn this on and save.
- Open the Entities tab on the panel’s web interface and select Scan dashboard now.
- Visit every dashboard tab and use its pop-ups and conditional content.
- Review the result, pin entities a custom card or template needs indirectly, and apply the set.
While filtering is on and no trustworthy set exists yet, the panel shows a hold screen instead of opening the dashboard unfiltered.
It has no effect when a Companion app is selected in Dashboard app.
Related: The built-in renderer, Performance
Home dashboard
Advanced · home_dashboard
Dashboard used by reload and idle return. Auto lets Home Assistant choose. Custom accepts a specific view, e.g. /dashboard-name/tab-name.
This is the dashboard the built-in renderer opens when it starts or reloads, and the one Idle return to home goes back to. A change applies without restarting the app.
| Choice | What happens |
|---|---|
| Auto | Follows the default dashboard of the panel’s Home Assistant account. The label tells you whether the account has a default set, or whether the list could not be fetched. |
| A listed dashboard | Opens that dashboard. The list is what Home Assistant reports for the panel’s account. |
| Custom | Opens the path you type, which can name a single tab, for example /lovelace/garden. |
Every spelling of the root path, such as /, is stored as Auto. A path is checked for form when you save, but not for whether the dashboard exists, because the list can be unreachable or the dashboard may be created later; a path Home Assistant does not know is shown as a warning instead.
Choosing a specific dashboard also tells Entity filtering which dashboard to learn from.
Related: The built-in renderer
Dashboard theme
Advanced · dashboard_theme
Built-in renderer only. Follow Home Assistant leaves the dashboard's light/dark choice to Home Assistant, which is what the Dark mode setting supplies a default for. Dark and Light choose it on this panel when Home Assistant is set to Auto, for a kiosk dashboard with no sidebar to reach the Home Assistant profile page from. An explicit Light or Dark choice in Home Assistant still wins; use Auto or a separate panel user. Returning to Follow Home Assistant hands the choice back exactly as it was found.
Hide Android system bars
Advanced · Default on · dashboard_fullscreen
Built-in renderer only. Hides Android's status and navigation bars while the dashboard is in front; swipe from an edge to reveal them temporarily. It does not lock the panel or hide Home Assistant navigation.
With this on, the dashboard fills the whole screen. Android’s status bar and navigation bar stay hidden while the built-in renderer is in front, and the panel hides them again after you have revealed them with a swipe or after a dialog brings them back. A change applies straight away, without reloading the dashboard.
Three separate controls affect different layers:
| Setting | Hides | Does not |
|---|---|---|
| Hide Android system bars (this one) | Android’s status and navigation bars | Stop anyone leaving the app, or hide Home Assistant’s own navigation |
| Hide Home Assistant navigation (native) | Home Assistant’s own navigation | Touch Android’s bars |
| Lock Android to dashboard | Nothing visual; it returns to the dashboard when another app opens | Change how the dashboard looks |
Turn this off if you want the clock and notifications visible, or use Android’s on-screen buttons regularly. It has no effect on a Companion app.
Related: The built-in renderer
Hide Home Assistant navigation (native)
Advanced · Default on · dashboard_native_kiosk
Built-in renderer only. After Home Assistant 2026.4.2+ connects, asks its native frontend to hide its navigation. On by default; an unsupported or failed request leaves the dashboard unchanged. It does not lock Android or inject CSS into the dashboard.
This uses Home Assistant’s own kiosk mode rather than altering the page. Once the frontend has loaded and connected, the built-in renderer sends it a kiosk_mode/set request to hide its navigation. If the request fails, the panel retries a few times; a Home Assistant version without the feature leaves the dashboard as it is. Turning the setting on or off applies to the dashboard already on screen, without a reload.
| State | Use it when |
|---|---|
| On (default) | The panel should show only the dashboard. |
| Off | People need Home Assistant’s navigation on the panel, for example to reach other dashboards or their profile page. |
Hide Android system bars is the separate control for Android’s own bars.
Related: The built-in renderer
Idle return to home (min)
Advanced · Default 0 · 0 to 1440 · dashboard_idle_return_min
Built-in renderer: return to Home dashboard after this many idle minutes. 0 = off.
Idle means nobody has touched the screen. The panel checks once a minute, so the return happens up to a minute after the time you set. It returns only when all of these hold:
- the screen is on;
- the dashboard is connected to Home Assistant;
- the dashboard is not already showing the home view.
The return swaps the view in place, without reloading the page.
The destination is Home dashboard, including a specific tab if you set one. With Home dashboard on Auto, the panel waits until Home Assistant has told it which dashboard is the account’s default.
| Value | Effect |
|---|---|
0 (default) |
Off. The panel stays wherever it was left. |
1 to 1440 |
Returns home after that many idle minutes; 1440 is one day. A value such as 5 suits a shared panel where people wander into other views. |
Related: The built-in renderer
Home Assistant URL
Advanced · ha_url
Built-in renderer: Home Assistant base URL, e.g. http://homeassistant.local:8123. Blank disables it.
This is the address the panel uses to reach Home Assistant for the built-in renderer, the same address you would type into a browser on the same network. The address must:
- start with
http://orhttps://, for examplehttp://homeassistant.local:8123orhttps://192.168.x.x:8123; - not contain a user name or password.
A trailing slash is removed. HTTPS with a private certificate authority works once that authority is installed on the panel.
With security mode on, pointing the panel at a different Home Assistant also discards the old sign-in unless you supply new credentials in the same change, so the panel never sends one server’s credentials to another.
Related: Connect a panel, The built-in renderer
Long-lived access token
Advanced · ha_token
Use browser sign-in when possible. This fallback can be created in your Home Assistant user profile.
There are two ways to give the panel a Home Assistant credential:
| Method | What the panel stores | When to use it |
|---|---|---|
| Browser sign-in (preferred) | A short-lived access token that the panel renews itself | Whenever you can sign in through the browser. No long-lived credential stays on the panel. |
| Long-lived access token (this field) | The token you paste | Setups where signing in through the browser is not practical. |
Create a long-lived access token in your Home Assistant user profile and paste it here; use an account that can see the dashboard the panel should show.
- Saving a token here replaces any Browser sign-in the panel held.
- Clearing Home Assistant URL clears this token too.
- The Configure page never shows the stored token, and leaving the field empty when you save keeps the current one.
Related: Connect a panel, Security mode
Zoom (%)
Advanced · Default 100 · 50 to 300 · dashboard_zoom
Browser zoom.
Logging
Section titled “Logging”Ship logs
Advanced · Default off · log_ship_enabled
Forward ha-paneld's own process log — not the full system log — to a central sink (LAN-only, tokens and passwords redacted).
With shipping on, every line of Panel Assistant’s own log on the panel is sent to a log collector you run, such as a syslog server, so you can keep a history across several panels and after restarts. It is the same log the Logs tab streams live. While you have WebView developer tools enabled for the dashboard, its JavaScript console is sent as well. Hardened mode refuses those tools, so there it never is.
- Tokens and passwords are removed before a line leaves the panel, including console lines. Android’s system log is never sent.
- Each record carries the panel ID as its host name, the app name
ha-paneld, and the app build that wrote it. - If the collector is unreachable for long enough that the queue fills, the oldest lines are dropped rather than slowing the panel.
- The panel’s runtime diagnostics show whether shipping is connected and how many lines were sent or dropped.
Nothing is sent until Sink host is set as well. Leave shipping off unless you have a collector to receive the logs.
Related: Troubleshooting
Sink host
Advanced · log_ship_host
Log-collector host; blank keeps shipping inert. A scheme or :port here is honoured (udp://collector, collector:1514).
The host name or address of your log collector, for example 192.168.x.x or logs.local. You can also type the transport and port here; the three fields are saved to agree with each other.
| You type | Protocol | Port |
|---|---|---|
192.168.x.x |
from Protocol | from Sink port |
192.168.x.x:1514 |
from Protocol | 1514 |
udp://192.168.x.x |
Syslog over UDP | from Sink port |
tcp://[fd00::20]:514 |
Syslog over TCP | 514 |
IPv6 addresses go in square brackets. When a name resolves to both IPv4 and IPv6, the panel tries IPv4 first, because a UDP send to the wrong address fails without any sign.
Sink port
Advanced · Default 514 · 1 to 65535 · log_ship_port
The port your collector listens on.
| Protocol | Usual port |
|---|---|
| Syslog over TCP | 514 |
| Syslog over UDP | 514 |
| HTTP protocol | whatever your collector’s HTTP endpoint uses |
A port typed into Sink host replaces this value.
Protocol
Advanced · log_ship_protocol
TCP is the default because it reports a sink that is refusing or unreachable; UDP cannot, so a wrong setting there fails silently. Port 514 serves both.
| Choice | What is sent | Notes |
|---|---|---|
| Syslog over TCP (default) | Standard RFC 5424 syslog lines over a connection, one per line | Long lines arrive whole. A collector that refuses the connection shows as an error. |
| Syslog over UDP | The same lines, one per datagram | What many syslog servers accept out of the box. Each line is cut at 1024 bytes, and a wrong host or port fails silently. |
| HTTP protocol | Batches of JSON objects, one per line, posted to http://host:port/ |
Fields: timestamp, host, app, versionCode, package, message. |
A transport typed into Sink host takes precedence over this choice. Older saved values syslog and tcp mean Syslog over TCP, and udp means Syslog over UDP.
Sensors
Section titled “Sensors”Screen brightness
Advanced · screen
Current screen state and brightness. Home Assistant presents the light's native 0–255 brightness as a percentage.
Panel volume
Advanced · volume
Current panel media volume reported on its native 0–100 percent scale.
Ambient light
Advanced · illuminance
Ambient illuminance measured by the panel light sensor.
Proximity
Advanced · proximity
Learned near/far occupancy from a supported proximity source.
Proximity level
Advanced · proximity_level
Normalized learned proximity level from 0 to 100 percent; binary sources report 0 or 100.
Auto-sleep activity
Advanced · auto_sleep_activity
Whether the auto-sleep policy is currently holding the panel awake. The Home Assistant entity provides the activity history timeline.
Temperature
Advanced · temperature
Environmental temperature reported by Android's panel sensor.
Humidity
Advanced · humidity
Relative humidity reported by Android's panel sensor.
Room temperature
Advanced · room_temp
Room air temperature from the panel's supported climate sensor (calibration offset applied).
Room humidity
Advanced · room_humidity
Relative humidity from the panel's supported climate sensor.
Room temperature offset
Advanced · Default 0 · -20 to 20 · room_temp_offset
Correction (°C) added to the reported room temperature — usually negative, since panel self-heating reads high. Per-panel (depends on mounting), so not cloned by a fleet push.
The offset is added to every Room temperature reading before it is reported, in steps of 0.1 °C between -20 and 20 °C. The default of 0 reports the sensor as read. The panel profile can carry its own baseline correction, and this setting is added on top of it; the built-in profiles all use a baseline of 0.
To set it:
- Place a reliable thermometer next to the panel and let both settle.
- Subtract the panel’s reading from the thermometer’s.
- Enter the difference here. The new value appears in Home Assistant with the next reading.
| Panel reads | Thermometer reads | Offset to enter | Reported afterwards |
|---|---|---|---|
| 23.5 °C | 21.0 °C | -2.5 |
21.0 °C |
It has no Home Assistant entity; change it on the Configure page or through the local API.
Related: Tuya TPA10
Diagnostics
Section titled “Diagnostics”IP address
Advanced · diag_ip
This panel's LAN IPv4 address as a sensor.
CPU usage
Advanced · diag_cpu
Overall CPU busy percentage (root/su panels; unavailable on sandbox-walled panels).
Memory usage
Advanced · diag_memory
Used RAM as a percentage.
SoC temperature
Advanced · diag_soc_temp
System-on-chip temperature (root/su panels; unavailable on sandbox-walled panels).
Last boot time
Advanced · diag_boot
When the panel last booted (a timestamp — HA shows the elapsed uptime).
Wi-Fi network
Advanced · diag_wifi_ssid
Current Wi-Fi network name while Wi-Fi is the active connection. This can identify a location and enters HA history when exposed; Android may hide it unless network-information permission is available.
Wi-Fi signal strength
Advanced · diag_wifi_rssi
Current Wi-Fi received signal strength in dBm while Wi-Fi is the active connection.
Wi-Fi outages (24 h)
Advanced · diag_wifi_outages_24h
Short Wi-Fi dropouts in the rolling last 24 hours. Counts loss of the panel's active Wi-Fi connection only — Home Assistant or broker outages are never counted. If the panel had to cap what it stores, the sensor's is_lower_bound attribute says the value is a floor.
We Home Assistant en alles wat de Open Home Foundation doet.
Reacties
Reacties staan in de discussie van deze pagina op GitHub, dus als je ze laadt, maakt je browser verbinding met GitHub. Deze browser onthoudt die keuze en laadt reacties op andere pagina’s zodra je ernaartoe scrolt.
Reageer zonder GitHub-account