NSPanel Pro - Custom android apps (working)

Have you enabled developer mode of NSPanel Pro?

No… how can I do it?

I founded how to enabled the developer mode

Thank you!

Hello, I have an nspanel pro, and I was wondering if it has been possible to use it as a tcp coordinator for ZHA?

Hello, how did you do that ? Activating it through eWeLink app by hitting Device ID 8x asks to enable Developer Options, but confirming that does not seem to unlock the panel anyway and I still hit the wall with connections being actively refused. No luck via usb either as adb device is not listed despite being seen in Device Manager as px30_evb. Any hints, please ?

and hint is obvious - read the instructions :slightly_smiling_face:
I now know that I need to enable adb as an extra step !

1 Like

Hi,

You need to connect the NSPanel pro to the eWelink app then inside the app you need to hit 8 times on the app version until you see the message developer mode enabled
after that you need to toggle the button to allow the adb.
From here you can follow the guide how to install android apps including the home assistant companion app.
Hope it helps

Can anyone help me get over this screen? I tried installing xposed, got stuck in a boot loop. Entered recovery by rebooting 5 times and now it booted into this.
Did I actually brick my nspanel pro?

IIRC just click the right button.

You don’t need xposed (At least I didn’t for the later firmware versions).

I assume you doing from Mark’s video.

I skipped
adb install de.robv.android.xposed.installer_3.1.5-43_minAPI15(nodpi)_apkmirror.com.apk
adb push xposed-v90-sdk27-arm64-beta3.tar /sdcard/Download/
adb shell
su
mount -o rw,remount /system
cd /sdcard/Download/
tar -xvf xposed-v90-sdk27-arm64-beta3.tar
cd /sdcard/Download/xposed-v90-sdk27-arm64-beta3/
chmod a+x /sdcard/Download/xposed-v90-sdk27-arm64-beta3/META-INF/com/google/android/flash-script.sh
sh /sdcard/Download/xposed-v90-sdk27-arm64-beta3/META-INF/com/google/android/flash-script.sh

I have just built 6 panels. (Firmware 2.2)

Make sure you update the firmware before setting development mode, as you will not be able to do it later. Although I mucked up one and had to push v1.7 to the device.

These are my notes, they are for me. But will give you a start.

download latest versions apk needed, adb etc into c:\adb
On the Device

Power up Device

On Welcome screen click start, select language, country/region (London), select wifi.

click login, QR code is displayed

On the Phone

Open eweLink app on phone

click + top right to add a device and then click Scan

Scan QR code on device

You should see “Device added successfully”

Change Name

On the Device

Swipe down from top

Click settings icon

Swipe up from bottom and click on “About”

Click “Software Update” to Install firmware update (if available)

Click Confirm Button

Wait…………………screen goes blank and then shows Firmware updating screen, click Install.

If it’s says “not a valid package” then it is downloading, check by going into settings>about, wait and when finish click install

Wait…………………will go blank, reboot and displays a screen saying “Installing System Update”, wait until update is installed (3-5 mins) and device will reboot with new firmware

You can check to see what version, after booted

Seems to be a bit mucking about here, going backwards and forwards.

Swipe down from top

Click settings icon

Swipe up from bottom and then click on “About”

On the Phone

*** MUST BE DONE AFTER FIRMWARE UPDATE ***

Go back to My Home, click All and the device should appear.

click on the device

click 3 dots, top right to go into Device Settings

In device settings scroll down to Device Id and tap eight times. A window should pop up asking to enable Developer Settings. Click Yes.

Developer mode should now appear below customize. Click on that and slide the button to enable ADB. A popup window will appear and you will need to accept terms and conditions to enable.

On the Device

Scroll down, click Settings, scroll up to About at bottom and click

Scroll up/down on the device to obtain the IP address and make note.

On PC

Go into the Ubiquiti web interface, find the client device using the IP Address, click device and then click the settings tab. Enter Name and slide ‘Use Fixed IP Address’ and click Apply changes.

If Apply changes isn’t working, Ctrl-F5 and try again. Bug in interface.

Open Windows Powershell

cd \adb

On PC (Powershell)

./adb connect 192.xxx.xxx.xxx

Should see connected.

Install Ultra Small Launcher

./adb install ultra-small-launcher.apk

Wait for success

On the Device

Click “Settings”, scroll down to “About” and click (if not there already), scroll down to bottom and click reboot. Then click confirm when the prompt is displayed.

On reboot, you will be asked to select a Home app, either eWeLinkControlPanel or Launcher. Click Launcher then click Always at the bottom.

Click the Settings icon, click Display line and then “click show status bar” on the top. This can be turned off at any time. Shows icons at the bottom of screen, equivalent to adb shell input keyevent 3 etc. Lot easier

On this page adjust Brightness level to 100%

And then click Advanced, and click sleep and set to 30 seconds

On PC (Powershell)

Install AnyWebView

./adb install AnyWebView_1.2_beta.apk

Wait for success

Install WebView Update

./adb install “Android System WebView_115.0.5790.138_Apkpure.apk”

Takes a while……Wait for success

Install Automagic

./adb install Automagic_1_38_0.apk

Wait for success

Push XML file to panel

./adb push flow_Proximity_turn_screen_on.xml /sdcard/Download/flow_Proximity_turn_screen_on.xml

Install Home Assistant Companion App

./adb install “io.homeassistant.companion.android_2023.11.2-full-11694_minAPI21(arm64-v8a,armeabi-v7a,x86,x86_64)(nodpi)_apkmirror.com.apk”

Wait for success

On the Device

Click Home Button

