Rockchip-Intel TV Box Homeseer and Home Assistant installation

pete_c

Guru
There is a lot of bad chatter on the internet related to KODI and that is all it is...cuz it is best media player OS for today's TV's. 
 
Relating to the TVBox use for a Linux server...it is the smallest server I have used today and runs circles around the RPi and it has much more built in features, more RAM and more CPU power than an RPi.  Only thing is that it doesn't run Windows. 
 
This is similiar to the bad chatter about using TOR for private browsing on the internet today. 
 
Here is the latest box that I have done running Ubuntu 18.04 64 bit and all of the software mentioned above. 
 
 

Welcome to Fenix 0.5 Ubuntu 18.04.2 LTS Linux 4.9.40  
 _  ___               _            __     _____ __  __ ____  
| |/ / |__   __ _  __| | __ _ ___  \ \   / /_ _|  \/  |___ \
| ' /| '_ \ / _` |/ _` |/ _` / __|  \ \ / / | || |\/| | __) |
| . \| | | | (_| | (_| | (_| \__ \   \ V /  | || |  | |/ __/
|_|\_\_| |_|\__,_|\__,_|\__,_|___/    \_/  |___|_|  |_|_____|
                                                             

 * Website:        https://www.khadas.com
 * Documentation:  https://docs.khadas.com
 * Forum:          https://forum.khadas.com

Last login: Sun May  5 18:40:45 2019 from 192.168.244.232
[email protected]:~#

hhtop.jpg
 
Today setting up a tabletop touchscreen with embedded Squeezeplayer on it to connect to this box.  The new box runs LMS server plus HS3 plus HA today.
 
HHS3Pro.jpg
 
HA
 
HA.jpg
 
Webmin
 
wwebmin.jpg
 
LMS
 
LLMS.jpg
 
 

LarrylLix

Senior Member
pete_c said:
Googling your box guessing it is a 2Gb RAM and 16Gb eMMC device that looks like this:
 
attachicon.gif
mmecool.jpg
 
This one has the reset button inside of the AV or SPDIF hole.  Take a toothpick and put inside and feel for the button.
 
My current new TVBox is like this.  Don't break the toothpick.  GENTLY push the button, get a feel for it.
 
Then with the imaged SD card power it up while depressing the reset button.  If you do it right it will boot from the SD card.
 
Once you have configured the SD card a cold reboot will always boot the OS from the SD card.  If you remove the SD card and boot the device it will go back to the Android system.
 
Step 1  Unplug the box from power. I always leave the power socket connected to the outlet and remove the power from the rear of the box. You’ll find out why when you need to perform the reset yourself.

Step 2  With the power disconnected place the toothpick inside the AV or SPDIF port on the rear of the box. If you gently press down you’ll feel a small button.

Step 3  With the power still off gently press down on the button until you feel it depress. It’s a noticeable depression when you press it. It feels a bit like a click when pressing down.

Step 4  While holding the button down connect the power up again. Continue to hold the button down

Step 5  Keep holding the button until after the logo appears. The logo will go off the screen. When this happens release the button.
 
Later on you can write a Linux OS to the emmc 16Gb card.
 
You should not be having any issues writing to the SD card with Etcher in Windows or Linux unless you have a bad card.
 
If you want to you can also write a pure K OS on it in Linux (newest 18.1 K).  Note here I have always run K in Linux and never have run it in Android.  That is me though.  The Android shipped with KODI boxes here are giving KODI a bad name.  Even the KODI authors prefer to run KODI in Linux.
 
When running pure KODI there are KODI menu options to update the OS et al...very easy to do with just a remote control.
 
Now you can run Netflix and or Amazon AOD via KODI (with a paid subscription).  I prefer to run these on the Kodi box over the built in to the TV features these days.  In fact disconnected my Roku TV from the internet a few months back.  Been running KODI for years now.  Only change to box was for 4K streaming TV which works great now with new generation of TV boxes.
Thanks Pete.
However the problem is not the SD card, imaging, or the reset. The problem is this box seems to have locked out the update process.
 
What happens is I get a bios screen that has about 5 menu options, including some boot from.... selections...Great!
The menu displays instructions to use the Volume Up and Down to select the desired operation and the Enter to select that one.
 
There are no buttons on this box and now the iR remote is non-functional, so no way to complete this. It appears they have made sure nobody can update this without going through Android first. The remote works fine normally with Android/Kodi and the other apps.
 
The box will not recognise any SD card inserted. Android cannot find the SD card and either can the update reset/bios boot loader. Maybe the connector is missing inside the box??? It doesn't feel like it is sliding into contacts. Maybe I need to look. :)
 
With the Android update it seems to be workable except for the load error. That may be another google ownership thing also.
I will try this other file you linked.
 

pete_c

Guru
The box will not recognise any SD card inserted. Android cannot find the SD card and either can the update reset/bios boot loader. Maybe the connector is missing inside the box???
 
Nope.  You will never see any Android when booting from the SD card.
 
ALL of the Android tablets from the beginning will boot from an SD card if present if only to update the Android OS on the eMMC card.  That is a default thing.
 
WHEN you hit the reset button without an SD card then it will go that menu you mention above.
 
Try using win32 disk imager to write to the SD card after you have formatted it a couple of times.  Note the image is zipped so for win32 disk imager you have to unzip it and use the .img file to write to the SD card.
 
There are no buttons on this box and now the iR remote is non-functional, so no way to complete this.
 
It is only the reset button you use as no TV box has buttons on it.  Once in Linux then a wireless or wired USB keyboard works fine.
 
You can use the android remote control just fine in Linux KODI but I do not as it is a piece of crap.
 
The box will not recognise any SD card inserted. Android cannot find the SD card and either can the update reset/bios boot loader. Maybe the connector is missing inside the box??? It doesn't feel like it is sliding into contacts. Maybe I need to look.
 
The reset button has worked now on 5 TV Boxes that I have tested.  When writing the image it writes a two partition image.  You can see the fat partition and configure the boot there somewhat with any computer.
 
If you see any errors writing to the SD card then the card is already trashed.  Only thing to save it is a low level format maybe.
 
I think you can do the same as the SD card with a USB stick (IE: write the OS to the USB stick).
 
Baby steps. 
 
I guess you do feel the reset button with the toothpick now.  It is a PITA that it is inside of the audio port.  Rest of the boxes have a tiny hole on the back for the reset button.
 
What OS are you writing the SD card with? 

I use an old old DOS program to low level format the SD card if need be.

Give it a try. It is a bit slow. It is called HDDGURU. It is very old and works great today on USB and SD cards for me.
 
BTW very first Android (8 years ago??) in wall touchscreen here wrote a new Android OS to it via the little SD card side port.  Note that Android is running in Linux and all of the tablets today are using same style motherboard similiar kernels and chip sets (other than there are faster CPUs, larger eeprom and more ram in them).
 

pete_c

Guru
Googling some more on your box see that if you do not have a reset button anywhere you can get to it...the the other options are:
 
1 - press the remote control menu button while powering on the device or even easier to
2 - short out two traces which are meant to connect to a reset button.
 
reset1.jpgreset2.jpg
 
Note that all of the S802 are old today and almost identically designed.
 

pete_c

Guru
What specific model number is the box?  It is on a sticker with the serial number typically on the bottom of the box.
 
If it is this one then update the original firmware with this firmware even though it is old it should work.
 
Is this your box?
 
hxxps://www.gearbest.com/tv-box-mini-pc/pp_226779.html?lkid=11745242
 
If not take a picture of it and post it here.
 
This firmware is for M8S TV Box with Amlogic S812 CPU
 
However, this model has been out of date, and it is an old version of TV BOX. It has big problem in streaming or playing the latest HD video online. We recommended some hot NEW models for you to avoid potential risks, which come with much improvement in heat dissipation, HD video playback experience, and user experience.
 
Firmware details
Archive: M8S_S812_23072016
Model: M8S TV Box
Image file size: 475MB
Platform: Amlogic S812
Image: n200C-ota-20160723.zip
Build number: Android/n200C/n200C:5.1.1/LMY47V/20160721:user/test-keys
Inside archive: firmware + aml_autoscript + factory_update_param.aml + recovery.img + u-boot.bin
TV Box Manufacturer
 
MXQ Pro 4K Firmware Download, Android 5.1 TV Box
 

pete_c

Guru
Just a picture showing size of TVBox server.  The new box is destined for installation inside of the the Leviton OP2 or 42 inch media can.
 
It will server as an interface to the OmniPro2 combo panel. 
 
Might leave the tiny micro firewall in place that has been running now for a couple of years.
 
It will probably utilize same POE splitter which is providing 5VDC power to the microrouter.
 
TVBoxServer.jpg
 
Next little mini box project is to write the SD card Ubuntu OS over to the 32 Gb eMMC card.  This will remove the current Android OS on the box.
 

pete_c

Guru
12th of May, 2019
 
Just a mention here that Homeseer and Home Assistant are running fine on the Octocore box.
 
Next steps here are to write the OS to the eMMC and removing Android as it is no longer necessary on the box.
 

pete_c

Guru
14th of May, 2019
 
Purchased a tiny Intel TV Box.  Gb NIC and 4Gb of RAM, 64Gb emmc with Windows 10 new for under $100.
 
Going to try to install BSD and Ubuntu on it for making it a micro server.  It is around the same size as the TVBoxes mentioned above except that it uses a quad core Atom CPU chip.
 
I want to compare it to the Octocore Arm CPU which is currently running fine these days.
 
16th of May, 2019
 
Relating to the Intel TV box going to test install Ubuntu on it with an Oracle W7 embedded VB running Microsoft SAPI.
 
 
 

pete_c

Guru
20th of May, 2019
 
Tinkering today with the Intel BTPro device.
 
Spinning a new ISO here with persistence to keep testing.
 
Read about customizing ISO here:
 
hxxp://www.linuxium.com.au/
 
I am using this command to spin a custom LUbuntu Beelink ISO with a 2Gb persistent partition on an 8Gb stick.
Might change this to writing the ISO on a 32Gb SD card instead and increase persistence to 4Gb.
 
isorespin.sh -i xubuntu-18.04.2-desktop-amd64.iso --atom -s 2000MB
 
Noticed a new boot up menu here.  I have used this menu with the testing Jogglers here. 
IE: created one with a triple boot menu for Android, Windows and MAC before. 
 
Bootmenu.jpg
 
With this live test build adding:
 
1 - mono
2 - Oracle virtual box
3 - Windows 7 embedded 32 bit (10 gb partition).
4 - MQTT
5 - Home Assistant
6 - Home Seer
7 - Docker and may be Node Red.

- reducing size of Windows 10 partition.
Originally booted up to Windows 10 and updated it. It increased the size of the partion to around 40Gb.
Reducing it here now.

1 - Using Revo Uninstaller to remove Windows fluff (there is a lot of it)
2 - Reducing the size of the OS using compact commands in Windows command prompt admin mode:
- Compact.exe /CompactOS:query
- Compact.exe /CompactOS:always
3 - making the Hiberfil.sys file smaller or removing it.
- reduced: powercfg /h /type reduced
- remove: powercfg /h /off

Windows $WINDOWS.~BT Folder

This now has grown to 24.2 Gb since updating. Will remove this too.

The $WINDOWS.~BT folder is a temporary folder created by Windows Update, which contains update logs and files downloaded by the Windows update process. By default, the $WINDOWS.~BT folder is hidden. It exists at the root of your system drive.

Option 1: Delete $WINDOWS.~BT Folder Using TakeOwnershipPro - using a third party application
Option 2: Delete $WINDOWS.~BT Folder Using Disk Cleanup - using Windows 10.
- To clean the $WINDOWS.~BT Folder folder, open This PC, right-click your local C: drive and then select Properties from the context menu.
- Click on Disk Cleanup.
- Next click on Clean up system files. It will perform a scan of your computer’s hard drives to determine what files can be cleaned up and how much storage space they use.
- When it is finished scanning the Disk Cleanup program will open again, but this time with some extra options that you can select as shown in the image below. To delete the $WINDOWS.~BT folder you have to check the option labeled “Temporary Windows installation files” or “Previous Windows installation(s)“.

Result of the above got the Windows 10 partition to around 27Gb in size (and around 6 Gb of free space). Shrunk it using Minitools partition manager then move the windows back up partion over so that the free space is at the end of the 64Gb eMMC.

Once this is done will reduce partition to mimimal needed to run Windows 10. I should wipe it but want to keep it going for time bean.
 

pete_c

Guru
21th of May, 2019
 
Resized the Windows 10 partition then had to un resize it and still ran out of disk space for two Windows 10 updates (18.03 and 18.09).
 
The time of updating Windows 10 spanned from yesterday to this morning.
 
Removed excess files and reduced partition to around 22Gb. The built in Windows 10 disk manager would not resize.  Mini Tools partition manager also did not resize.
 
Ended up resized the Windows 10 partition using Linux GParted which worked.  Booting Windows 10 to check it did run a check disk on boot and all is well with the Windows 10 partition.
 
Next installing Ubuntu 18.04 64 bit bit.  Easy plug n play steps.
 
1 - boot to live ISO Ubuntu desktop
2 - click on the install 18.04 icon.
3 - first menu choice is to install Ubuntu with the Windows boot manager - this is what I picked
4 - it automagically saw the free space and started the install on the free space
 
When it reboots you should see the grub boot menu with Ubuntu being the first choice.  You can modify grub to remember which partition boots first.
 
Just edit the grub boot to include the following.


Did updated and dist upgrade and installed openssh-server and created a root password and adjusted ssh configuration to allow for root.

Boots up fast.

I had an issue with sound defaulting to the HDMI port and fixed it with the following:

Blacklist the snd_hdmi_lpe_audio :

Create a file under /etc/modprobe.d with the name blacklist_snd_hdmi_lpe_audio.conf containing a single line: blacklist snd_hdmi_lpe_audio
 

pete_c

Guru
22nd of May, 2019

As of today have a ~ 40 Gb partition running Ubuntu 18.04 64 bit and Windows 10 Home is using around 20 Gb of space on the 64Gb eMMC.

Found another Intel TVBox which is similiar in specs except that it has an SSD drive slot. It is a bit taller than this box but would allow you to add a NAS to the box and still have a small footprint.
 
BTW I would not really consider these Intel boxes for using KODI as GPU specs are so so for running 1080 and not really any good at running HD 4K in Windows or Linux.  The plus pieces are that it is using an Intel CPU with 4Gb of DDR3 RAM and a 64Gb eMMC drive.

Ubuntu 18.04 stuff installed so far is:

1 - Initially updated and upgraded build
2 - installed mosquitto - apt install mosquitto
3 - installed mono-complete and mono-vbnc
4 - installed stunnel apt install stunnel
5 -Oracle VirtualBox 6.0
6 - Windows 7 embedded standard - used 10Gb / 2 Gb of RAM

ICS-BTPro:~# uname -a
Linux ICS-BTPro 4.18.0-20-generic #21~18.04.1-Ubuntu SMP Wed May 8 08:43:37 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

ICS-BTPro:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.2 LTS
Release: 18.04
Codename: bionic

CS-BTPro:~# mono -V
Mono JIT compiler version 5.20.1.19 (tarball Thu Apr 11 09:02:17 UTC 2019)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com

ICS-BTPro:~# stunnel
[ ] Clients allowed=500
[.] stunnel 5.44 on x86_64-pc-linux-gnu platform
[.] Compiled/running with OpenSSL 1.1.0g 2 Nov 2017
[.] Threading:pTHREAD Sockets:pOLL,IPv6,SYSTEMD TLS:ENGINE,FIPS,OCSP,PSK,SNI Auth:LIBWRAP

ICS-BTPro:~# mosquitto
1558531306: mosquitto version 1.4.15 (build date Wed, 13 Feb 2019 00:27:01 +0000) starting

ICS-BTPro:~# df -l
Filesystem 1K-blocks Used Available Use% Mounted on
udev 1960156 0 1960156 0% /dev
tmpfs 396528 1524 395004 1% /run
/dev/mmcblk0p5 35907196 18646688 15406812 55% /
 

pete_c

Guru
22nd of May, 2019
 
For LUbuntu desktop sharing here prefer to use Vino rather than XRDP.  Only thing is that the Vino desktop sharing configuration is not included in LUbuntu 18.04.
 
The vino project removed vino-preferences in version 3.0 to integrate better with gnome-control-center, which leaves us with no graphical way to configure it under XFCE.  We will need to use the gsettings command line tool to change the preferences, for convenience, these are the preferences that were exposed in vino-preferences:
 
So to make it work you need to do the following:
 
1 - SSH log in with user and x windows
 
ssh -Y [email protected]
 
2 - sudo update
 
3 - sudo apt install vino
 
4 - using gsettings

#
# Display all the preferences
#
gsettings list-recursively org.gnome.Vino#
# [x] Allow other users to view your desktop
# NOTE: This setting was removed
#
gsettings set org.gnome.Vino enabled true#
# [x] Allow other users to control your desktop
# NOTE: Reverse Boolean
#
gsettings set org.gnome.Vino view-only false#
# [ ] You must confirm each access to this machine
#
gsettings set org.gnome.Vino prompt-enabled false#
# [ ] Require the user to enter this password
#
gsettings set org.gnome.Vino authentication-methods "['none']"
gsettings set org.gnome.Vino vnc-password keyring#
# [x] Require the user to enter this password
#
# Step 1. Ask for password (NOTE: Only tested with `bash` and `zsh`)
echo -n "VNC Password: " && read -s password < /dev/tty && echo ""
# Step 2. Set the preferences
gsettings set org.gnome.Vino authentication-methods "['vnc']"
gsettings set org.gnome.Vino vnc-password "$(echo $password | base64)"
# Step 3. Clear the `$password` variable
unset password#
# [ ] Automatically configure UPnP router to open and forward ports
#
gsettings set org.gnome.Vino use-upnp false#
# Show Notification Area Icon
#
# ( ) always // Always
# (o) client // Only when someone is connected
# ( ) never // Never
#
gsettings set org.gnome.Vino icon-visibility client

5 - Disable encryption (optional)
 
sudo gsettings set org.gnome.Vino require-encryption false
 
6. Activate at startup - first as it will not be on your desktop create a desktop icon for it.
 
sudo cp /usr/share/applications/vino-server.desktop /etc/xdg/autostart/vino-server.desktop
 
xfce4-session-settings
 
sessions.jpg
 
 

pete_c

Guru
24th of May, 2019

BTW noticed today that the Hubitat (which I got last week) looks like a modified TV Box. I have read on the Hubitat forums that it is a modified TV box.
 
Switched off primary HS3 Lite and enabled testing HS3 Lite on new Intel TV Box. 

Plugin's enabled on HS3 Lite are Omni HS3 Plugin, ZWave, X10 and MQTT.
 
On primary HS3 lite box disabled HS3 and HA (docker stop HA and Omnilink Bridge). 
 
Will import current configuration to new box using Linux file manager and sftp.

TX9:/opt# ls
HomeSeer
OmniLinkBridge
home-assistant
HomeSeerBU
containerd
omnilink-bridge

@ICS-TX9:/opt# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

3b11fccdec52 omnilink-bridge "mono OmniLinkBridge…" 4 weeks ago Up 2 days omnilink-bridge
0dab29ac1d1b homeassistant/aarch64-homeassistant:latest "/bin/entry.sh pytho…" 4 weeks ago Up 2 days home-assistant

[email protected]:/opt# docker stop home-assistant
home-assistant

[email protected]:/opt# docker stop omnilink-bridge
omnilink-bridge

 
1 - configuring OmniLinkBridge and will import current configuration from old to new box
2 - importing current HA configuration from old to new box
 
hhtop.jpg
 
wwebmin.jpg

 
~ 70 % use of eMMC.
 

pete_c

Guru
24th of May, 2019
 
Copied old /opt/home-assistant/config to new /opt/home-assistant/config
 
Built new OmniLinkBridge on new box per instructions here: hxxps://github.com/excaliburpartners/OmniLinkBridge

1 - Clone git repo and build docker image

git clone hxxps://github.com/excaliburpartners/OmniLinkBridge.git
cd OmniLinkBridge
docker build --tag="omnilink-bridge" .
 
2 - Configure at a minimum the controller IP and encryptions keys. The web service port must be 8000 unless the Dockerfile is changed.
 
mkdir /opt/omnilink-bridge
cp OmniLinkBridge/OmniLinkBridge.ini /opt/omnilink-bridge
vim /opt/omnilink-bridge/OmniLinkBridge.ini
 
3 - Start docker container
 
docker run -d --name="omnilink-bridge" -v /opt/omnilink-bridge:/config -v /etc/localtime:/etc/localtime:ro --net=host --restart unless-stopped omnilink-bridge
 
4 - Verify connectivity by looking at logs
docker container logs omnilink-bridge
 
5 - stop docker container omnilink-bridge
 
6 - tftp copy old configuration to new configuration.
 

pete_c

Guru
24th of May, 2019
 
1 - using loopback addresses for Home-Assistant configuration and OmniLinkBridge configuration
2 - tftp copy of /etc/stunnel /etc/stunnel for certs and configuration
3 - enabled stunnel4 (edit start up file)
cd /etc/default
nano stunnel4

# Change to one to enable stunnel automatic startup
ENABLED=1
FILES="/etc/stunnel/*.conf"
OPTIONS=""
4 - save
5 - reboot
 
6 - ssh'd back to box
7 -
 
[email protected]:/opt# docker start omnilink-bridge
omnilink-bridge
[email protected]:/opt# docker start home-assistant
home-assistant
 
So now we have running Homeseer 3 and Home-Assistant on Beelink BTPro 3.
 
Validated functioning HS3 and HA and HA Alexa scripts to work fine.
 
Note: here utilize STunnel4 for gmail via loopback address for Homeseer and OmniLinkBridge.
 
HTOP and Webmin stats with HS3 and HA and STunnel and Docker and Mosquitto running.
 
hhtop.jpg
 
wwebmin.jpg
 
Top