Remote Control Configuration#

Stb-tester supports the following remote-control mechanisms. In most cases the Stb-tester Support team will create & manage this configuration for you.

Infrared control#

Stb-tester needs to know the infrared protocol that your device-under-test understands. If you are testing a common device like a Roku, Apple TV, or XBox, we can provide a configuration file that describes the remote control’s infrared protocol. This configuration file lives in your test-pack git repository under config/remote-control/, for example config/remote-control/roku.lircd.conf.

If the device is your own set-top box, we will need to record the infrared protocol of your remote control. Please post us your remote-control unit — contact support@stb-tester.com for details.

HDMI CEC control#

Some devices support HDMI CEC commands. This is the technology that TVs use to control a set-top-box using the TV’s own remote control, by sending commands over the HDMI cable to the set-top-box.

You will need our USB CEC adapter. If we didn’t ship one with your Stb-tester Node, contact support@stb-tester.com. Plug it in as per the diagram below — the Stb-tester Node will automatically use the CEC adapter if it is plugged in.

_images/cec-wiring2.png

Some devices require a configuration setting to enable CEC:

  • Apple TV: Enabled by default.

  • Fire TV: Settings > Display & Sounds > HDMI CEC Device Control.

  • NVidia Shield: Enabled by default.

  • PS3: System Settings > Control for HDMI.

  • PS4: Settings > System > Enable HDMI Device Link.

The valid CEC key names are listed here.

USB HID control#

Some devices can be controlled via a USB HID (Human Interface Device) such as a keyboard. Stb-tester can emulate a USB keyboard to control the device-under-test using our USB-HID cable.

This must be configured in your test-pack git repository in the .stbt.conf file. For example, the following configuration specifies that the remote-control named “nvidia_shield” should use the USB HID control:

[remote-control nvidia_shield]
control = usb-hid

You will need our USB HID cable. If we didn’t ship one with your Stb-tester Node, contact support@stb-tester.com. The “Stb-tester Node” end and the “device-under-test” end of the cable are clearly labelled; they plug into USB ports on the respective devices.

You will need to determine a mapping from Stb-tester’s standard key names (like “KEY_BACK”) to the corresponding USB HID page and keycode (like “KB ESC”). See Key mappings below, and contact support@stb-tester.com for assistance.

Remote control image#

The remote control image displayed in the Manual control tab of the Stb-tester Portal can be customised by providing an SVG file in config/remote-control/ with a filename that matches the name of the remote control (for example config/remote-control/nvidia_shield.svg).

Usually the Stb-tester Support team will create this for you; if you want to customise it yourself, see the instructions in Custom remote control image.

Key mappings#

For the CEC and USB HID control mechanisms, you may need to specify a mapping from Stb-tester’s standard key names (like “KEY_BACK”) to the corresponding keycodes of the CEC or USB HID protocol. Stb-tester provides a default mapping for the most common keys (KEY_UP, KEY_OK, etc.) but you can override these mappings, or provide additional mappings, in the .stbt.conf configuration file.

For example, to specify mappings for a remote control called “nvidia_shield”, create a config section called [remote-control nvidia_shield keymap], with the mappings like this:

[remote-control nvidia_shield keymap]
KEY_BACK = KEY_KB_ESC
KEY_SETTINGS = KEY_KB_COMPOSE
KEY_POWER = KEY_ACPI_POWER

To determine how your device-under-test implements each CEC or USB HID keycode, we can provide a special remote-control configuration that has a button for every keycode in the relevant protocol. By trying each keycode, you can create a keymap like the above for your specific device. Please contact support@stb-tester.com for assistance.