Nice find! Is chrome always in foreground then? Did you also try to install the Home Assistant App?
How is the look and feel? This could be a gamechanger for this device…
Thanks for describing how.
I would be really interested into this! One stupid question: I know the dev team had a lot of trouble by getting the temp measurements not corrupted by the internal heating of the device. Did you check if when running Chroma/HA is getting hotter? Potentially you could also run HA companion app, right?
I didnt test much, BUT mt6580 is very basic low power platform. From my tests it takes around 2.5w when playing 360p video from YT so kinda hard load for this kind of device. So i hope it should not be an issue. Idle power is around 0.78w. All the tests do not include looses in psu as they are done with my bench psu
there is a more pressing topic
maybe you misread nickrout`s ironic message: we all would like to know how you achieved ADB without soldering.
thanks!
Well i can describe in general. But keep in mind I do not take any responsibility of any kind. Even more this will break stock Shelly app, it is likely trivial to restore but i didn’t try. First of all you will have to disassemble a device to get to usb c hidden inside. When you get to blue main board inside, unscrew it, remove the microphone on top and make sure not to destroy cable. Then pull top part out while making sure not to destory FPC’s on bottom, if you are not brave enough (or you dont want to risk) just disconnect both FPC’s on bottom (one is LCD another one is temp sensor). Then follow instruction in mtkclient/README.md at main · bkerler/mtkclient · GitHub to install mtkclient, it is avalible for Linux and Windows after doing so run:
/path/to/mtkclient/mtk rl dump
Make sure folder you are currently in have 8GB free space. While that is running connect usb C to a cable to pc and device, after that connect power to device. After that you should see backup progress, it will take a long while, around 20 minutes. Disconnect power, run
/path/to/mtkclient/mtk da seccfg unlock
Connect power back, after that command finished, disconnect usb and reconnect power. Device should show “Erasing” for a moment and reboot itself, after boot you will see shelly app with error message, but this time navigation bar on bottom and status bar on top will appear. Swipe from top to open quick settings, in there on bottom right there is a gear icon, click on it to open android settings, got to the bottom and open “About tablet” click on build number 7 times, go back and open an entry “Developer options” that did just appear. Here you can enable USB debugging, and use adb normally. So you can install apps. To restore shelly app you likely need to copying stuff from your backup, specifically a userdata. It is unencrypted so should be easy. Sorry for bad English. Anyway i will work to make process simpler. And i will likely build custom rom based on newer android, and one that will be easier to work with.
Thank you. A good write-up with pics would be great. I can give you a hand with the English if that helps.
The Community Guides section is editable, so if you start a post there, anyone can edit and help.
Sure here is the page, currently under construction: Installing 3rd party apps/firmware on Shelly Wall Display
My few notes to the RX/TX version - I utilized the 0V and 5V pins as documented in the MTK version, soldered the pads RX1 and TX1 on the board to USB-2-TTL device and turned the device on.
The serial link is set to 921600bps, 8 data bits, 1 stop bit and with no parity.
Using that I have the prompts and can try to send the commands. My only problem - the prompt is running under user 127, so I cannot start/stop the adbd.
Any ideas how to proceed?
Huh 5V? No, i would suggest to stop right now. It is very dangerous for this kind of SoC. All logic is at 1.8v and even 3.3 can cause issues. And yes i did fry one mtk soc with 3.3.
No worries, the 5V come from the plug at the back, there is DC2DC converter on the board and the serial uses 3.3V signalling.
Ah sure, i thought you used 5 for uart. Actually user 127 sounds reasonable as for android, can you run getprop and share output
So, minor progress.
I’ve run the commands
settings put global development_settings_enabled 1
settings put global adb_enabled 1
setprop service.adb.tcp.port 5555
but I did not have enough rights to stop adbd.
Instead, what I did was to issue killall -9 adbd
- this killed and restarted the adb daemon with the new tcp port.
After it started, I can do on my PC adb connect <ipaddress>:5555
.
The only “problem” is that this only survives until restart
Now, I can try to upload HA or something…
You can istall launcher and use it like normal android device, and adb can be enabled via settings as well
I did install HA and launcher using adb install, but now I need to find out how to start them or set the launcher to be the default one
LOL, that was easy
All I did was desperate
adb uninstall cloud.shelly.stargate
and voila - I am in launcher
Now I need to proceed with HA or something, but this will be now far easier.
Keep in mind you really want to backup data, as it contains unique provisioning data for stock shelly app.
To make sure shelly app stays there but does not start, I did:
adb connect <ip address>:5555
adb root
adb shell pm disable cloud.shelly.stargate
adb reboot
Afterwards, the device starts, but instead of going to shelly app it goes to new launcher I’ve installed.
And this way, the adb bridge seems to remain open - the shelly app on startup would kill the adb and restore the system settings, clearing the port, etc.
So, after lots of trial and error I found out that the webview on the device is QUITE outdated and cannot display HA in any browser - the integrated or anything based on webview (Fully Kiosk, DuckDuckGo browser, …).
The only one that works is Firefox, downloaded as APK from Mozilla FTP.
That one is able to get to login, then to homepage and even display HA user interface.
Now to find out how to remove the firefox bar and autostart it and I am done