Updating the system WebView
Read this before anything else: an outdated WebView is the most common first-run failure on these panels.
The panel app’s built-in renderer relies on Android’s system WebView, and most of these panels ship with one far too old to run a current Home Assistant frontend. Out of the box that can produce a blank or broken dashboard, missing cards, or “browser not supported”. Panels without Google Play (Sonoff NSPanel Pro, Tuya TPA10) cannot update it through the Play Store, so install a current WebView with the method for your panel below. The Electron WF1589T and ZHICAI SMT1019 have Google Play, so update Android System WebView from the Play Store, or use the Play WebView development channel.
The clean way is a direct adb sideload of the standard Android System WebView (package com.android.webview) matched to the panel’s Android version and ABI, with no third-party app store involved.
Stock versions and known-working replacements
Section titled “Stock versions and known-working replacements”“Stock” is what the vendor firmware ships from the factory, verified from firmware inspection or a live device. “Replacement” is what is confirmed working after installation. Redistributable builds are mirrored as ha-paneld release assets; sideload one with adb install -r <file>.
| Panel | ABI | Stock (vendor firmware) | Replacement | Download |
|---|---|---|---|---|
| NSPanel Pro 86P (PX30) | arm64-v8a | Chromium 107.0.5304.105, verified on firmware 3.5.1; check other firmware and models before updating | LineageOS 138.0.7204.63, the last build for Android 8.1 | release asset, APKMirror |
| TPA10 (rk3566) | armeabi-v7a | Chrome 83 (com.android.webview), too old for a current Home Assistant frontend |
LineageOS SystemWebView 150.0.7871.63. Vanilla Chromium, so camera streams autoplay (Cromite 147 blocks autoplay and is kept as a fallback). Signature-locked: needs the root swap, not a plain sideload. | arm asset |
| WF1589T (rk3576) | arm64-v8a | Google Play WebView, updated automatically | Update through the Play Store; no sideload needed | none |
| S9E (rk3566) | arm64-v8a | Depends on firmware, so check before replacing. Chromium 83.0.4103.120 on the 2024-07 build (too old for a current frontend), 131.0.6778.200 on the 2025-12 build | Needed only on the older firmware: LineageOS 150.0.7871.63 (arm64). Provisional and unverified on hardware; it may be signature-locked like the TPA10. On 2025-12 firmware the stock WebView is already current | arm64 asset |
| SMT1019 (rk3576) | arm64-v8a | com.google.android.webview 124.0.6367.179, Android 14 with Google Play |
Update Android System WebView from the Play Store; no sideload needed. Do not sideload a com.android.webview build: a product overlay supplies this panel’s provider list, so a sideloaded provider may not be selected |
none |
| ZX-SMT156 (RK3566_T) | arm64-v8a | Google WebView 149.0.7827.164 (reporter firmware) | Already current; no replacement needed | none |
| Shelly Wall Display, original (MT6580) | armeabi-v7a | unknown (Android 7 base ROM) | com.google.android.webview 119.0.6045.194 from the official Shelly ZIP; see the Shelly Wall Display family page |
none |
| Shelly Wall Display X2 (SC7731E) | armeabi-v7a | unknown (Android 8.1 base ROM) | Not established; check adb shell dumpsys webviewupdate |
none |
| Shelly Wall Display X2i (RK3326-S) | arm64-v8a | Chromium 131.0.6778.200 on factory firmware 2.5.4 | Already current; no replacement needed | none |
| Shelly Wall Display X1i, XL (arm64) | arm64-v8a | unknown (Android 11 base ROM; not in the Shelly OTA) | Not established; check adb shell dumpsys webviewupdate |
none |
All mirrored builds are in the Panel WebView mirror release, a community list of known-working versions. If you have one working on another panel or version, contributions are welcome.
Sideload and verify
Section titled “Sideload and verify”-
Download a current Android System WebView APK with the package name
com.android.webview. LineageOS System WebView is the recommended build across Android versions: 138 is the last for Android 8.1, and 150 covers Android 10 and later; both are in the mirror. It is vanilla Chromium, so it does not carry Cromite’s autoplay block that stops Home Assistant camera streams. Itscom.android.webviewpackage means it is picked as the provider automatically, with no allowlist editing and no extra app, and it is freely redistributable. Match your panel’s ABI. -
Sideload it. This needs no root:
Terminal window adb install -r android-system-webview.apkIt installs to
/data/appand supersedes the stale stock WebView. -
Verify the active provider and version:
Terminal window adb shell dumpsys webviewupdate | grep "Current WebView package"
If the panel lists more than one provider, select the new one explicitly:
adb shell cmd webviewupdate set-webview-implementation com.android.webviewor use Developer options, WebView implementation.
Comments
Comments are kept in this page's discussion on GitHub, so loading them connects your browser to GitHub. This browser remembers the choice and loads comments on other pages when you scroll down to them.
Comment without a GitHub account