Amazon Fire TV

From Official Kodi Wiki
Revision as of 13:20, 30 October 2014 by Gamester17 (talk | contribs) (→‎Links)
Jump to navigation Jump to search
Amazon Fire TV
Amazon Fire TV.jpg
Manufacturer Amazon.com
Released 2014-04-02 (US)
OS Fire OS 3.0 "Mojito" (Based on Android)
CPU Qualcomm Krait 300, quad-core to 1.7 Ghz
Storage 8 GB internal
RAM 2 GB RAM
Display 1080p
Graphics Qualcomm Adreno 320
Connectivity HDMI, Bluetooth 4.0, USB 2.0, Wifi (802.11n), 10/100 Ethernet, Optical audio, CEC
Dimensions 115 × 115 × 17.5 mm (4.53 × 4.53 × 0.69 in)
Amazon Fire TV ports
Home icon grey.png   ▶ Devices ▶ Android ▶ Amazon Fire TV

Amazon Fire TV is an Android-based (Fire OS) set-top-box that contains a very powerful ARM processor (that can even handle some of the more heavy XBMC skins). Fire TV stands above some of the other Android-based offerings due to Amazon's strong product support and because it contains more remote friendly versions of Netflix, Amazon Prime Video, and other video service clients, making it a good pairing with XBMC.

Builds

Official Builds

XBMC 13.2 Gotham for Android (ARM)

Other builds

  • SPMC - SPMC is an experiential fork of XBMC and sometimes contains special fixes that are not yet in the official builds. Users who are unsure of which version to use should normally try out the official XBMC/Kodi builds first and see how it runs, and if they have issues then try SPMC.

Installing

General Steps

  1. Setup the ADB Utility via OS-specific instructions below, or install the Android SDK for your platform: https://developer.android.com/sdk/index.html
  2. Follow these instructions to connect ADB to your Amazon Fire TV: https://developer.amazon.com/sdk/asb/connect-adb.html
  3. Follow these instructions to install the XBMC app onto the Fire TV (using the ADB tool): https://developer.amazon.com/sdk/asb/app-install.html

Setup ADB on Your Host

Note: Your host must be connected to the same network as your Fire TV..

Windows

OS X

Linux

Android

adbFire

Amazon FireTV Utility App

A Windows based GUI app to easily sideload your apks to the Amazon FTV. Most of the wiki has been automated into this app so anyone that doesn’t want to mess around with Shell commands will find this helpful.

Download website link: http://goo.gl/woVu0s

1. Unzip the folders to "C:\FTV"

2. Launch app "Amazon FireTV Utility App.exe"

Enable USB Debugging on the Fire TV

  1. From the Fire TV Home screen, select Settings
  2. Go to System -> Developer Options
  3. Select ADB Debugging to turn it ON
  4. Go to System -> About -> Network, and take note of the Fire TV's IP address

Install XBMC to the Fire TV

Note: If your APK file name contains spaces, make sure you put quotes around it in the adb commands. On OS X and Linux, you may need to prepend ./ to the adb commands.

  1. On your host (PC or other Android device), download your desired XBMC APK
  2. Open a Command Prompt (Windows), Terminal (OS X/Linux), or Terminal Emulator app (Android)
  3. Navigate (CD) to the directory with your XBMC APK (In Terminal Emulator on Android you only need to run the adb commands)
  4. Run the following commands
    >adb kill-server
    >adb start-server
    >adb connect <ip-address-of-fire-tv>
  5. ADB is connected when it reports the message "connected to <ip-address-of-fire-tv>:<port>"
  6. Run the following command
    >adb install <apk-file-name>
  7. Installation is complete when it reports the message "success"

(Note: For Android you need to type in the full path. e.g. >adb install /sdcard/Download/apk-file-name.apk)

Launch XBMC on the Fire TV

  1. From the Fire TV Home screen, select Settings
  2. Select Applications
  3. Find and select your XBMC installation (it may be named "XBMC" or "SPMC")
  4. Select Launch Application

Note: Users have reported that you can autostart XBMC after boot using an Android automation apps such as Tasker, AutomateIt, or Llama. Alternately, you can use Autopilot to autoboot to XBMC.

