Introduction
Here's how you can install Android TV on Raspberry Pi 3 and 4. It is
a fairly straightforward job and can be done by pretty much anyone.
By the end of this article, you'll see that you've changed your Raspberry
Pi into a media centre if not a streaming box. Atleast, I use it only for
streaming though.
The streaming is certainly isn't the best, although is very usable. You can
not only do streaming but also various stuffs like playing games, writing
articles (No, I haven't done that yet), keep an eye on your inbox and more.
Summing it up, you can do everything that you'll do on an android TV, if
that makes sense.
However, I wouldn't recommend you to use this as your mainstream Smart TV
since the limitations are too high if you are using on the Raspberry Pi 3, 3B and 3B+.
From the Raspberry Pi4, everything seems to be in the right place.
I will be discussing it at a later part
of this article, so stay tuned. Make sure you have a good internet
connection for download and install this.
I am sure you wouldn't wanna control your Android TV with a wireless
keyboard and mouse. That would, for sure, spoil the experience for you. So,
I will be discussing few ways to control your Raspberry Pi.
Items Required
You'll need the following components in order to continue with the
installation:
-
Raspberry Pi 3/3B/3B+
-
A Keyboard and Mouse (Preferably Wireless)
-
A Thumb Drive
-
5V 2.5A or more rated Power adaptor with micro USB Type-B
Cable
-
A Micro SD Card
-
A Computer with active Internet connection for
installation.
Prelims for Android TV (ATV)
Now, by installing Android TV, I mean to install the TV launcher and
additional functionalities by ourselves along with the Lineage OS. Now, some
of you might want the official AOSP project but I can tell you that this is
far better.
Now most of the AOSP builds are outdated and are not supported by the dev.
And even if you try installing it the old school way, it won't work due to
firmware being too new for the OS to get loaded by Raspberry Pi. For more
about the firmware issues listed here, check out the link here
And our version of ATV is the most optimized for Raspberry Pi than those
AOSP builds. And there's this huge draw-back: Most of the AOSP Builds do
not have DRM certification. How's that gonna hurt you?
Well you can't
watch Netflix or Amazon Prime Video! Most of us would
probably install the Android TV for streaming apps. So downloading this is
the only option we have, at least for now.
And, obviously ours has the DRM
Certification and you can watch TV Shows and movies on it.
These functionalities can be installed as a package by installing the
TV-Stock Package for Android 9 suitable for ARM Architecture. Which is one
of the methods to install Android TV on the Raspberry Pi.
Now, if you're planning to connect the Pi to a bigger screen, say a TV of
55 inch, then you'd certainly lose some performance. The performance was far
better in a 32 inch than TV in a 55 inch LED TV Screen.
Speaking of resolutions and screens, the default resolution is 1280x720.
Now this isn't hardcoded resolution unlike the previous builds. You can
change it by changing the value in /boot/resolution.txt ( I would highly recommend you not to mess up with the
values)
Now you need to have heatsinks and fans for this build as the OS is highly
resource hungry.
I've found both the products in an affordable price. Check it out on
Amazon:
Why do you need a high wattage rated charger?
Running Android TV is a very power consuming one. To meet its power
requirements, you'd have to provide Raspberry Pi more power. Increasing its
power input can increase the Pi's performance and streaming. Doing so will
also save your Raspberry Pi in the long run.
This issue is being considered light, but this is a very vital one. You'd
also need a lot of ventilation for running this OS, since streaming will
consume more power, so more heat generated.
How to install Android TV
So finally let's get our hands dirty.
Instructions
-
Go to Konsta's page for downloading Lineage OS 16.0 (Android 9) by
clicking here
-
Now download the zip file by clicking on the link. It will route
you to androidfilehost.com (Don't worry, it's a
safe website)
-
After downloading the zip, Unzip it using your favourite
software.
-
Now to flash the .iso file to your SD card, we need Balena Etcher,
the most amazing and fast software to flash images onto disks and SD
card. I would highly recommend to use it.
-
If you have Balena Etcher, go ahead, select the iso by clicking the
Flash from file, then select the target device, which is the SD card, and
flash it. It took me just a minute to complete the flashing.
-
If you don't have Etcher, go to the Etcher download page by
clicking here.
-
Then download it and follow the instructions above.
-
Then insert the SD card into the Pi and wait for a few minutes. The
Lineage boot animation will be seen for a few moments.
-
You'll have the setup wizard next. Fill it with appropriate
details and complete the installation.
The job isn't over yet. This doesn't really look like an Android
TV.
There are two ways to make it look like an Android TV:
Download a Launcher
|
This is how Leanback launcher looks. Via XDA |
To make it look like that, we need to install something called a TV
Launcher. What a launcher does is that it controls the look and feel of
you device's home screen So, by installing a TV launcher, we can achieve
the look and feel of an Android TV in our device.
Here's the catch: You do not have access to Google Apps (short named
GApps) if you follow this method. Skip to the next method, if you'd like
to get all the features of the stock Android TV.
To do that:
-
Download the Leanback Launcher (erstwhile Official launcher for
Android TVs) from
here.
-
Copy it in a Thumb Drive and plug it in, in any of the USB ports of
the Pi.
-
Go to Files > Click on yourUSBdevicename in the side menu
located on the left.
- Double click the apk file.
- Allow all permissions from all dialog boxes that pop up.
- Click on install and wait for a few moments.
-
After the installation is complete, click on the home button and the
Home dialog box appears.
- Click on just once for setting Home as Home.
-
You'll see the amazing TV Launcher experience with no apps
installed.
You can install ATV Launcher otherwise, if you want a fast UI. You can
follow the same steps above.
Using the TV-stock or TV-mini Open Gapps Package
So here's it, the otherwise method. The biggest plus point of this
method is that it can give you the exact Android TV functionalities
available.
So this is one step closer to the Android TV experience. Select your
Android version which is 9, Select the architecture, in our case ARM and
select either TV-STOCK or TV-MINI and Click on install.
If you want to have a custom launcher and Google Apps, then select the pico package as it provides the bare minimum functionality of gapps. Which is just Google Play store and play services.
Click
here
to know how to install Gapps in your Raspberry Pi device.
Long story short, Install the Gapps package for your architecture and
your Android version. Then, copy it to a thumb drive. Enable root
options and local terminal and then go to TWRP menu with the help of
couple of commands.
After entering the TWRP menu, insert the thumb drive and mount the USB
partitions. Flash the zip file with the help of the Install button and
Wipe Dalvik after flashing. Wipe the data using wipe button and mount
the system and boot partition after basic wipe.
Get access to the terminal with the help of Advanced button. Type in a
couple of commands and you're good to go with the Android TV. Your data
will be wiped off if you install Gapps.
If TV-Stock or TV-mini doesn't work install pico, the bare minimum
functionality to get Google Play Store and follow the above steps.
Repeating, the catch here is that you'll see your device slow down a
bit.
But, in my case I got few errors while flashing. So I decided to stick
with the 1st method.
The article isn't over yet. If you want the complete android TV
experience, I am sure you wouldn't control your TV with large Keyboard
and mouse!
For Raspberry Pi 4
The process is different for the Raspberry pI 4 though. It is much simpler and easy to do if you have a Raspberry Pi 4. The experience is also much stable in the Pi 4.
Because with the Raspberry Pi 4, you get higher RAM, improved thermals and other good stuff. So, if you want to have a full fledged android tv experience, you should consider buying the Raspberry Pi 4.
Flash it on a thumb-drive, just like we did for the Raspberry Pi 3:
- Download Balena Etcher from https://etcher.io
- Flash the image to the thumb drive using Balena Etcher.
- To do that, Click on Flash from image and choose the Android TV 10 image.
- Click on the Flash device and choose the flash device which is the SD Card.
- Click on Flash and you'll be good to go.
Now that you have a SD Card with Android TV 10, insert it on the SD Card slot of the bottom of Raspberry Pi. Now, turn the Pi and the external display on.
After a while or so, you can see the Android TV setup screen. You can install Google Apps thorough the way I mentioned above. Use the TV Gapps package for this build.
As far sideloading is concerned, it might work the old-school way. The hassle-free way is to use a file explorer with File transfer by FTP enabled. A quick google search can help you in this.
Controlling the Raspberry Pi
To complete the Android TV experience, you'll need to have a remote to
get the gist of it.
Now, there are various ways to do this. I'll mention a few ways here.
Get a small keyboard with touchpad embedded.
Getting a controller like this can be really useful. Infact, this is
the one I would prefer. This device comes with a small keyboard and
touchpad with all required basic controls. Some of the generic
ones comes with a D Pad too. Overall, it can be really good deal if
you can buy it real cheap.
Use a bluetooth remote*
This is by far the most realistic way to get the complete TV
experience. Just the old school way. Go to settings > Bluetooth
> Pair your Raspberry Pi with the remote. Now, for most of you,
this will work if you just pair it. For others, just check out the
remote menu and follow the on-screen instructions.
EXPERIMENTAL: Use the Android TV remote app*
This may or may not work, but I am sure it won't hurt to try this.
Launch the Google Play Store > Type in Android TV Remote >
Install the app.
Connect the Pi and your phone in the same WiFi network or connect
both through Bluetooth, After connecting you'll have to do some setup.
Enjoy the experience later.
*- Works only when used the 2nd method to install Android TV
And that's how you recreate the Android TV experience.
If you want to sideload apps,
here's
an article that shows you how to do it.
Is it really worth it?
Why should you install Android TV?
If you have a Raspberry Pi lying unused, and you probably want to
change your dumb TV into a Smart TV, then installing Android TV is the
perfect choice.
You can either use it as a media center or as a streaming device or
both at the same time is also possible. I personally use it as a
streaming device rather than a media center.
If you are using Raspberry Pi 3B+ or lower, then the performance isn't
very remarkable. But it is completely usable though.
What should you expect?
If you are using it for lightweight Binge-watching, I can easily
recommend it to you. This build is not suited for huge displays( 32
inches works well whereas 55 inches isn't suited well).
The streaming isn't the best but certainly works better than what I
expected. I haven't used it as a media center yet, but I am sure it
could perform well.
How is the user experience?
Streaming is very decent, certainly do not expect much. I've tested
with a few popular streaming apps. As of now, I've found these
limitations. The limitations are as follows:
-
In pretty much all streaming apps, streaming is smooth
until Medium video quality preset. When selected
HD, the video starts to stutter.
-
In SUN NXT, Live TV with the high-quality setting works
fine whereas, for streaming movies, HD starts to stutter.
-
Similarly, for Hotstar medium preset is the maximum quality you can
get without any stutters.
-
As for Prime Video, it doesn't work. We are not aware of the reason
but I will come up with the fix real soon. The app works but the
videos don't play. Not even trailers.
If there are any bugs and problems in other streaming apps, leave a
comment below.
Conclusion
The Android TV on Raspberry Pi is the cheap, and perfect device for
lightweight binge watching. There were so many errors while flashing
this and this was a very amazing experience for me. It's not got the
best of stability but it is very usable.
This opens up the potential of Raspberry Pi, How a small computer can
give really good performance considering the fact that the Raspberry
Pi's got only a gig of ram.
This is not a first impressions review, In fact, I've tested it for
about a couple of weeks and it's got no other flaws.
Overall, it was a decent user experience and is really fun to
use. However, with Raspberry Pi 4 and above, the performance is expected to
be improved.
Stay tuned for more updates.
Very nice post. Very keen to know why prime video doesn't work. It says "something went wrong. Try again later". Very frustrating. Hope there is a solution
ReplyDeleteVery nice post ��. But prime video gives error "something went wrong". Hope there is a solution
ReplyDelete