User Tools

Site Tools


doc:appunti:hardware:tanix_tx5

Tanix TX5 Android TV Box

In the past I purchased some Android TV boxes like the MXQ (based on the Amlogic S805) or the X96 Mini (based on the Amlogic S905W). I liked the ability to have low-cost hardware to run CoreELEC or LibreELEC on, primarily for playing multimedia videos from local storage and occasionally streaming videos from some free sources.

As you can imagine these devices in my possession were dedicated to running the Kodi media player all the time, so I wasn't interested in the plethora of Android features that the devices came with with the stock firmware. This is why I have always used these Amlogic devices by flashing (or installing onto an SD card) the CoreELEC or LibreELEC firmware, ignoring the factory one. This had the added benefit that performance was perfectly adequate despite the low-end hardware.

In December 2025, I was contacted by email by an employee of Oranth Technology who proposed a collaboration: they would provide me with a sample of their Tanix TX5 Android TV Box and I would write a review on my website. I usually write scattered notes on items I personally purchase, but this time I'll have to do a thorough and accurate job of recognizing the gift I was given.

I will try to explore both the features offered by the factory-installed software (Android Google TV), and the possibility of getting rid of the proprietary Google software and installing a free, open source operating system to run Kodi.

Specs

I applied a factory reset from the Recovery menu:

SoC Amlogic S905Y5
CPU Quad Core ARM Cortex-A55 CPU (ARMv8)
GPU Mali G31TM MP2
RAM memory 3.6 Gb
NAND Storage 32 Gb
Android TV OS 14.0.0 API level 34
O.S. Architecture 32 bit armeabi-v7a
Build number qurra-userdebug 14 UD2A.240505.001.w1
eng.fjq.20251111.100710 test-keys
Security patch level June 5, 2025
Linux kernel 5.15.170
Power supply Coaxial plug 2.1×5.5 mm - 5 volt, 2 ampere

From the terminal you can confirm that the Android TV OS is 32bit, despite the CPU is 64bit capable:

# getprop ro.product.cpu.abi
armeabi-v7a
# getprop ro.product.cpu.abilist
armeabi-v7a,armeabi
# cat /proc/cpuinfo
...
model name      : ARMv8 Processor rev 0 (v8l)

Ports and connectors

Back connectors Side connectors

Ethernet Network DHCP client

Once connected to an Ethernet network, the device attempts a DHCP configuration using the following MAC address prefix:

MAC Prefix Vendor
02:22:50 No assignment

The device attempts bot an IPv4 configuration and a ICMP6 neighbor solicitation.

Google TV app

The default home screen is the Google TV app. The app is very annoying because it wants to force you to login into a Google account whenever you select the Set up Google TV option. If you choose the Cancel option a bastard and surreptitious message appears: Unplug the ethernet cable to continue. So if you want to use the box as a media player of your locally stored media, you are forced to have an home app which continously ask you to login in its very privacy-unfriendly cloud.

Fortunately enough if you long press the Home button on the remote, you can access an app list, where you can find Kodi, a couple of file browsers and the subscreen with all the other installed apps.

YouTube app

YouYube sign-in Once launched, also the official YouTube app try to forces you to log-in into one account to access contents. The procedure using only the remote control did not work, I had to use the QR code shown on the screen and a separate device (my smartphone) to connect the account.

Installing app from F-Droid: the Termux terminal

I tried to use the TV box witout adding a Google account, because I want the device to be free as much as possibile. Being without an account, I cannot install apps from the Google Play. The F-Droid repository is my preferred alternative.

The first goal is to have a terminal application and Termux is actually the best choice.

  1. Attach an USB keboard for easy typing.
  2. Pressing the mouse button on the IR remote control the mouse pointer appears on the scree, you can move it with the directions pad.
  3. Run the Chrome browser and visit the F-Droid repository.
  4. Download the F-Droid app an run it (the File manager can install foreign apps).
  5. Update the repository list into the F-Droid app, search and install the Termux app.

Root access

The unit I was provided with, has root access enabled. Into the Termux window I execued the su command and it succeeded!

Remote control

Remote control

Remote control microphone

The remote control uses infrared signal to control the device and is equipped with a microphone that connects as a Bluetooth device. The first time that you press the microphone button on the remote, the Android operating system invites you to pair the microphone.

Paring the Bluetooth remote

Enabling the Android developer options

It is possibile to enable the developer options in the Tanix Android TV OS: go to SettingsSystemAbout and tap seven times over the Android TV OS build. Then you will find the new item into SettingsSystemDeveloper options.

Among the other options, there are:

  • OEM unlocking ⇒ Bootloader is already unlocked
  • USB debugging ⇒ Can be enabled
  • Wireless debugging ⇒ Disabled, cannot enable it

Android adb over USB

The device does not announce itself as an Android device on the USB ports. Running the adb tools on the attached GNU/Linux PC does not show any:

adb  devices
List of devices attached

Android adb over Ethernet

On the Android device

su
setprop service.adb.tcp.port 5555
stop adbd
start adbd

On the PC:

adb connect 192.168.33.47:5555
adb shell

You will get the root prompt:

qurra:/ # 

The service setting on the Android device does not survive a reboot, nor the connection on the PC.

Problems with the adb shell over Ethernet

Using the adb shell over Ethernet I experienced several problems, it appears that the process is killed both when using simple interactive commands and when copying files.