Launching XBMC from Fire TV Homescreen: You can also have Llama (and probably others) launch XBMC when a native Fire TV app like Flixter is launched from the Fire TV homescreen. Some apps work better than others.

Upgrading XBMC

XBMC can be upgraded through ADB without losing your settings. To do this, you must use a newer version of the package already installed on the machine.

  1. Download the package to your machine
  2. Make sure ADB is connected to the Fire TV
  3. Run adb install -r <apk-file-name>
  4. Installation is complete when it reports the message "Success"

XBMC will still go through the "first run" screen the first time it is launched but your settings will remain intact.

Downgrading XBMC

If you wish to downgrade your version of XBMC (because you installed a test version that didn't work properly, for example) and keep your settings, the following commands will allow you to do so.

adb uninstall -k org.xbmc.xbmc
adb install <apk-file-name>

If you are downgrading using an Android device, you will need to use the "shell" command.

adb shell pm uninstall -k org.xbmc.xbmc

Root the Fire TV

Quick instructions on how to root can be found here: How to Root the Amazon Fire TV.

Bypassing Amazon Home

Sleep while XBMC is Open (Requires root)

By default, the FireTV will not sleep when XBMC is the active application. User elmerohueso has provided a screensaver that will put the FireTV to sleep or log off an XBMC account after a certain amount of time for rooted boxes only. You can download the repo here. In short, you need to adb push the zip file to your FireTV, Install Addon from Zip file, then Get Addons, choose elmerohueso's repo and install the Android Power Options screensaver. Then go to XBMC Settings -> Appearance -> Screensaver and select it as your screensaver. Go to screensaver settings and run the 'Check SU Permissions' and Grant if a popup appears. If you are not rooted this will not work. Then you can modify the settings further.

FiredTVLauncher

Function
  • An alternative 'launcher' that will load when you push the Home button (after a brief delay/display of the stock launcher)
  • Similar to the Llama steps below but with the ability to easily go back to the stock launcher
  • Provide easier access to ALL sideloaded apps without multiple Llama events
Download

https://github.com/Redth/FiredTVLauncher

Llama (automation) Events

There are (2) methods below. The first one's goal is to keep access to Amazon content. When pressing Home you need to wait 15s before the screen turns off, which you then press a remote button to turn the FireTV back on which boots into XBMC. The second method's goal is to force you back into XBMC the instant you press the Home button, thus effectively losing the ability to access Amazon content.

Semi Bypass
Complete Bypass

Xposed and rbox module (Requires root)

So far this is the cleanest method to have XBMC as your launcher on the Fire TV.

Function
  • retain access to Amazon content
  • automatically start XBMC when the Fire TV boots
  • automatically open XBMC when the Home button is pressed
If you exit XBMC, and XBMC is your default launcher it will just reopen. You must set a shortcut/favorite to KFTV Launcher to get back to the Amazon home.
Prerequisites
  1. Root your FireTV
  2. Sideload Xposed
  3. Sideload rbox Fire TV Mods
  4. Sideload XBMC Launcher (a secondary Launcher app that will launch XBMC) or SPMC (a modified build of XBMC 13.2 with Launcher functionality already built in, as well as some other tweaks)
  5. Uninstall all launchers you may have previously installed.
It may be in your best interest to use ES Explorer with Root Explorer enabled (on the menu on the left side, scroll down) because some launchers do not show up in the Application list.
After clicking Root Explorer, click 1 click uninstall, navigate over to your application and long press on the application you want to uninstall until a checkbox appears over it. Navigate down to the bottom right More -> Properties -> Uninstall
Setup
  1. Launch Xposed Installer -> Framework -> Install/Update -> Allow Reboot
  2. Launch Xposed Installer -> Modules -> Activate Fire TV mods by using a USB mouse to click the checkbox (using a remote will not work)
  3. If pressing the Home button does not launch XBMC, you may need to reboot or manually launch XBMC Launcher
  4. In XBMC, temporarily set Confluence as your skin. Go to Programs -> Android Apps and press the menu button on KFTV Launcher and Set as Favorite. You may now go back to whatever skin you were using and use it's skin settings to put KFTV Launcher on your main menu and rename it as necessary.

Launch XBMC from an Existing App on the FTV Home Screen

There is a alternative way to invoke XBMC from the FTV Home Screen using Llama. This method uses a “sacrificial” app that you have installed from Amazon that you will use to access XBMC. The app can be anything you have installed but don’t need to use; however, some apps behave better than others (some apps will enter a loop when exiting XBMC). One app that has been tested and works well for this purpose is “Classic TV”.

The advantage of this method is that using the sacrificial app you have Home Screen Access to XBMC and you can exit XBMC to the FTV Home Screen just as you would any other FTV app.

Prerequisites

  1. Llama side loaded on your FTV.
  2. The app called “Classic TV” from the Amazon app store.
  3. One Llama Event (described below).

Procedure

  1. Install / side-load Llama.
  2. Install “Classic TV” app from Amazon app store.
  3. Launch Llama (From FireTV - Settings > Applications > Llama > Launch Application).
  4. Go to EVENTS on top menu and click '+' to add a NEW EVENT.
  5. In your NEW EVENT select ADD CONDITION then, from the Menu select 'Active Application' and select 'Choose App’. Scroll through the list of apps until you find “Classic TV” and select this app. Doing this should return you to the Events Menu.
  6. Next, select ADD ACTION and select 'Run Application' from the Menu list. From here, select whatever the name of your XBMC build is. That should create your event. At this point you can also name your event to distinguish it from others.

Now when you start the “Classic TV” app from the Home Screen, it should automatically open XBMC. Feel free to experiment with other apps from the FTV app store. Just be aware that some will loop back and re-start XBMC when you try and exit XBMC to get back to the FTV Home Screen.

Launching Android Apps within XBMC

FTVXbmcAndroidApps.png
  • In Gotham builds, it is possible to launch Android Apps from shortcuts on the main menu.
  • It is recommended to use the Confluence skin, go to Programs, then Android Apps and favorite any applications you would like to launch from XBMC.
  • Skins like Amber allow you place custom shortcuts on the main menu to these favorite items.
  • In Frodo builds you can only launch these apps from going into Programs -> Android Apps. They will not launch when put onto the main menu.


NOTE: For skins that allow you to add "Favorites" to the main menu, if you add an App to favorites then uninstall that App you should make sure to remove that App from favorites first. If you uninstall an App that you have added to favorites and don't remove it from favorites first it may cause XBMC to crash.

If this happens, reinstall the App you uninstalled, then launch XBMC and remove it from favorites. This will stop XBMC from crashing.

Copying files

Copy userdata settings (optional)

Run XBMC at least once to initialize the userdata folder on the Fire TV

Copying from PC to Fire TV
Copy files to Fire TV userdata folder using adb push <local> <remote>
  • For example, to copy advancedsettings.xml from your local folder to your Fire TV XBMC userdata folder:
    >adb push advancedsettings.xml /sdcard/android/data/org.xbmc.xbmc/files/.xbmc/userdata
where org.xbmc.xbmc is replaced with your package name such as tv.ouya.xbmc (XBMC for Ouya) or com.semperpax.spmc (SPMC)
Copying files from Fire TV to PC
Copy files from Fire TV userdata folder using adb pull <remote> <local>
  • For example, to copy advancedsettings.xml from your Fire TV XBMC userdata folder to your local folder:
    >adb pull /sdcard/android/data/org.xbmc.xbmc/files/.xbmc/userdata/advancedsettings.xml

You can use adb shell to open a remote shell on the Fire TV. Use standard Linux commands such as cd and ls to navigate the file structure. Type exit to exit adb shell.

See userdata folder for more information on the contents of the userdata folder.

Update Splash Image (optional)

Run XBMC at least once to initialize the userdata folder on the Fire TV

  • If the splash image file is splash.png, you can run the following command to copy the file to Fire TV (you may need to update the folder name):

For XBMC on Ouya

>adb push splash.png /sdcard/Android/data/tv.ouya.xbmc/files/.xbmc/media/splash.png

For Gotham

>adb push splash.png /sdcard/Android/data/org.xbmc.xbmc/files/.xbmc/media/splash.png

Fire TV splash images:

  • Non-version specific
  • Version specific

Note: The "Non-version specific" splashscreens can also be applied using elmerohueso's "XBMC Tweaks for FTV" program addon, which is available from elmerohueso's XBMC repo.

Controls

Installing Alternative Keymaps

Copy key map and paste in Notepad, Save as "Keyboard.xml" Download ADBFire from http://jocala.com/adbfire.html Once installed use Push/Pull/Delete drop down menu select Keymap and click Push. Navigate to your xml file you created earlier and that's it. Be sure to restart XBMC if opened

Bluetooth remote

To make the remote work with XBMC's on-screen-keyboard, go to XBMC -> Settings -> System -> Input devices and enable Remote control sends keyboard presses

Note: For slightly improved keymaps for the Fire TV remote, see Alternative keymaps for Fire TV remote.

Button Global action Fullscreen video action Amazon Fire TV remote.jpg
3 Directional pad:
  • Up
  • Down
  • Right
  • Left
Directional pad:
  • Up: Next chapter or go forward 10 minutes
  • Down: Previous chapter or go back 10 minutes
  • Right: +30 seconds
  • Left: -30 seconds
4 Select On-screen-display menu
6 Context menu Playlist
8 Play/pause Play/pause
9 Back Back out of fullscreen video (does not stop playback)


To reboot the Fire TV with the Bluetooth remote, hold Play/Pause (8) and Select (4) for 5 seconds.

CEC

People are reporting that the Amazon Fire TV has basic CEC support. Reported working keys are UP, DOWN, RIGHT, LEFT, SELECT, PLAY and PAUSE (depending on the TV brand).

USB

USB port allows for various additional remote types, such as FLIRC, various RF dongles, etc. Most of these devices will show up as a keyboard type input.

USB Keyboards

  • Logitech DiNovo Edge keyboard works, but touch pad and media keys do not work. DiNovo Edge doesn't have a menu key.
  • IOGEAR GKM561R wireless keyboard/mouse combo works (although Shift/Capslock does not in 12.x, apparently an issue addressed on Gotham)
  • FAVI Entertainment SmartStick Wireless Keyboard with Touchpad Mouse, FE02RF-BL
  • See keyboard controls for how to control XBMC using a keyboard. Additional Fire TV controls goes as followed:
Key Action
F11
or "browser search"
media key.
Voice Search (Does not send mic audio)
F12 Fire TV home screen
Esc Fire TV back button
Ctrl+Esc
or "Menu" (to the right of the Windows key on the right side)
Fire TV menu button
Alt+Tab  Recent App
Ctrl+Alt+Delete System reset


USB Infrared Remotes

MCE (IR) remote - 2nd generation works. Turn on the Fire TV after plugging in the IR receiver and it should work. You can also use a logitech Harmony remote to work with the IR dongle itself

Unbranded MCE remote

Two versions, the cheaper verson is available online for around 4 dollars - HARMONY:Chinavasio​n CVSB-983

VRC-1100

This remote is available online for about 15 dollars - HARMONY:ortek avr-1100

USB Gamepads

  • Logitech F710 Wireless Gamepad (uses a small USB dongle)
  • Xbox 360 wired gamepad
  • Xbox 360 wireless gamepad works if you use the Wireless Gaming Receiver for Windows

Flirc

The rewind, fast forward, and play/pause keys on the Fire TV controller operate the same as a keyboard's media keys. Use the "Media Keys" controller in the Flirc application to set these on your remote. Netflix and Pandora on the Fire TV (and possibly other apps) do pick up the other media keys such as stop. XBMC also picks up these keys.

Esc can be used as the back button. Remapping XBMC's back to Esc would be required to use one button for both commands.

 Menu (the button to the right of the Windows key on the right side on a keyboard) works as the Fire TV's menu button and does not have the issues Ctrl+Esc has. Ctrl+Esc usually results in duplicate keypresses and will sometimes act as just Esc. At this time the Flirc GUI does not have a button to map "Menu" on the "Full Keyboard" controller, but on the command line flirc_util record_api 0 101 can be used.

Basic example using a Harmony One and Flirc:

Remote button Keypress Fire TV action Global action Fullscreen video action Harmony firetv.jpg
1  Menu Menu Context menu Context menu
2 PageUp N/A Page up Page up
3 I N/A Info Info
4 ← Backspace N/A Previous menu OR Home screen Exit full screen
5 PageDown N/A Page down Page down
6 Up Up Step forward 10min OR Next chapter
7 Left Left Step back 30s
8  Enter Select Select Player controls (OSD)
9 Right Right Step forward 30s
10 Down Down Step backward 10min OR Previous chapter
11 Esc Back Back Exit full screen
12 Rewind media key Rewind Rewind Rewind
13 Play/Pause media key Play/pause Play/pause Play/pause
14 Fast forward media key Fast Forward Fast forward Fast forward
15 Previous media key Previous Previous track Step backward 30s
16 Next media key Next Next track Step forward 30s
17 Play/Pause media key Play/pause Play/pause Play/pause
18 Stop media key Stop Stop Stop


For this setup use the following keyboard.xml file.

<keymap>
	<global>
		<keyboard>
			<key id="61656">ContextMenu</key>
			<key id="61467">Back</key>
			<key id="61637">FastForward</key>
			<key id="61636">Rewind</key>
			<backspace>PreviousMenu</backspace>
		</keyboard>
	</global>
	<FullscreenVideo>
    		<keyboard>
    			<next_track>StepForward</next_track>
			<prev_track>StepBack</prev_track>
		</keyboard>
	</FullscreenVideo>
</keymap>

Also note that the Fire TV Home button is a soft key set to F12.

Using the "Flirc, XBMC" profile in Harmony is optional. Using it will get you started with XBMC commands faster, but you will probably also need to change some of the keypresses, which can be done without changing profiles.

Other bluetooth devices

It should be possible to pair other bluetooth controllers and remotes to the Fire TV. Most of these devices will show up as a keyboard type input.

Bluetooth Gamepads

  • Nyko PlayPad Pro
  • Ouya Controller

Uninstall XBMC

  1. From the Fire TV Home screen, select Settings
  2. Select Applications
  3. Find and select your XBMC installation (it may be named "XBMC", "SPMC", or "XBMC on OUYA")
  4. Select Uninstall

Alternatively, you can do the uninstall over ADB with one of the following commands.

OUYA

adb uninstall tv.ouya.xbmc

SPMC

adb uninstall com.semperpax.spmc

XBMC

adb uninstall org.xbmc.xbmc

Known issues

  • VC-1 and MPEG2 (need re-confirmation on MPEG2) are not hardware decoded in XBMC on the Fire TV.
  • USB cannot currently be used for drive storage. The Fire TV can now be rooted and can use USB storage.
  • The fast forward and rewind buttons on the Fire TV remote must be manually configured (see Alternative keymaps for Fire TV remote).
  • A static click or pop may be heard when opening a Dolby Digital file in Gotham. One workaround is to turn off NAVIGATION SOUNDS (Settings > Appearance > Skin) and KEEP AUDIO DEVICE ALIVE (Settings > System > Audio Output). NOTE: This may cause playback issues with DTS-HD or TrueHD files.

Random notes

Feel free to place various notes, tips, and links here. As this section of the wiki gets more organized, those notes will be properly sorted. Consider this like a dumping ground for when you're not sure where to put something.

  • The USB port works with keyboard and mice. If you root the Fire TV then you can also use it for other things such as storage.
  • Debug information in the Fire TV's Netflix app can be accessed by pressing Ctrl+Alt+ Shift+D.
  • Reports are that with MediaCodec off and libstagefright turned on that hardware decoding of MPEG2 is taking place.
  • The FireTV will not go to 'sleep' when XBMC is the active application. In the Gotham builds, you may set the Power Saving -> Shutdown Function to Quit, and choose any time between 5-120 minutes. This will Exit the application after being idle, which allows the FireTV screensaver to run (the screensaver should pop up right when XBMC exits; test this by using the 5 minute Quit timer). This also appears to function correctly and allow the device to sleep even if you are using the Llama settings to always keep XBMC running.
  • You can change the FTV to use non-US Time Zones by using TimeZone Changer.

See also

Links