Home Assistant on a wall tablet: what a native app changes
A kiosk browser on a Lovelace dashboard is still the usual method. Its two limits, and the settings that improve the result either way.
Home Assistant is now one of the most widely installed smart home platforms, and a wall display is among its common uses. The usual method is to mount a tablet, run a browser in kiosk mode on it, and show a Lovelace dashboard full screen.
That approach is free, highly flexible and perfectly workable. It also has two limits that show up mainly in daily use, which this article looks at before going through the settings that improve the result whichever solution you pick. It is published by the company behind HomePad, a dashboard app for iPad.
Native app or web page: the gap is real
The first limit is about handling, and it is felt through the fingers rather than argued.
A browser showing a web page, even full screen, still behaves like a browser. Scrolling comes from the rendering engine rather than the system. A slider follows your finger with a slight lag. A long press triggers text selection or a context menu. A two finger gesture changes the zoom, which then has to be reset. A network interruption of a few seconds replaces the interface with an error page.
A native app meets none of those cases. Scrolling, inertia and gestures are the ones iPadOS provides, controls respond immediately, and a network drop leaves the interface in place with stale values rather than a blank screen. On a device consulted dozens of times a day, the difference is plain.
A dashboard built by the person who administers it
The second limit follows from what Lovelace is. It is an editor, made for whoever runs the installation. That person knows what each card shows, in what order the entities were arranged, and what the middle button does.
The other people in the household do not, and they are the ones using the panel day to day. A simple test measures it: ask someone who has never opened Home Assistant to turn off one specific lamp from the tablet, and watch how long it takes.
Panels that work tend to follow a structure close to Apple's Home app: rooms, tiles, a tap to act. The concept of an entity never appears.
Check how your areas are filed
Home Assistant already knows which room each device belongs to, provided the information was entered. An app that rebuilds rooms automatically relies on that filing, which saves placing cards one at a time.
You check it under Settings > Areas & labels. Devices with no area appear grouped apart, which gives the impression of a badly organised panel when it is the filing that is incomplete.
One case comes up often: a hub placed in one room passes its area to every sensor that depends on it. A detector installed in the kitchen but attached to a hub in the garage is filed under the garage. The fix is applied to the sensor itself rather than the hub.
Filtering out technical entities
A device added to Home Assistant often exposes several dozen entities, most of them diagnostic data: signal strength, firmware version, uptime counters, network address, a restart button.
On a hand-built dashboard these get hidden one by one. An app that generates rooms automatically has to leave them out by itself, or every device takes up a disproportionate amount of space. Home Assistant already marks them as technical, which makes that filtering possible without any input.
Entities hidden in Home Assistant stay hidden in the apps connecting to it, so it is more efficient to do the tidying once at the source.
Blinds and garage doors
Home Assistant groups blinds, shades, garage doors, gates and windows into a single category. A separate field, often left empty by integrations, states what the device actually is.
That field determines the controls offered: an open percentage for a blind, two buttons for a garage door. A device with the field unset appears with unsuitable controls in every app that reads the information.
Connecting
Most apps detect the server on the local network. Failing that, the address is entered by
hand, usually homeassistant.local:8123.
Sign in goes through a long-lived access token, created from the user's profile page. It is a code you copy once, valid for ten years and revocable individually. This avoids typing a password on a device everyone can reach, and lets you cut off one tablet without changing credentials.
A poorly documented limitation: renaming an accessory or moving it between rooms from the tablet requires a token created by an administrator account. From a standard account those changes are refused. Controlling accessories works from any account.
What stays in Home Assistant
Adding a new device happens in the web interface. Every integration has its own setup path and there is no universal procedure, which makes that step hard to move into a third party app. Once the device is added, it appears automatically in connected apps.
Automations also remain Home Assistant's domain. A wall panel is for consulting and commanding; writing conditions suits a wall-mounted screen poorly.
The options available
A kiosk browser on a Lovelace dashboard is still the cheapest and most customisable route. It works well when the main user of the panel is also the person administering the installation.
Native iPad apps, including HomePad which we publish, take the opposite approach: the structure is picked up automatically from Home Assistant, technical entities are left out, and the interface stays that of an iPadOS app. HomePad also connects to HomeKit, with the source chosen at first launch and changeable in Settings. It is a single purchase with no subscription, and it operates locally.
If a Lovelace dashboard is already in place, the simplest approach is to run both solutions in parallel for a week on the same device. How the rest of the household actually uses them tends to settle the question faster than a feature comparison.