Is this the perfect standalone tablet for HA?

On my devices, after a period of time (not sure how long), even when the screen is on continually, there seems to be some form of sleep or something else happening. When I come back to a device and tap a button, there’s a couple of seconds of delay before the device responds. It then works ok until I leave it again for some time.

Running this ROM and fully kiosk browser.

Any ideas what could be causing that?

Best way to troubleshoot these kind of issues is to use the adb logcat utility while recreating the issue in the UI.

Analyze the log output and see if you can get an idea of what’s happening

1 Like

Thanks I’ll have a go.

I turned off sleep on mine, which solved a lot of problems for me. I think I went to Settings > Display > Advanced mode to do that. Funny thing is, ‘Never’ setting is spelled wrong.

I use WallPanel for mine and just have it’s setting for display to switch to clock mode after 10 minutes of not sensing motion.

It seemed to have solved the issue for me where mine would go to sleep and I couldn’t even wake it; I would need to power cycle it.

1 Like

Hmmm, that’s odd - I thought I’d turned off sleep but looking again on one device, sleep doesn’t have a ‘never’ option, only 30 mins as a maximum. Wonder if it’s something to do with dev mode? Do you actually see that option?

In dev options, there’s a ‘stay awake - never sleep while charging’ option which I’ve just set - i’ll see if that does anything. Hmmm - looks like it doesn’t. Maybe as the device doesn’t have a battery and it shows as ‘not charging’.

I’m running fully kiosk browser - in that, there’s an option to keep the screen on. Maybe the device is sleeping even though the screen is on?

Thank you for this very much! For those of you using a Mac computer to do this, I wrote out a basic step-by-step set of instructions for what I had to do to make this work. I should preface this by stating that I have very very basic knowledge of command line and coding so I fudged my way through this. I’m sure some of these steps are needless if I had a little more knowledge of EDL and python and brew, but as it stands I had someone else try this and the instructions worked for them as well.

Steps to flash Lenovo ThinkSmart Tablet using macOS

First steps are to make sure you have developer tools, python3 and homebrew installed. If not, check which version of Xcode you need for your version of macOS and install it. Then go to python.org, download and install the latest version of python3.

Make an alias to enable python3 to work with the standard pip command:

alias pip=pip3

I also had issues with errors stating No module named ‘setuptools’ so I had to
manually install it with this command:

python3 -m pip install --upgrade pip setuptools wheel

Still missing modules so I ended up having to install more python3 modules with the following commands:

pip install docopt

pip install passlib

pip install requests

pip install -r requirements.txt

pip install pylzma

pip install usb

Lastly install Homebrew using the following command:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Install EDL tool

Run the bkerler/edl.git installer (do not copy/paste each one of these lines all at once. Do one at a time)

brew install libusb git (this will install the command line tools)

git clone https://github.com/bkerler/edl.git (this will copy the bkerler/edl.git files into your ./edl folder)

cd /Users/[YourUserName]/edl (obvious, but replace [YourUserName] with the name of your user home folder)

sudo git submodule update --init --recursive (this will begin to clone the Loader files in to the /edl/Loaders folder - it will take time)

sudo python3 setup.py build

sudo python3 setup.py install

Next install the Android Platform Tools

brew install android-platform-tools

Download kingston-ha-rom.7z file and extract (The Unarchiver works well for this on macOS)

Follow steps 1 - 7 in mattmon’s instruction steps

NOTE: use FULL path names.

i.e:
/Users/[YourUserName]/edl/edl qfil /Users/[YourUserName]/edl/bin/rawprogram.xml /Users/[YourUserName]/edl/bin/patch0.xml /Users/[YourUserName]/edl/flash --loader=/Users/[YourUserName]/edl/bin/prog_emmc_firehose_8953_ddr.mbn

(Replace [YourUserName] with your main user name in the /Users folder)

7 Likes

@mattmon Gonna pick up a few of these to try out. Was curious I saw you mention 5 months ago about the Lenovo Smart Display 10in. I own one of these badboys already. Curious if any progress since you last mentioned? Thanks again!

I don’t own one, though the hardware is very similar. @felixka posted more details about it in his dev thread.

I did create a preliminary rom for the 8" display. Despite what xda users reported, I was still able to get into it.

The problem is that android things is pretty barebones. Nearly everything has to be configured from the command line… even wifi.

Not worth releasing publicly, IMO

Besides, the thinksmart is so much better than the other versions performance wise.

Is that just down to software? - I thought the hardware for the smart display and Thinksmart View was basically the same apart from the smaller flash chip on the smart display?

I think PMOS could be the answer to making the smart display useful but because of the smaller flash I couldn’t get the current image on it (see the thread in the hardware section where @FelixKa offered to put together a minimal image to test on it)
If the hardware is actually pretty close to the Thinksmart, then we might have a fighting chance of making the smart display an option for people who already have one.

