RDK Emulator

  • Executes on x86-based platforms including virtualization environments such as Virtual Box and QEMU.
  • Multiple build types - media client, hybrid etc
  • Supports the RDK Browser startup application.
  • Up to date with the RDK generic trunk and any x86-specific platform code.
  • Built using Yocto and RDK build frameworks

Bringing up the Emulator on Virtual Box


Install Virtual Box and follow the following steps to bring up RDK Emulator on Virtual Box:

In the following steps, it is recommended to review the description and screenshot completely before proceeding with steps.

STEP 1: Create your new VM Instance:

  • Open Virtualbox

  • Select New [A popup will come up]

  • Select Type as ‘Linux’

  • Select Version as ‘Other Linux (32 Bit)’

  • Click on “Next”

  • Choose a Memory Size of 512 MB


  • Use an existing virtual hard drive file which would be your newly built image in *.vmdk format and create your VM:

STEP 2: Configure your new VM Instance:

  • Click on “Settings” tab to configure your new VM instance

  • Configure your VMs network settings
  • Choose “Bridged Adapter” mode as shown in the screenshot below

STEP 3: Create an external hard drive:

Your VM has been built with very limited hard drive space. In order to run emulator and play video files, you need to copy your video files into the file system for playback. For this, you will need to setup a virtual external hard drive.

  • Select the vm instance on the main menu of Virtual Box
  • Click Settings -> Storage -> Add Hard disk [icon]
  • Click ‘Create new disk’ (Note: In the screenshot below, "Choose existing disk" may seem highlighted. Please select "Create new disk")


  • Select VDI (VirtualBox Disk Image) as your Hard Drive file type:

  • Select "Dynamically allocated" storage: 

STEP 4: Formatting and partitioning your new external hard drive:

  • Boot up your VM
  • Your emulator VM boots up to show the RDK Browser HTML application which can be used to select and launch multiple other applications using the Tab key & Enter key
  • Use BACKSPACE to come out of Readme, WatchTV, iHeartRadio and Sample Video
  • To come out of the X2 guide, use Ctrl+Backspace
  • In order to learn your VM IP, use the RDK Browser application “tab” key to chose the various applications. Choose Device Info which will provide you the IP address as shown in the screenshot below:

  • Once you have the IP address you may SSH into your VM from your linux shell console. Use root as the ssh user.
  • Use the “mount” command to see the current status of connected hard disks
$ mount

  • Use fdisk command to list out connected hard drives. You may note that in the screenshot below, there are two hard drives listed. hda and hdb. hdb is the external hard drive that we have created in the previous step.
$ fdisk -l

  • Use fdisk to create your new hard disk partition
$ fdisk /dev/hdb

Review the description of the steps during fdisk operation below and the following screenshot for reference before proceeding.

  • Use fdisk to create your new hard disk partition
  • Use the command "n" to add a new partition
$ Command (m for help): n
  • Select partition type as the suggested default "p" for primary partition

$ Partition type:

p primary (0 primary, 0 extended, 4 free)

e extended

Select (default p): p

  • Set your partition number as the suggested default. In the example case: 1
$ Partition number (1-4, default 1): 1
  • Press "Enter" key for First sector & Last sector prompts
  • Select the command "p" to print the partition table on screen for review
$ Command (m for help): p
  • Select the command "w" to write the partition table to disk and exit fdisk
$ Command (m for help): w
  • Format your newly created partition with ext3 file system
$ mkfs.ext3 /dev/hdb1

  • Create a folder for mounting your new partition at /ext_hdd
  • Mount your newly created hard disk partition to /ext_hdd

$ mkdir /ext_hdd

$ mount /dev/hdb1 /ext_hdd

Logging into your VM

As described in the previous section, you can log in to your emulator VM from your Host Machine using the ssh command.

$ ssh root@x.x.x.x




  • No labels