Skip to end of metadata
Go to start of metadata


RDK-B Emulator Users Guide


Copyright 2015 RDK Management, LLC. All rights reserved.

The contents of this document are RDK Management, LLC Proprietary and Confidential and may not be distributed or otherwise disclosed without prior written permission of RDK Management, LLC.

Document Status 



Document Title

RDK Emulator Users Guide

Version


Date

18/11/2021

Table of Contents


Introduction


RDK (Reference Design Kit) is an integrated set of software components, tools and documentation that help in the development of the software stack for set-top box based on the standard Linux operating system which is designed to meet the requirements of the latest generation media servers and clients.

The RDK emulator is an x86 based implementation of the RDK software stack. It is primarily targeted towards the RDK development community (integrators, component developers and application developers) that attempts to simplify the process of working with the RDK software stack without the need for a reference hardware platform.

Purpose of this Document


The purpose of this document is to enable RDK users and developers to be able to bring up the RDK stack and emulator on the PC platform. The document also includes step-by-step procedures to setup & build RDK Emulator

Known Issues


  • eth0/erouter0  interface <ip address> is failing to connect ssh . But, able to connect  ssh with  host using port forwarding in Network settings of Virtual Box.
  • Client is getting the <ip address> from Emulator . But, not in 10.x.x.x 
  • Failed to open webUI configuration .

Abbreviations and Acronyms


The following table describes the acronyms and abbreviations used in this document

Abbreviation/Acronym

Description

RDK

Reference Development Kit

VM

Virtual Machine

VBox

Virtual Box

Overview of RDK Emulator


  • Executes on x86-based platforms including virtualization environments such as Virtual Box and QEMU.
  • Built using Yocto and RDK build frameworks
  • RDK-B Emulator runs RDK-B stack on PC platform, validated through the virtual box based virtualization platform  .

  • Hardware Abstraction Layer supporting Ethernet and Wi-Fi functionalities are introduced to adopt the PC platform.

  • Wi-Fi Hotspot support through external wireless adapter.USB to Ethernet Adapter is used for Ethernet LAN connections.

  • Support of advance configurations like firewall, parental control, WAN Manager and remote management etc ...

Supported Build Types



Build Types

RDK Components Involved

Features/Applications Supported

Final Image Name

Startup Application

rdk-generic-broadband-image
  1. rdklogger
  2. utopia
  3. ccsp components
  1. Wan Manager 
  2. parental control
  3. firewall
  4. Remote Managment
  5. yocto 3.1, dunfell

rdk-generic-broadband-image-qemux86broadband.wic.vmdk 

WebUI configuration

Build Setup Instructions


Setting up the Host Environment


How to Build#SettinguptheHostEnvironment

Downloading Source Code & Building


RDK-B Emulator Dunfell Build Instructions

Bringing up the Emulator on Virtual Box


Host Requirements

RequirementRemarks
Linux                           32/64 bit Ubuntu 16.04 operating system
Free HDD SpaceMinimum 100GB Free Memory
Oracle Virtual Box4.3.18 or higher

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: Run Emulator in Vbox :

  • Boot up your VM by clicking on start
  • Click “start” to launch the Emulator vmdk image
  •  Provide “root” to login Emulator as shown in the screen shot
  •  Emulator usually fetches IP address by default, if not then assign statically using the commands
  •  For ex: ifconfig eth0/erouter0 192.168.1.4
  •  route add default gw 192.168.1.1 eth0/erouter0
  •  Once IP address for Emulator is up, Emulator shall be accessed in the Host PC using the below command

Once you have the IP address you may SSH into your VM from your linux shell console. Use root as the ssh user.

root@qemux86broadband:/# ifconfig
br106     Link encap:Ethernet  HWaddr 3E:0C:60:C2:E1:90  
          inet addr:192.168.106.1  Bcast:192.168.106.255  Mask:255.255.255.0
          inet6 addr: fe80::3c0c:60ff:fec2:e190/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:1054 (1.0 KiB)

br403     Link encap:Ethernet  HWaddr 06:AD:A5:1E:AF:C6  
          inet addr:192.168.245.1  Bcast:192.168.245.255  Mask:255.255.255.0
          inet6 addr: fe80::4ad:a5ff:fe1e:afc6/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:1054 (1.0 KiB)

brebhaul  Link encap:Ethernet  HWaddr 8E:94:FF:15:9B:79  
          inet addr:169.254.85.1  Bcast:169.254.85.255  Mask:255.255.255.0
          inet6 addr: fe80::8c94:ffff:fe15:9b79/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:1054 (1.0 KiB)

brlan0    Link encap:Ethernet  HWaddr 42:C6:7D:F9:DD:99  
          inet addr:10.0.0.1  Bcast:10.0.0.255  Mask:255.255.255.0
          inet6 addr: fe80::40c6:7dff:fef9:dd99/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:1320 (1.2 KiB)

erouter0  Link encap:Ethernet  HWaddr 08:00:27:79:1A:62  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe79:1a62/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:59 errors:0 dropped:0 overruns:0 frame:0
          TX packets:56 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:14899 (14.5 KiB)  TX bytes:10404 (10.1 KiB)

gre0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          UP RUNNING NOARP  MTU:1476  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:7112 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7112 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:374976 (366.1 KiB)  TX bytes:374976 (366.1 KiB)

sit0      Link encap:IPv6-in-IPv4  
          inet6 addr: ::127.0.0.1/96 Scope:Unknown
          UP RUNNING NOARP  MTU:1480  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan0     Link encap:Ethernet  HWaddr D0:37:45:B0:41:63  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

wlan1     Link encap:Ethernet  HWaddr D2:37:45:B0:41:63  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

STEP 4: Lanching Emulator in WebUI :

  • In the Host-PC Browser, Enter the eth0/erouter0 IP:8080 to get WebUI
    Ex:http://x.x.x.x:8080
  • WebUI Login Credential's
    Username: admin
    Password: password

Launching WebUI App



  • In the Host-PC Browser, Enter the eth0 /erouter0 IP:8080 to get WebUI
    Ex: http://x.x.x.x:808
  • WebUI Login Credential's
    Username: admin
    Password: password

RDK-B Environment Setup








  • No labels