RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
...
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 Title | RDK Emulator Users Guide |
Version | |
Date | 18/11/2021 |
...
Table of Contents |
---|
...
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. The key applications in the RDK Emulator are the rmfApp, Media streamer and the RDK-Browser. As RDK emulator runs on desktop computers, applications can be tested and debugged before trying to deploy them to real devices.
...
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
...
...
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 |
QAM
Quadrature Amplitude Modulation
STB
Set Top Box
XRE
Cross-Platform Runtime Environment
HDD
Hard Disk Drive
EOS
End of Stream
SPTS
Single Program Transport Stream
MPTS
Multi-Program Transport Stream
UPNP
Universal Plug and Play
...
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 ...
...
Build Types | RDK Components Involved | Features/Applications Supported | Final Image Name | Startup Application |
rdk-generic-broadband-image |
|
|
| rdk-generic-broadband-image-qemux86broadband.wic.vmdk |
WebUI configuration |
...
...
...
RDK-B Emulator Dunfell Build Instructions
...
Host Requirements
Requirement | Remarks |
---|---|
Linux | 32/64 bit Ubuntu 16.04 operating system |
Free HDD Space | Minimum 100GB Free Memory |
Oracle Virtual Box | 4.3.18 or higher |
Install Virtual Box and follow the following steps to bring up RDK Emulator on Virtual Box:
...
Open Virtualbox
Select New [A popup will come up]
Select Type as ‘Linux’
Select Version as ‘Other Linux (32 Bit)’
Click on “Next”
Once you have the IP address you may SSH into your VM from your linux shell console. Use root as the ssh user.
$ ssh |
---|
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 |
---|
Note: In order to learn the IP address of your VM, use the RDK Browser application “tab” key to navigate to "Device Info" which will provide you the IP address. Press "Enter" key to enter Device Info
Install VMplayer in Host Machine
Use the below Link download to install VMware Player on host
After downloading
sudo ./VMware-Player-<Version>.bundle (LInux OS)
Run VMware-Player-<Version>.exe (Windows OS)
Reason for VMplayer: in Mesa Higher versions EGL-PLATFORM fbdev is not available as it is deprecated so we tried using DRM (Direct Rendering Manager driver for graphics)
for DRM driver is available only in vmware only (vmwgfx so we have gone for VMware Player)
1 Once VMware Player is installed, open the VMWare Player using the command
...
vmplayer & or open using GUI
root@<erouter0 ip> |
---|
Code Block | ||||
---|---|---|---|---|
| ||||
root@qemux86broadband:/# ifconfig
br106 Link encap:Ethernet HWaddr E6:B3:27:79:E4:79
inet addr:192.168.106.1 Bcast:192.168.106.255 Mask:255.255.255.0
inet6 addr: fe80::e4b3:27ff:fe79:e479/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:14 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:1124 (1.0 KiB)
br403 Link encap:Ethernet HWaddr 3E:7D:94:CE:18:42
inet addr:192.168.245.1 Bcast:192.168.245.255 Mask:255.255.255.0
inet6 addr: fe80::3c7d:94ff:fece:1842/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:14 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:1124 (1.0 KiB)
brebhaul Link encap:Ethernet HWaddr DA:B4:09:16:BD:69
inet addr:169.254.85.1 Bcast:169.254.85.255 Mask:255.255.255.0
inet6 addr: fe80::d8b4:9ff:fe16:bd69/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:14 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:1124 (1.0 KiB)
brlan0 Link encap:Ethernet HWaddr 42:39:B8:18:9B:F3
inet addr:10.0.0.1 Bcast:10.0.0.255 Mask:255.255.255.0
inet6 addr: fe80::4039:b8ff:fe18:9bf3/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:B4:EB:E3
inet addr:192.168.1.49 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:feb4:ebe3/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:223 errors:0 dropped:0 overruns:0 frame:0
TX packets:52 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:17548 (17.1 KiB) TX bytes:9684 (9.4 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:14866 errors:0 dropped:0 overruns:0 frame:0
TX packets:14866 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:763416 (745.5 KiB) TX bytes:763416 (745.5 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) |
...
...
2 Click File --> Create a New Virtual Machine --> Select 'i will install my operating system later' --> click Next
3 Select 'Linux' --> Version 'Other Linux 3.x kernel' --> Click Next --> Give name --> Click Next
4 Maximum Disk Size : 8 Gb --> Select 'Store Virtual Disk as a Single File' --> Click Next --> Memory for this Virtual Machine '512 Mb' --> Click 'Close' --> Click 'Finish'
5 Click 'Edit virtual machine settings' --> select Hard Disk (IDE) --> Click 'Remove' -->Click 'Add' --> Select Hard Disk --> Select 'Use existing Virtual Hard disk'
6 File browse and set the path to the *.vmdk file --> Click Finish --> Click 'Keep Existing Format'
7 Network Adapter select Bridge Adapter --> Click Save
8 Click Play Virtual Machine
Cannot connect the virtual device ide1:0 because no corresponding device is available on the host.
Do you want to try to connect this virtual device every time you power on the virtual machine? [YES] [NO]
You select [NO]