Is this the perfect standalone tablet for HA?

you had asked people to post pics at one point. working good in the kitchen to control everything. might get one more for the basement. turned out nice though, thanks again for posting!

2 Likes

Has anyone tried to get Google Meet running? Would like to use one on my desk for meetings. I’ve been able to get it installed but it just hangs.

Thanks!

Is that the launcher listed in the instructions in Post 1, and does the home button work? No matter whatI try I cant get the home button to work, only the back button

yep, and can confirm the home button works

My home button doesn’t work either. I’m guessing it’s because I didn’t successfully provision it (although it acted as though it took the commands). Haven’t had a chance to try doing so again.

1 Like
#!/bin/bash

while true
do
    adb devices
    adb shell settings put secure user_setup_complete 1
    adb shell settings put global device_provisioned 1
    adb tcpip 5555
done
1 Like

I generally try to do this sort of work (installing weird Python stuff) inside a Proxmox VM, but had no luck with this. Just a note in case anyone else is trying to pass the USB through to a PVE VM, it doesn’t seem to work (it detects the device then does nothing). Works great directly from my laptop with the same cable.

Also kind of weird that even though my relative paths are all good, the flasher seems to infer relative paths incorrectly, but using absolute paths for all the parameters worked fine.

I had the same experience. Ubuntu VM couldn’t talk to the device but working directly was able to communicate. Also had the same path issue on both the Ubuntu VM as well as OS X so just used full absolute paths for everything. Mine kept assuming for some reason that bin/ would be inside flash/ when using relative paths.

Mine kept assuming for some reason that bin/ would be inside flash/ when using relative paths.

Hah, yep exactly the same for me.

I also had no password screen whatsoever. Mine just went to the home screen upon first reboot. I guess that’s good!

Another couple points for folks who’ve never used Android dev tools (like myself)…

  1. All these adb... commands are things you run on your computer while it has a USB connection to the device. This seems very obvious in hindsight, but I just assumed there would be some sort of terminal on the ThinkSmart.
  2. For MacOS, install adb using Brew: brew install android-platform-tools

Sorry if any of that is redundant, erring on the side of over-documentation. Overall it was quite easy to do, but as a zero-Android-experience engineer I still got slightly lost.

5 Likes

Mushroom cards also work pretty well.

I finished setting mine up with the Google Photos app as a screensaver. Works pretty nicely in portrait mode as a pseudo Nest Hub device minus microphone capabilities.

I am unable to activate Fully Kiosk Plus license because it was installed via the Aurora Store and not the Play Store. Maybe because the in-app purchases/license + Fully DeviceID are tied to Google Play Services?

How did everyone else manage to activate Fully Kiosk Plus without Play Store?

Sorry to spam the thread. I was able to resolve this by downloading the Fully Kiosk apk directly from fully-kiosk.com and not via Aurora Store. Thank you OP for this great project!

Some installation notes:

  • Installing edl and flashing via Windows can be a headache. Linux is recommended.
  • First attempt was via Linux Mint Live ISO (failed).
  • Second attempt via fresh install of Linux Mint was smooth and painless.
  • Use absolute paths for the terminal commands. I was having issues flashing until I replaced all relative paths with absolute.
3 Likes

Thank you!! This was on my list because I was having the same issue and you’ve solved it for me before i really started digging into why it wasn’t working.

Is anyone running one of these while blocking them from the internet? If so, how are you setting the time?

I have a Unifi router and it doesn’t seem possible (or at least very easy) to redirect NTP requests to an internal address. I use Chrony for some cameras, but I set the NTP address directly on them. This thing can only be set manually in settings or by WAN.

I’ve watched the Unifi logs for what IPs are getting block by my rules and so far it’s mostly been Google and Microsoft, though one went to an address that resolves to clock.xmission.com which appears to be a time server. I allowed that last one (can all be accessed via a browser on the device), but the clock still won’t update after a reboot and I’m unsure where it’s getting the time from. I suppose I could try Wireshark or something to capture traffic better.

I’m worried it’s a network/DNS issue and well over my head. I haven’t noticed much time drift over a day, but the device completely disconnected from the network overnight and if that’s an issue I’d like to put it on a smart plug to auto reboot and don’t want to have to set the time or turn off my firewall every time it reboots or drifts.

I had assumed there was an internal CMOS battery (or equivalent) for time maintenance, but now I see that it’s losing the time and date whenever there’s a power loss. The inability to utilize a standard local NTP server is baffling, and a real problem.

Success!!! Thank you!

I used your bash script, but moved the ‘tcpip’ command directly beneath ‘devices’:

#!/bin/bash

while true
do
    adb devices
    adb tcpip 5555
    adb shell settings put secure user_setup_complete 1
    adb shell settings put global device_provisioned 1
done

That made the Lenovo start listening on port 5555. The other commands appeared to still fail, but once I knew 5555 was open, I was able to connect to it over the network.

adb connect kingston.lan:5555

(I confirmed 5555 was open by doing a quick port scan of the Lenovo IP using Angry IP scanner before moving on. I’m sure there are terminal utilities to do the same, but I’m lazy :slight_smile: )

Then I was able to run the provisioning commands. This allowed the home button to work, as well as enabling developer mode. With developer mode enabled, I could access the usb settings and change from charging to mtp.

I can’t seem to get the adb network connection to persist across reboots yet, I’ve tried

adb shell setprop persist.adb.tcp.port 5555

as well as

adb shell
su
setprop persist.adb.tcp.port 5555

to set the property as root. I’m still hoping to resolve this as well, but I’m much further along now!

2 Likes

Quick followup. It appears that toggling USB debugging off and back on re-enables network debugging(after a reboot/power loss). Meaning I won’t have hook up a laptop to the Lenovo if (when) there’s power loss. I think I’m at a ‘good enough’ spot now, YAY!

just tried this, doesn’t work on mine.
I was already thinking about rooting the device, in order to automatically enable USB debugging over WiFi.

does anyone know, if the steps from this xda-developers post - below You can also technically install Magisk without reflashing your device. - can be used with the files/image provided by @mattmon?

essentially it is: installing root app, unlocking bootloader, flashing a Magisk boot.img, lock bootloader again

The boot shim for magisk is not present on this rom.

Magisk is a systemless root solution; installing it on a userdebug rom where you already have root and the ability to modify the file system is…. Pointless :wink:

Would someone with a unit mind checking if the power supply works on 230V?
I’m looking at buying a couple units in the US for use in Europe.

Exactly what I’m looking for as well. I’ve tried a few Airplay/Cast “receiver” apps and none of them seem to work. Casting from Spotify will get to a very brief Spotify splash screen then exit immediately. And no cast device is auto-discovered by HA. I suspect adding “Enable Cast endpoint” to Fully would be a thing many people would enjoy, but is just wishful thinking. I’ll reply if I ever find a way to do it.