root@firewall:~# adb push test-movie.mkv /sdcard/Movies
[  4%] test-movie.mkv
adb: error: failed to read copy response
test-movie.mkv: 1 file pushed, 0 skipped. 12.6 MB/s (523164782 bytes in 39.621s)
adb: error: failed to read copy response

Closing all the apps on the Tanix device seems that makes the adb a bit more reliable, but it is really unstable and unreliable.

Security and privacy

The device comes with an Android version which is not certified by Google. Look from the app Google PlaySettingsAboutPlay Protect certification; you can read Device is not certified. It's obvious that it can't be: the device is rooted and has an unlocked bootloader.

The main consequence of the lack of Play Protect certification is that Google apps on the device aren't licensed and aren't real Google apps, they are side-loaded. This means e.g. that they can't go through the standard process of app upgrade.

By default all the installed apps are granted with very powerful and harmful permissions, e.g. Install unknown apps, Allow access to manage all files, Allow display over other apps and Can modify system settings. See:

  • SettingsPrivacySecurity & RestrictionsUnknown sourcesInstall unknown apps
  • SettingsPrivacySpecial app accessAll file accessAllow access to manage all files
  • SettingsPrivacySpecial app accessDisplay over other appsAllow display over other apps
  • SettingsPrivacySpecial app accessModify system settingsCan modify system settings

With all that power to apps, I feel more uncomfortable due the automatic updates enabled for the system and the apps. It seems that the former cannot be changed, only the later:

  • SettingsSystemAboutSystem update (cannot turn off automatic updates)
  • Google PlaySettingsAuto-update apps ⇒ change to Don't auto-update apps

It is not clear if some privacy-unfriendly options are enabled. E.g. the Automated Content Recognition (ACR) is enabled or not. To be on the safe side check this setting:

  • SettingsPrivacyUsage & diagnostics: turn it off

Default Tanix account

At first boot the device had an account configured on the Tanix network, which disappeared after a Recovery Facoty reset.

Kodi

Factory installed is Kodi 18.5 Leia. The installation folder reachable via adb shell terminal is /sdcard/Android/data/org.xbmc.kodi/files/.kodi/.

The main problem with Kodi Leia is that it ships with Python 2.7, whereas all the modern add-ons are written in Python 3.x, which is available only from Kodi 19 Matrix onward.

I tried to install some video add-ons, e.g. the YouTube add-on and the Rai Play add-on (Italian radio and television), but unfortunately they didn't work.

For the YouTube add I downloaded version 6.8.25, the last one that is available from the repository for Kodi 18.5 Leia. Then I copy-pasted the Google API keys into the userdata/addon_data/plugin.video.youtube/api_keys.json file and executed the two sing-in procedures using the codes to be inserted into google.com/device URL. But you can imagine that version 6.8.25 no longer works with the YouTube service.

Using the Rai Play add-on I got always the HTTP Error 404: Not Found error in temp/kodi.log. The add-on version installed from the repository is 3.5.1, On my other Kodi installations the version that is working is 4.1.2 instead (which requires Python 3.x).

Then I tried Kodi as a local files player only, both copying files on the internal memory /sdcard/Movies/ and accessing files via a SMB/CIFS share…

Upgrading Kodi to 21.2 Omega

The Kodi app installed from factory is customized by Tanix, the name is changed in TV Center and also the icon differs from the official one. Fortunately enough it is possible to uninstall it; just go to SettingsApps and find TV Center and uninstall it.

It is not possible to just upgrade the app from the Google Play or F-Droid, because the app is custom and the signing key differs from the ones used by the Google or F-Droid packages.

I download the Kodi F-Droid version 21.2 (2102000) for the armeabi-v7a architecture, saved it into /sdcard/Download directory and installed it from the simple file manager app. I downloaded the apk file from the web site; I don't know why I was unable to install it directly from the Google Play or F-Droid app manager; both them did not offer me the option to install version 21 of Kodi.

NOTICE The Tanix TX5 has an ARMv8 Processor, so I first tried the package for the arm64-v8a architecture available on F-Droid, but the installer refused to install it. Instead, the package for armeabi-v7a did install correctly. This is because the operating system is indeed 32 bit.

With the new version of Kodi it was possibile to install the YouTube add-on and make the Google registration procedure (copying the API keys into the settings and registering the device on google.com/device). Also the Rai Play add-on is woring.

Tanix Calling Home

On the device there is process named com.oranth.deviceinforeport which tries constantly to call (home?) the IP address 192.168.199.215 on port 8089. Port 8089 is knwon to be used by the Splunk server (which main purpose is to collect and analyzes high volumes of machine-generated data). Neverthless address 192.168.199.215 belongs to a Iana reserved private block and it should not route on the internet.

It seems that the address 192.168.199.215 is hard-coded into the software, because no DNS query is performed by the device that resolves to that address.

Recovery Mode via toothpick method

  1. Unplug the power from the device.
  2. Connect a screen to the HDMI socket.
  3. Connect an USB keyboard and/or an USB mouse (mouse required for some recovery, e.g. TWRP).
  4. (Optional) insert the SD card with the recovery.img on its root directory (FAT32 format).
  5. Insert a toothpick into the A/V hole, and push it untill you feel the click of a microswitch.
  6. Keeping the toothpick pressed, insert the power plug.
  7. Wait until you see the recovery screen (about 15 seconds).

Web References

doc/appunti/hardware/tanix_tx5.txt · Last modified: by niccolo