TiVo Slide

From Kodi
Jump to: navigation, search
The original bluetooth slide shown above. The Slide Pro is pretty much the same form factor and everything, but with a slightly different keyboard layout that is split with a directional pad in the middle.
Attention talk.png Need help? Try asking in this kodi.tv forum thread.

Tivo Slide and Slide Pro were made for use with various Tivo DVRs, but can be used with many Kodi-based HTPCs.

  • Slide-out QWERTY keyboard
  • Backlit keys
  • Bluetooth (original) or RF (Pro) operation for most keys
  • Ability to program some keys (Volume/Power) to use IR to control a TV or AVR's volume, etc
  • The ability to make the remote chime a song to find it if you lose it in the couch


However, the remote does not work completely out-of-the-box with Kodi. This page will describe how to set up the Slide remotes using either Windows or a Linux-based install (such as Ubuntu or OpenELEC).


Note: For the newer Slide Pro remote, you must have the USB dongle for it to work! If you are buying this for the first time, make sure you are ordering the kit that includes the dongle, as it is cheaper than buying separately.

Contents

1 Windows instructions

Editor note: Does someone want to throw in the instructions on how to use Event Ghost with the Slide?

2 Linux instructions

2.1 Setting up the original bluetooth Slide remote

Note: If you have the newer Slide Pro, then you can skip this section.

There are two modes of operation for the original bluetooth version of the Slide.

USB HID Emulation [Recommended]
The dongle presents itself to the computer as a USB keyboard. It uses bluetooth to communicate with the remote, but does not expose bluetooth to the computer in any way - it is just a USB keyboard.
Bluetooth Device [Not Recommended]
The dongle presents itself to the computer as a bluetooth adapter. Through this adapter, you can connect to the remote as a bluetooth keyboard. This setup has been problematic, and therefore is not described here.


Configuring which mode is a bit of a mystery. Simply plugging into a Ubuntu machine seems to put the dongle into bluetooth adapter mode. In order to force it into USB HID Emulation mode, you need to completely disable bluetooth on the computer, as described below.

2.1.1 Disable Bluetooth

Disabling bluetooth is necessary to force the dongle into USB HID Emulation mode. There may be another way to do that, but so far this is the only method discovered. From a command line, issue the following commands:

sudo apt-get remove bluez
sudo apt-get remove blueman
sudo sh -c "echo 'blacklist btusb\nblacklist bluetooth' > /etc/modprobe.d/blacklist-tivoslide.conf"
sudo reboot -now

2.1.2 Pair Remote and Dongle

You can now pair the remote with the dongle as described in the manufacturer documentation

  1. On the TiVo Slide remote, press and hold the TiVo button and the blue "B" button simultaneously until the activity indicator light blinks blue
  2. On the dongle, press and hold the button until the LED starts blinking
  3. After a few seconds, the remote's activity light will blink rapidly 5 times and then go off if pairing is successful

2.2 Setting up the Slide Pro

Note: If you have the older bluetooth Slide remote, then you can skip this section.


Note: For the newer Slide Pro remote, you must have the USB dongle for it to work! If you are buying this for the first time, make sure you are ordering the kit that includes the dongle, as it is cheaper than buying separately.


  1. Plug in the Slide Pro USB dongle into the HTPC.
  2. If your dongle came with the Slide Pro remote, then it's likely already paired to the remote. If you bought the dongle separately, or otherwise need to pair the remote to the dongle, then you will need to pair them.
    1. When you insert the dongle, press and hold the button on the dongle for 5 seconds to ender pairing mode. This should be indicated by a constant green blinking light.
    2. Now press and hold both the "TiVo" button and the "Back" button until the remote LED lights up red. It will now search for a dongle to pair with for 30 seconds.
    3. The remote should now pair with the dongle. If not, try consulting this page: http://support.tivo.com/app/answers/detail/a_id/2774

2.3 Fixing the non-functional keys