Click the automagic icon,

Accept terms of service and click next. Then click “Grant Access”.

Go through and delete all automations. (3 vertical dots on side) and select “Delete”

At the bottom “Permission Contacts, Phone, Location,SMS missing, Click here to grant access” is displayed, click to accept

When done should be a red plus sign, on top left click the menu icon, scroll down to “Import Flows/Widgets” and click. When the Download page is displayed, click the menu icon top left and click on Downloads. This should show the XML that was pushed up. Click on that.

Screen changes to “Proximity turn screen On” . Top right, click the slide control to activate. Flow chart turns blue. Try it out, wave your hand, should turn red when your hand is near the screen.

Click on the top item in flowchart, then click edit to left. Change distance in cm to 250 and then click save on top. You may need to play with these settings. Seems there is no logic on the value. Some devices are high, some are low, you need to play.

Click on the bottom item in flowchart, then click edit to left. Change duration to 30s and then click save on top.

On PC (Powershell)

./adb reboot

Wait for the device to reboot.

On the Device

You may need to turn off the coordinates.Click Home, click settings icon, click system and then click about. Scroll down to bottom and click Build number 5 times to show developer options. Developer options should appear under backup. Scroll down to “Pointer location” and click to disable. They should now disappear.

Try out the Home Assistant Companion app, click the icon on the home page.

Login as

Firebase error will be displayed, click continue

The following are set on a device basis, rather than user:

Click the menu icon top left, scroll down and click on the user.

Scroll down to theme, then select io-dark-mode-blue-red

Scroll down to Dashboard, then select Wall Panels

Test!!!

Finally, if everything is working we want to launch the Home Assistant app on startup. Install the autostart app.

On PC (Powershell)

./adb install “AutoStart - No root_2.2.apk”

Wait for success

Once installed, click the Home button and then click the Autostart Icon on the Home menu.

Click Off to change Auto startup to ON

Click Add to add applications and click on Automagic and Home Assistant

Click the square icon at bottom and clear autostart (seems to save settings)

On PC Terminal

./adb reboot

Wait for the device to reboot.

2 Likes

I did press the right button. After that it starts a countdown from 60s to 50 then skips straight to counting down from 10s


After the countdown is done, it takes me back to the initial screen but with an additional red text (translate says something about the ticket id not being right?)

I also tried attaching an otg adapter in hope that having a keyboard would maybe let me go to the home screen or something but to no avail :frowning:

You haven’t bricked it, I know I seen that screeen. Have you tried the left button?

The left button took me to a device testing app. How I managed to fix it was by forcing a restore again, spamming adb install ultra-launcher.apk which worked just before booting. This let me choose what launcher to use when first booting.
But now I’m unable to link the panel back into ewelink app. For some reason it booted as a zigbee router which let me add it to my existing network, but now it’s stuck like this with no other way to configure it from within the panel or via adb :frowning:

If you boot with ultra launcher, it shows the device as offline within the eWelink. All mine are the same. Your taking away control from eWelink, so you won’t be able to access it there again.

I am not sure what you have done. I would start again by doing another factory reset. I did plenty when trying to work out what to do.

When booting with ultra launcher, you go into a menu like this. (without installed apps)

I have just worked out where that screen has come from, it is the eWeLinkNSProDev app.

Not sure why that is launching on startup.

But to kill it.

./adb shell am force-stop com.eWeLinkNSPro.dev

I would also set the status bar at the bottom i.e. Click the Settings icon, click Display line and then “click show status bar” on the top. That will give you greater control.

Only thing is I cannot send any adb commands as it has debug disabled after booting into eWeLinkNSProDev. Booting straight to ultra-launcher was the only way to actually use my device as I was able to manually enable usb debugging.

my sonoff screen is in version 2.20. i tried recovery mode. and use the development mode x8 times in app and on screen.
in app i am not able to turn ond adb. its says failed try again later.

any suggestions?

edit: i am able to connect now. but in the last step i get

cp: xwrite: No space left on device

i removed the tar file under download allready.

hard for me to emergency reset the device. because its allready mounted on the wall.

any other suggestions?

@dtpugh

i.e. is there a procedure online for this?

So anoying. i resetted this device 3 times allready still keeps going back to 2.1.0. i am unable to install the xposed tool with no space error. there is no solutions at all for this particular firmware…

looks like i am selling this piece of crap.

totally frustrated.

Just use adb i.e.

adb connect 192.x.x.x
adb reboot

Apologies if this is something obvious but I’m getting nowhere with it. My experience with setting up NSPanel Pro with Blakadder’s guides is pretty much as @lirell below - in short, I’ve debloated most apps (including Sonoff Control Panel), installed the Tools APK and Home Assistant Companion. About all of these, they’re working as expected and ADB connection is working properly.

As I’ve removed the Control Panel app I have no idea which firmware version I’m running.

That said, a bunch of questions:

  • I’m looking into using the zigbee radio as my central coordinator, but I haven’t found a way to install Zigbee2MQTT and manage it directly via a web dashboard. Can anyone help with this?
  • The closest thing I found was this post by Blakadder regarding using Z2M on a device and connecting to the NSPanel Pro via socat (https://x.com/blakadder_/status/1574490845818109964?s=20); I managed to run socat but that was as far as I could get with that. Fiddling in Z2M’s addon config settings got me nowhere.
  • If I update the firmware with the Root Tools, all of the customisation done (HA companion, etc) will be lost, right?

Has anyone been able to get android studio to be able to screen mirror over ADB?

I just see;
image

when connected as;
image

A shame if we can’t, makes life a lot better to debug on other devices