Ha-paneld — The universal Home Assistant dashboard app for Android wall panels

Yes, that I did do.

I realised this evening that you have prerelease versions available so I changed the channel on the install tab and selected the most recent relese candidate, however the Install button is disabled, similar to the one for the HA App.

I wonder if this a function of my panel or some other issue?

It is likely that you don’t have root permissions on your panel so ha-paneld cannot install the APK itself. In your position, you can either use adb to manually update the ha-paneld APK or simply re-run the install.sh script. I would recommend the latter as the script is still being improved and you will automatically get advantage of new features.

I have realised that there are some significant parts of the UI that won’t work without root permissions and it is not clear that those parts won’t work without extra permissions. I am looking to make that more visually obvious in the next release.

The script it is then. Thank you for your quick reply.

How do I direct the script to install the pre-release versions and not the latest signed version?

Also, please can you expand on how to complete this step:

Install it with: ./helper/build.sh && ./helper/install-daemon.sh 192.168.###.###:5555

?

As of v0.9.0-rc5, just add --prerelease and the installer grabs the latest build; release candidate or newest stable:

curl -fsSL https://raw.githubusercontent.com/maxlyth/ha-paneld/main/scripts/install.sh | bash -s -- --prerelease

Also works for scripted installs: ./scripts/provision.sh <panel-ip>:5555 --prerelease

I am going to release 0.9 stable in the next hour or so. I need to change a fair amount of documentation to explain the new direction so I am just trying to get that coherent.

Unfortunately I didn’t found such an option (Développer Option), and having none physical buttons on the device isn’t helping…
The USB connecter doesn’t seem to work.
I bought this one hoping I could use it as an home assistant tablet … Sadly I can’t succeed by myself.

Thank you. I used adb install to push it to my panel.

I’m still lost on the Helper Daemon though and how to install that or is that not how it works?

You can use adb install but there are a bunch of custom permissions that ha-paneld needs to access the hardware layer and the way to do that best varies a lot depending on the panel vendor. For this reason I recommend installing (and updating) any panel using the provided install scripts.

The script will preflight all dependancies are in the correct state before starting the install and give instructions to remediate and exit in a clean known state. If you install via adb and launch the app then ha-paneld will still try to request permissions it needs but if something fails then the cause is hard to determine and you can be left with a ‘half-installed’ app.

The documentation gives a one-liner install command that you can simply copy and paste into a bash shell that should work every time.

Thanks. I’d used adb install to get the minimal Home Assistant back on the panel and then forgotten that you had added the tag to allow the script to install pre-release versions. I’ve just reinstalled using the script.

The updated diagnostics are the same as those that I added to my issue on Github.

Sorry to keep asking, but is there a one line install for the Helper Daemon? The result of the install script seems to imply that I can install it but when I have tried various commands, it has failed:

I seem to remember your panel is unusual as it is a tablet non-rooted device as opposed to most panels that are delivered rooted. There are ways to root such a device but that is normally the realm of phones and tablets so I don’t want to confuse people by talking about solutions such as Magisk which is never a fun experience.

I did come across a potential workaround called the Shizuku model that gives a large subset of root-like capability without root but I don’t have a panel to test it on and I am focussed on getting the features together to support the majority of users with Sonoff/Shelly/Tuya type panels.

I have made a note in my backlog but probably won’t get to until past the release of v1.0. Sorry

The release of 0.9.2 includes such a fundamental killer feature that I am going to have to edit my original post to reframe the core capabilities, so apologies in advance. In 0.9.0 I introduced my own built in dashboard viewer so usere no longer needed to also install HA Companion app or other web viewer.

This was more of a convenience but it allowed a very important trick: ha-paneld could now inspect the dashboard process and critically infer a list of HA entities that are used to render and interact with that dashboard.

So what? By default an HA dashboard subscribes to the state change of every entity change on the HA system and on a mature system that can be thousands of entities all broadcasting their changes to every panel. For a lowly Android device that firehose of updates can be overwhelming leading to horrid performance and interface lag.

As of 0.9.2, ha-paneld has the ability to learn the minimal entity set to render the dashboard and then modify the subscribe request to only include those entities. On a typical panel that brings the subscription list down from 1000+ to 20-80 and the performance benefits this brings is truly transformative.

This is still early days and the entity filter is far from battle tested but I trying to address bug reports for a release cycle measured in days so hope you give it a go and give me feedback.

Does the ‘update’ button inside ha-paneld admin interface handle all this behind the scenes?

In general yes. Once the initial bash install script has run then ha-paneld has all the permissions it requires for ongoing maintenance so can keep itself, and any dependant packages up to date.

There are some caveats: 1, ha-paneld is new and I don’t have evidence of enough update cycles to say with certainty that will happen. 2, ha-paneld is designed to run on a diverse set of hardware and we don’t own them all for testing nor can we control what vendors do in pushed OTA firmware updates.

The project does its best to handle these corner cases gracefully. In 0.9.3 we have just added user configurable profiles making it far easier for the community/vendors to contribute.

With all that said we are confident that ha-paneld is miles ahead of any other option to deliver universal HA support for the Android wall panel community.

of all the kiosk or similar apps this is by far the best and most simple. but i would like to request if possible some features for ZHICAI SMT1019. That panel has built in led ring and 2 relay switches, and its own mqtt app, and led ring with its brigtness and color is supported and also relays. it has proximity and lux sensor, and humidty and temp sensor and some of those are available in ha-paneld, but the profile as you stated is available.so is this a manufacturer side of exposing that hardware to hapaneld and adjusting profile or is this something you need to add?

Your panel sounds very similar to mine, SMT156. I have the same hardware features. You should open an issue on the Github repository with a diagnostic dump as a first step.

@maxlyth - for the built-in renderer, is it possible:

  • To leave the LED backlight on, when the screen goes blank. My panel has a strip LED around its perimeter which I prefer to keep on during set hours, controlled by an automation; and
  • Have an option to hide the HA toolbar, across the top as well as the sidebar.

I use Wallpanel with the HA Android app and it offers finer control of what is visible and what is not. The screensaver function (random images from Picsum) is nice too, before the screen goes black.

i think they are the same, but your is a 15" mine is 10. But pretty sure the hardware is identical

can you just help me how to get dump for diagnostic? android dump or paneld?

It’s the Ha-paneld diagnostics. There is a link on the Dashboard tab at the bottom of the Capabilities section.

That said, there is a profile for your panel:


Have you activated that?