It’s is. Though there’s also the 8" smart display and the smart clock 1/2, which are mediatek based.

For the thinksmart, definitely! Assuming the use case doesn’t need camera functionality.

Ah ok - yes possibly some confusion over the rather non descript names that Lenovo uses then.
I was playing with an SD-8501F (8" Smart Display) that uses the Snapdragon 624 as far as I know. Hopefully we can get PMOS on that too, as I’m sure many people will have them kicking around already given they run the Google assistant.

Happy user here - two of these up and running now, using Wallpanel to run a tailored HA dashboard and wake the screen on motion. Thanks @mattmon!

4 Likes

Tried A8 - after the first time it wouldn’t go to sleep.
Trying A11 now - it won’t wake up :man_shrugging:

I tried disabling sleep in developer options, but still no luck - after a minute of inactivity, the display is off, and I can’t wake it up again. What am I missing?

did you try the camera on/camera off slider on the A11 image?

If it’s any help - in the 8.1 ROM, I use fully kiosk browser. In each room I have these in, I also have an Athom presence sensor (PIR and mmWave). I have some scripts and automations that turn the screen off when no motion detected. This is via the fully kiosk integration and the screen switch. It turns off ok but doesn’t turn it back on (most be some quirk in this ROM). However, setting the screen brightness does turn it back on so I also turn that down before switching off the screen and then on wake, set the brightness full. I don’t bother with the motion detection options via screen camera. Works well, quickly and reliably and does exactly what I want to see. I want my screens on and showing everything whenever someone is in the room (or the dogs :wink: )

1 Like

This is the latest dashboard I’ve been working on - similar on all devices but with different lighting scenes and individual lighting controls. Mix of mushroom and bubble card for the popups. Lots of things happening here including conditional alert cards for water softener salt level low, post through letterbox, popup front door camera with TTS announcements etc.Washer and dryer give estimated times and current modes (probably one of the most useful bit of info). Tried to keep it simple with only the most useful info shown.

2 Likes

…and what I’ve found REALLY useful is to setup a maintenance dashboard where I can manage all of my ThinkSmart devices and nspanel pro’s. I can dynamically set header and sidebar on/off, restart the browsers and reload the start URL. So when programming in my office, I just click and they all reload and refresh ready to go. Love these!

7 Likes

Really cool idea. Might have to borrow it!

Beautiful dashboards :heart:

Thanks, added to Troubleshooting section in OP

3 Likes

Rather than building Bromite webview, you can just put treble-overlay-bromite-webview.apk in /vendor/overlay, then you can use any webview.

Here are my notes;

First download Bromite Webview for ARM from;

# Change to the unpacked kingston-ha-rom folder.
cd ~/edl/kingston-ha-rom/

# make a folder to store the bits.
mkdir webview

# move and rename bromite webview.
mv ~/Download/arm_SystemWebView.apk ./webview/Bromite-Webview.apk 

cd webview

# fetch and unpack bromite webview overlay.
wget https://github.com/arovlad/bromite-webview-overlay/releases/download/v0.4/BromiteSystemWebViewOverlay.zip
unzip BromiteSystemWebViewOverlay.zip

# fetch mulch webview.
wget --output-document Mulch-Webview.apk https://gitlab.com/divested-mobile/mulch/-/raw/master/prebuilt/arm/webview.apk

cd ../flash

# make a directory to mount the vendor image in.
mkdir tmp

#mount vendor image
sudo  mount -t ext4 -o loop vendor.bin ./tmp/

# put treble-overlay-bromite-webview.apk in vendor overlay directory.
sudo cp ../../webview/BromiteSystemWebViewOverlay/vendor/overlay/treble-overlay-bromite-webview.apk tmp/overlay/

# make sure the permissions and ownership are correct.
sudo chmod 644 ./tmp/overlay/treble-overlay-bromite-webview.apk
sudo chown root:root ./tmp/overlay/treble-overlay-bromite-webview.apk

# unmount vendor image
sudo umount ./tmp

# flash the new vendor.bin

# Make sure the thinksmart is provisioned.
adb shell settings put global device_provisioned 1
adb shell settings put secure user_setup_complete 1

# enable developer options.

# Install webviews.
adb install ~/edl/kingston-ha-rom/webview/Bromite-WebView.apk
adb install ~/edl/kingston-ha-rom/webview/Mulch-Webview.apk

# Choose the webview of your choice in developer options.

Add the DivestOS repository to F-droid so Mulch Webview can recieve updates.

webview

1 Like

This is awesome. Thanks for the contribution. May be worth repacking the rom in OP to include this!

5 Likes