Some of the keys on the Slide remotes should now work, but many of the very important buttons need additional modification. The following steps apply to both the original Slide and the Slide Pro.

2.3.1 Re-map problem keys

We need to create a file to map the "problem key" scancodes to usable keycodes. First we're going to create a file located in /etc/udev/hwdb.d/ called 95-tivoslide.hwdb


1. Open up a terminal command line window or SSH into the HTPC box and type the following command. To make it easy to cut and paste, consider doing this from a desktop interface on the linux box, if you can.
sudo nano /etc/udev/hwdb.d/95-tivoslide.hwdb
Note: For an OpenELEC system, use /storage/.config/hwdb.d/95-tivoslide.hwdb instead of the above file name.
2. Enter your admin password if prompted.


3. Cut and paste the following into the new document:
Note: The first line identifies the original TiVo Slide (USB ID 150A:1201), while the second line identifies the TiVo Slide Pro (USB ID 150A:1203). Our hwdb file should work with either device.
Note: Make sure that there is a space at the start of each line that says KEYBOARD_KEY.
keyboard:usb:v150Ap1201*
keyboard:usb:v150Ap1203*
 KEYBOARD_KEY_000c0041=enter #SELECT
 KEYBOARD_KEY_000c0046=backspace #BACK
 KEYBOARD_KEY_000c006d=f3 #ZOOM
 KEYBOARD_KEY_000c006c=f4 #A (YELLOW)
 KEYBOARD_KEY_000c006b=f5 #B (BLUE)
 KEYBOARD_KEY_000c0069=f6 #C (RED)
 KEYBOARD_KEY_000c006a=f7 #D (GREEN)
 KEYBOARD_KEY_000700d8=f8 #CLEAR
 KEYBOARD_KEY_000c0083=enter #ENTER/LAST
 KEYBOARD_KEY_000c008d=home #GUIDE
 KEYBOARD_KEY_000c009c=pageup #CHUP
 KEYBOARD_KEY_000c009d=pagedown #CHDN
 KEYBOARD_KEY_000c00b3=fastforward #FASTFORWARD
 KEYBOARD_KEY_000c00b4=rewind #REWIND
 KEYBOARD_KEY_0000C00b1=playpause #PAUSE
 KEYBOARD_KEY_000c00f5=stopcd #SLOW
 KEYBOARD_KEY_000c0209=i #INFO
 KEYBOARD_KEY_ffff003d=tab #TiVo
 KEYBOARD_KEY_ffff003e=o # Live TV
 KEYBOARD_KEY_ffff0041=pagedown # Thumbs Down
 KEYBOARD_KEY_ffff0042=pageup # Thumbs Up


4. Press ctrl+x to exit editing and then press y to save. The file name should already be correct, so press return to actually save the file.


We will now create a udev rule file to load the hwdb file when the USB dongle is detected.

Note: This udev file might be unnecessary, depending on your linux distribution. Some systems will automatically load the hwdb file.
5. Go back to the terminal command line and enter the following command:
sudo nano /etc/udev/rules.d/95-keymap.rules


6. Enter your admin password if prompted.


7a. For the original bluetooth Side remote, add the following to the file:
SUBSYSTEM=="input", SUBSYSTEMS=="usb", ENV{ID_VENDOR_ID}=="150a", ENV{ID_MODEL_ID}=="1201", RUN+="/lib/udev/keymap $name /etc/udev/hwdb.d/95-tivoslide.hwdb"


7b. For the newer Side Pro remote, add the following to the file:
SUBSYSTEM=="input", SUBSYSTEMS=="usb", ENV{ID_VENDOR_ID}=="150a", ENV{ID_MODEL_ID}=="1203", RUN+="/lib/udev/keymap $name /etc/udev/hwdb.d/95-tivoslide.hwdb"


8. Press ctrl+x to exit editing and then press y to save. The file name should already be correct, so press return to actually save the file.


9. Now enter the following command to load these changes
sudo udevadm hwdb --update


So why did we do this? There are several reasons why you need to re-map keys on the Tivo Slide remote. First, due to a limitation of X.org no keycodes with values larger than 255 can be used. There are several such keys on this remote. Therefore they need to get re-mapped from large keycodes (>255) into smaller ones so that applications like XBMC can use them. Second, you may want to re-map some keys to do something more useful than their default.


2.4 Further map keys using a Kodi keymap

Editor note: This might not be updated yet.

Create a plain text file called tivo_slide.xml (or anything .xml) and save it in the keymaps folder inside of the userdata folder. The file should look like this:

<!-- Tivo Slide Keymap  -->
<keymap>
  <global>
    <keyboard>
      <prev_track>ParentDir</prev_track>
      <f6>PreviousMenu</f6> <!-- ZOOM = previous menu -->
      <f10>VolumeUp</f10>   <!-- CHUP = xbmc volume up-->
      <f11>VolumeDown</f11> <!-- CHDN = xbmc volume down-->
      <volume_up>Yellow</volume_up>     <!-- map volume keys to "do nothing" -->
      <volume_down>Yellow</volume_down> <!-- map volume keys to "do nothing" -->
      <f5>ActivateWindow(Videos,Files)</f5> <!-- A (YELLOW) = launch Video files -->
      <f4>ActivateWindow(Videos,TvShowTitles)</f4> <!-- B (BLUE) = launch TV Shows -->
      <f2>ActivateWindow(Videos,MovieTitles)</f2> <!-- C (RED) = launch Movies -->
      <f3>ActivateWindow(MusicFiles)</f3> <!-- D (GREEN) = launch Music files -->
    </keyboard>
  </global>
  <Home>
    <keyboard>
    </keyboard>
  </Home>
  <VirtualKeyboard>
    <keyboard>
    </keyboard>
  </VirtualKeyboard>
  <MyFiles>
    <keyboard>
    </keyboard>
  </MyFiles>
  <MyMusicPlaylist>
    <keyboard>
    </keyboard>
  </MyMusicPlaylist>
  <MyMusicPlaylistEditor>
    <keyboard>
    </keyboard>
  </MyMusicPlaylistEditor>
  <MyMusicFiles>
    <keyboard>
    </keyboard>
  </MyMusicFiles>
  <MyMusicLibrary>
    <keyboard>
    </keyboard>
  </MyMusicLibrary>
  <FullscreenVideo>
    <keyboard>
      <prev_track>SmallStepBack</prev_track>
    </keyboard>
  </FullscreenVideo>
  <VideoTimeSeek>
    <keyboard>
    </keyboard>
  </VideoTimeSeek>
  <FullscreenInfo>
    <keyboard>
    </keyboard>
  </FullscreenInfo>
  <PlayerControls>
    <keyboard>
    </keyboard>
  </PlayerControls>
  <Visualisation>
    <keyboard>
    </keyboard>
  </Visualisation>
  <MusicOSD>
    <keyboard>
    </keyboard>
  </MusicOSD>
  <VisualisationSettings>
    <keyboard>
    </keyboard>
  </VisualisationSettings>
  <VisualisationPresetList>
    <keyboard>
    </keyboard>
  </VisualisationPresetList>
  <SlideShow>
    <keyboard>
    </keyboard>
  </SlideShow>
  <ScreenCalibration>
    <keyboard>
    </keyboard>
  </ScreenCalibration>
  <GUICalibration>
    <keyboard>
    </keyboard>
  </GUICalibration>
  <SelectDialog>
    <keyboard>
    </keyboard>
  </SelectDialog>
  <VideoOSD>
    <keyboard>
    </keyboard>
  </VideoOSD>
  <VideoMenu>
    <keyboard>
    </keyboard>
  </VideoMenu>
  <OSDVideoSettings>
    <keyboard>
    </keyboard>
  </OSDVideoSettings>
  <OSDAudioSettings>
    <keyboard>
    </keyboard>
  </OSDAudioSettings>
  <VideoBookmarks>
    <keyboard>
    </keyboard>
  </VideoBookmarks>
  <MyVideoLibrary>
    <keyboard>
      <record>ToggleWatched</record>
    </keyboard>
  </MyVideoLibrary>
  <MyVideoFiles>
    <keyboard>
      <record>ToggleWatched</record>
    </keyboard>
  </MyVideoFiles>
  <MyVideoPlaylist>
    <keyboard>
    </keyboard>
  </MyVideoPlaylist>
  <ContextMenu>
    <keyboard>
    </keyboard>
  </ContextMenu>
  <FileStackingDialog>
    <keyboard>
    </keyboard>
  </FileStackingDialog>
  <Scripts>
    <keyboard>
    </keyboard>
  </Scripts>
  <Weather>
    <keyboard>
    </keyboard>
  </Weather>
  <Settings>
    <keyboard>
    </keyboard>
  </Settings>
  <MyPicturesSettings>
    <keyboard>
    </keyboard>
  </MyPicturesSettings>
  <MyProgramsSettings>
    <keyboard>
    </keyboard>
  </MyProgramsSettings>
  <MyWeatherSettings>
    <keyboard>
    </keyboard>
  </MyWeatherSettings>
  <MyMusicSettings>
    <keyboard>
    </keyboard>
  </MyMusicSettings>
  <SystemSettings>
    <keyboard>
    </keyboard>
  </SystemSettings>
  <MyVideosSettings>
    <keyboard>
    </keyboard>
  </MyVideosSettings>
  <NetworkSettings>
    <keyboard>
    </keyboard>
  </NetworkSettings>
  <AppearanceSettings>
    <keyboard>
    </keyboard>
  </AppearanceSettings>
  <Profiles>
    <keyboard>
    </keyboard>
  </Profiles>
  <systeminfo>
    <keyboard>
    </keyboard>
  </systeminfo>
  <shutdownmenu>
    <keyboard>
    </keyboard>
  </shutdownmenu>
  <submenu>
    <keyboard>
    </keyboard>
  </submenu>
  <MusicInformation>
    <keyboard>
    </keyboard>
  </MusicInformation>
  <MovieInformation>
    <keyboard>
    </keyboard>
  </MovieInformation>
  <AddonInformation>
    <keyboard>
    </keyboard>
  </AddonInformation>
  <AddonSettings>
    <keyboard>
    </keyboard>
  </AddonSettings>
  <LockSettings>
    <keyboard>
    </keyboard>
  </LockSettings>
  <ProfileSettings>
    <keyboard>
    </keyboard>
  </ProfileSettings>
  <PictureInfo>
    <keyboard>
    </keyboard>
  </PictureInfo>
  <Teletext>
    <keyboard>
    </keyboard>
  </Teletext>
  <Favourites>
    <keyboard>
    </keyboard>
  </Favourites>
</keymap>

3 Configure the IR keys

Some of the keys can be programmed to send IR commands instead of using the USB dongle. For example, you can make it so the volume keys can change your TV's or AVR's volume instead of Kodi's internal volume control. For these instructions see the Tivo website:

4 Issues

  • There are four keys on the Slide Pro that were not recognized by linux until kernel 4.0. Earlier versions require a kernel patch. The four keys are:
    1. Thumbs Up
    2. Thumbs Down
    3. Tivo (at the top)
    4. Live TV
  • The Slide has no "Stop" button, and therefore neither does it's remote. You can either stop playback when Back is pressed, or use the "slow-mo" button, since Kodi doesn't have a slow-mo function.
  • The Slide has no "Menu" button, which Kodi would normally use to bring up the context menu. A good replacement for this is to use the Guide button.
Personal tools
Namespaces

Variants
Actions
Navigation
Wiki help
Toolbox