Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

HideElements
sidebartrue


Message Box
iconhelp
titleBefore You Begin
typehint

RDK License

Operators are advised to get into an agreement with RDK Management LLC to obtain the free license so as to use the complete RDK Code base in their platform. More details about license is available at https://rdkcentral.com/licenses/ . Please email info@rdkcentral.com if you have additional questions about licenses or membership

Info
iconfalse

On this Page:

Table of Contents
maxLevel1

Background Color
color#F5F5F5

Overview
Anchor
Overview
Overview



This page provides the details and guidance to the Operators on how to adopt RDK. The step by step procedure for an operator to get an RDK based Platform up and running is also described in detail.


Excerpt Include
DOC:RDK-V Hardware Porting Guide-Old page
DOC:RDK-V Hardware Porting Guide-Old page
nopaneltrue

Work In Progress
Background Color
color#F5F5F5

Product Specifications


The first step to get a fully functional product is

the

to define the product features and see if they meet the standard requirements.

A list of expected features from an IP based Set-top box are listed at Product Specifications. MSO can cross check the expected features/specifications with the capabilities of the OEM device being used and can finalize the features supported by the product.

See here to know what are all the features available in RDK-V and can implement based on your requirement. Operator can use this as a guide while engineering the RDK Operator platform.




Background Color
color#F5F5F5

Device Firmware
Anchor
Device Firmware

Info
For details of product specifications, please refer: Product Specifications

Device Firmware


Operators can make use of the details available at MSO Platform Firmware below to start developing a Yocto build to do the final additions of MSO Operator specific changes to the device. This will help MSO Operator to add their own final product features as well as MSO Operator specific patches/changes.

Info

For details, please refer:

Link to New Window
pagehttps://wiki.rdkcentral.com/display/RDK/MSO+Platform+Firmware
link-textMSO Platform firmware

Yocto Manifests

Yocto based RDK builds are flexible enough to easily accommodate SoC / OEM / Operator / third party changes. The starting point for the Yocto builds are a manifest file. The manifest file is an xml file that contains details of the different open embedded Yocto build layers, meta layers , rdk as well as open source components that needs to be fetched during initial stages ( than during bitbake time ) as well as the URL locations from where the data can be pulled. A set of sample manifests that can be used as a template for developing Operator specific manifests are given below


Expand
titleClick here for more details on Yocto Manifests

#

File

Remarks

1

Device Specific Manifest

This is the starting point of the build and is specific to a device/board . If the SoC/OEM has only one  target device /board, still it is recommended to maintain a different manifest for SoC/OEM for keeping it future-proof. Usually it contains references to other manifest files which will be having  specific set of repos

2

SoC Manifest

This manifest contains meta layer details of SoC and , optionally, some SoC specific repos

3OEM Manifest

This manifest contains meta layer details of OEM and , optionally, some OEM specific repos

4Operator ManifestThis manifest contains meta layer details for operators and , optionally, some operator specific layers.

5

OE layers Manifest

This manifest has details of the basic Yocto Open Embedded layers

6

RDK-V Manifest

This manifest can contain meta layers specific to RDK & RDK-V and , for EXTERNALSRC cases, the RDK & RDK-V component repo details too. It might be supplemented with a conf file too

7

Third party Apps manifest

This manifest can contain meta layers related to premium streaming applications which are chosen by Operator


The default manifest repo in RDKM Git is at https://code.rdkcentral.com/r/#/c/manifests/ . Operator need to have their own manifest file in this location which will be mentioned in the 'Device specific manifest' - which is the starting point of builds for a particular target device


Operator meta-layer creation

To match the layered structure of Yocto builds, a Operator specific layer is used to include Operator changes and additions. Use the yocto-layer create sub-command to create a new general layer.

Code Block
languagebash
themeEclipse
$ yocto-layer create mylayer

There shall be separate device (machine) configuration file (.conf) for each device for the particular chip family for which the layer is intended for. The general naming terminology for Operator layer is meta-rdk-<soc name>

The device (machine) configuration file shall include corresponding include (.inc) file to get machine configuration details.


Adding the Machine Configuration File for the new Operator

Each meta-* layer should have a conf folder containing the machine configuration we can select during 'source setup-environment' . Optionally it can also have a class/classes folder for keeping information that is useful to share between metadata files.

To add a machine configuration, you need to add a .conf file with details of the device being added to the conf/machine/ file. In the machine conf file the basic machine configuration should be defined.

Once the conf files are in place, the layer details need to be added to the corresponding package group file. Based on platform, the package group file will be grouped into multiple files with one bitbake fiile and multiple append files. Operator can add the Operator layer details to required package group append files applicable to the target device build to get the features into the final build


Background Color
color#F5F5F5

Operator Specific Apps


Operators will be having a range of Operator

MSO Specific Apps

MSOs will be having a range of MSO specific applications from simple generic device information apps to MSO Operator specific content applications. RDK's Yocto based layered structure allows MSOs Operators to easily integrate, upgrade and maintain their apps in their RDK based IP Set-top devices. For more details on App support in RDK, please refer Applications(only for RDK licensee)  as well as MSO Operator Platform Firmwarefor the engineering details.

Info

For details of MSO Specific Apps, please refer:

Link to New Window
pagehttps://wiki.rdkcentral.com/display/RDK/RDK+Video+Accelerator+-+Applications
link-textMSO Specific Apps

MSO


Background Color
color#F5F5F5

Operator Specific UI

RDK supports usage of multiple User Interface in the RDK IP Set-top devices. MSOs Operators can choose from among the already available UIs that are available with RDK as well as develop and use their own UI.

Follow the below steps to get Lightning UI running in devices:

Expand
titleSteps to deploy lightning UI

Clone and Build Instructions

This section details about how to customize the current UI

. For more information on UI support in RDK, please refer User Interface.

source code and develop further.

Follow the commands to run the application on you laptop.

  • Firstly install Lightning CLI
  • Type lng to confirm the installation. You will see the below output.

    Code Block
    $ npm install -g @lightningjs/cli
    $ lng
    Usage: index lightning-cli <command> [options]
     
    Options:
      -V, --version   output the version number
      -h, --help      display help for command
     
    Commands:
      create - Create a new Lightning App
      build - Build a local development version of the Lightning App
      serve - Start a local webserver and run a built Lightning App in a web browser
      watch - Watch for file changes and automatically rebuild the App
      dev - Build a local Lightning App, start a local webserver, run a built Lightning App in a web browser and watch for changes
      docs - Open the Lightning-SDK documentation
      dist [options] - Create a standalone distributable version of the Lightning App
      upload - Upload the Lightning App to the Metrological Back Office to be published in an App Store
      update - Update the Lightning-CLI to the latest version
      help [command] - display help for command



  • Clone repo

    Code Block
    $ git clone "https://code.rdkcentral.com/r/components/opensource/RDK_apps"
    $ cd RDK_apps
    $ git checkout rdk-next
    $ cd accelerator-home-ui
    Note: if you are not able to launch offline UI, add .env file inside accelerator-home-ui/ and add 'LNG_BUNDLER=esbuild' to force the bundler. Make sure you have esbuild dependency (npm install esbuild)
    $ npm install
  • Build and Host

    Code Block
    $ lng build
    $ lng serve
  • App will be hosted on http://127.0.0.1:8080


  • The RDK Accelerator Home UI version 3 is the latest version (3.7) of the RDK reference UI which provides a full featured UI with a modern minimalistic design using a dark theme.
    •  New Feature: UIv3.7 Added multi-profile support.
  • This single UI currently supports IP-STB, Hybrid-STB and TV profile RDK stacks. UI uses DTV Plugin and HDMIInput plugins to distinguish the platform profile; UI will consider the platform as TV if stack has HDMIInput plugin support, Hybrid STB if DTV plugin is present else the default IP-STB.
  • The UI uses Lightning SDK Plugins such as  Language, Router, Storage and supports Premium apps such as Amazon, YouTube, Xumo along with a selection of Lightning apps from the Metrological App Store.  It also includes a wide section of settings which allow a user to take full advantage of the device features such as Audio, Video, Network, Language and more.
  • To use and to know more about RDK Accelerator Home UI please refer Accelerator Home UI - v3 .
  • Based on resident app reference implementation Operator need to bring up the UI.


What operators need to do if they plan to use Accelerator UI as such ( or with minimal changes )?


  1. ( Optional ): Create an offline and online version of the UI.
    1. Offline can have minimal things ( like pair the remote, settings to connect to WiFi etc ) which is available even if device is not connected to Internet.
    2. Online will be the full fledged UI and will be fetched from a server with latest version
  2. Host their UI in their own production server and make RDK use it. For this , operator need to change the URL in this line https://code.rdkcentral.com/r/plugins/gitiles/rdk/components/generic/appmanager/+/refs/heads/rdk-next/residentapp/residentApp.sh#165


What operators need to do if they plan to use a different UI?


  1. Operator can develop their own UI either using Html or Lightning. Below section stall describe how a Lightning UI can be deployed.
  2. ResidentApp service serves the offline pages from DOCROOT of webserver(lighttpd) running on device. Operator need to install the UI assets in the DOCROOT and that will be launched by the https://code.rdkcentral.com/r/plugins/gitiles/rdk/components/generic/appmanager/+/refs/heads/rdk-next/residentapp/residentApp.sh#166 when the device starts up.
  3. To make the device start always with offline UI pages; remove or comment out https://code.rdkcentral.com/r/plugins/gitiles/rdk/components/generic/appmanager/+/refs/heads/rdk-next/residentapp/residentApp.sh#230.


For details of UI support in RDK IP Set-top devices, please refer : User Interface
Background Color
color#F5F5F5
Info
Link to New Window
pagehttps://wiki.rdkcentral.com/display/RDK/RDK+Video+Accelerator+-+User+Interface
link-text

App Support


Along with the MSO Operator specific apps, MSO Operator can support a lot of generic apps in RDK IP Set-top devices by taking advantage of RDK Support for Native as well as Web Apps in IP based Set-top platforms. MSO Operator can easily port native apps in their platforms (for some third party apps, MSO Operator need to obtain certification from those third party) or can host their own app store and then use Web Apps to show content. For more information on App support in RDK, please refer Applications (only for RDK licensee).


Background Color
color#F5F5F5

Factory Test App


The Factory Test App is a special standalone application used for production line testing at the TV assembly factory of the OEM manufacturer. It is embedded directly in the firmware image that gets flashed onto the boards on the TV production line.

<ToDo>

Background Color
color#F5F5F5

Provisioning Support


Operator

Info

For details of App support in RDK IP based Set-top devices, please refer:

Link to New Window
pagehttps://wiki.rdkcentral.com/display/RDK/RDK+Video+Accelerator+-+Applications
link-textApplications in RDK

Provisioning Support

MSO needs to add provisioning support in device so that Device provisioning can be done once deployed at customer premise. The steps for this varies based on platform as well as MSO Operator type.

Provisioning support refers to the scenario such as when you launch Sample app on your mobile it takes to login page and so you have to login there, account there i.e. actually the app has to authenticate your login.


Background Color
color#F5F5F5

Disaster Recovery


Disaster recovery is an inevitable part of the CPE life cycle. MSOOperator, based on their disaster recovery strategy, could add support for this in the device. While there are some generic guidelines followed across industry, there is no single step that works for all. MSOs Operators could easily add their business logic to RDK as part of MSO Operator firmware engineering as described in MSO Operator Platform Firmware.

As an operator they have to handle crashes/disaster happens and support any factory reset like OTA upgrade.


Background Color
color#F5F5F5

Test & Certification of devices


Once the device engineering is completed from MSO Operator side, the device can be test and verified easily by the Certification support provided by RDKM. Details of coverage as well as major cases are explained here .

Info

For details on test & certification of devices, please refer:

Link to New Window
pagehttps://wiki.rdkcentral.com/display/TDK/RDK+Video+Accelerator+Certification
link-textTest & Certification of devices

(only for RDK licensee) .

Certification suite is available at RDK IP Set-top Product Certification (only for RDK licensee) and for TDK test app please refer TDK-V Documentation.


In short, to get an RDK based device to field, Operators need to get

what are the things required for MSO to get started?

To start with RDK, MSO needs

  • RDK license
    • Operator has to get a RDK license and then any premium apps porting operators should have a project agreed with the corresponding premium app like for youtube it is google to access premium app/any app's plugin or code implementation for app.
  • Project agreement with OEM's
  • UI Specific customizations
    • Operator specific task on RDK are customization of UI to adopt RDKServices so as part of customization of UI they can refer the resident app implementation. As part of customisation of UI,OTA upgrade is one of the first main point .As an operator they need to get the OTA backend server . Xconf is the RDK recommended OTA method.It is not mandatory this can be optional(Like the firmware update plugin is available there readily they can directly use that infrastructure otherwise they need to configure their headend with the xconf server.)
    • Operator specific requirements has to be implemented by operator eg.frontpanel related or any customisation of UI and any such requirements.
what is available in RDK?
  • In case Operator is planning to include third party apps ( like Netflix , Amazon Prime etc. to name a few ) there should be a Commercial License Agreement between operators and premium apps.
  • Project agreement with OEM's/ SoC

What Operators get from RDK:

  • Pre-certified stack for third party apps is available in RDK as a Common Port Architecture. For details see Common Port for Native Apps.
  • RDKServices are available to customize RDKService plugin plugout components for all the stacks mainly Bluetooth, Wifi and front panel, power manager, device settings etc, pre-set apps and basic architecture of OTA are available.

What

MSO

Operators need to do

?

:

  • As an Operator, the certification for the operators device has to be done by them(eg: for premium apps).
What Operators need to get is :
  • Customization of boot loader for operator specific , operator specific UI, Operator specific any customization on the stack such as Power manager(Power specifications to Set-top box to consume only specified power)

Operators actually 2 things.

1 is UI, UI integration with RDKServices. for them actually only main change will be UI because the stack which they ll receive from OEM will be already proven like it is been validated by OEM SOC certification which we have RDK.It has to pass through SOC certification when it goes to opertaor.Basically that means SOC certification or OEM device certification means RDK is been validated i.e.TDK suites have been validated.For operator actually it will be main challenge will be the UI integration where they have for example in multi choice case they have a UI & their UI is actually the browser instance which they create is a web kit browser instance they ll just create a webkit browser instance and they ll use that browser for Ui they have something called system manager.They make a copy of this webkit browser n they define that so whatever configuration it needs basically the resolution settings, port related things like which port it has to be the data socket communication which port like the current RDK we are having port 9998 for all the communications will be on port 9998 but for multichoice they have already UI it is from the previous project when they try to migrate so there UI is being configured to listen on port 80 that's the first challenge they faced.there actually akhil's team suggested in RDKServices currently everywhere it is hardcoded to 9998 so they raised Jira for comcast to make it configurable but it is current RDKServices everywhere it is been hardcoded with 9998 .So then we requested them whether they can move to 9998 or we already provided a patch to configure to port 80 they initially took our patch but later they changed UI to listen on port 80 .So all the socket communication n the navigation from the application manager will be based on port 9998.That was one of the major challenge we had in the multichoice.2nd thing is UI integration n Dial related  integration for the youtube certification.For the youtube certification dial has to be integrated in the Ui we have provided a sample app current resident app is the source code right those actually we pass on that .....so these are the operators specific related stuff which they need to do .1 is bring up the UI based  on the resident app reference implementation and as part of that i.e.1 line actually -based on resident app reference implementation they need to bring up the UI so internally to that there are so many things 1 is the eg:dial , the other one is webkit browser instance which i mentioned n other configurations settings n their persistents areas.The RDK we are mapping the persistent related whatever default persistent like OPT or whatever it is ,as a operator they might be having different it is not just youtube,those things right as a operator they have their own live TV applications just like TATA SKY or other things.there also they have a user based ,user data have to be stored.So their account for that show macs or the DSTV application they have a account manager there which will have like headend backend for billing na ll ,like how to request channels subscription those are part of Ui,those has to be integrated with RDK also,Like there the challenges are like mainly the persistent data i mean the user data where to store n whether it is secure or not those kind of info they ll tc that is another part of a sa operator they need to bring in.4 th is OTA upgrade.So OTA upgrade from RDK point of view we have provided 2 solutions 1 is xconf based where we r giving listen of xconf server like as  a sample server to they can any operator can refer to xconf server n create their OTA server but in the multi choice case they have already have a OTA backend  from the, they are having market sinnce very long time they have  headend n the backend server they have alraedy a OTA server so they don;t use xconf there,there actually we have a firmware update plugin so they will use that firmware upgrade plugin for OTA upgrade this is 1 more area where operator has to their own specific changes.

Some features are optional whether they can adopt or can use the existing ones.

  • Some Customization of remote and operator specific operations such as other configurations settings and their persistent areas(like premium app logo size on operator device).
  • UI integration with RDKServices and UI Specific customizations
    • Operator specific task on RDK are customization of UI to adopt RDKServices so as part of customization of UI they can refer the resident app implementation. As part of customisation of UI,OTA upgrade is one of the first main point .As an operator they need to get the OTA backend server . Xconf is the RDK recommended OTA method.It is not mandatory this can be optional(
They can use existing ones.
    • Like the firmware update plugin is available there readily they can directly use that infrastructure otherwise they need to configure their headend with the xconf server.

Some customisation of remote actually, remote and operator specific operations for eg:in multi choice case south africa ,it depends on region .In europe they have some power standards like the device shd consume this much power they ll do all those kind of hw related testing those are they ll work with OEM's to get those done.Combing back to certification as a operator certification has to be done by them actually ,we are RDk n we r pre-certified we r not certified ,the common port youtube,netflix,amazon RDK is only pre-certified OEM is also only integrated with rdk precertified but stamp what device will get is for eg in the case of multi choice they ll call as multi choice box it's not RDK box or skywoth box or whatever it is a multi choice streamer device that product name is streama like Xi3, like we have comcast products like Xi device,platco device those are actually device name here the operator device in the case of multi choice they call it streama, youtube certification,amazon certification,netflix certification so it has to be done on streama device so it is operators responsibility to get that certified.But obviously they only ust pass on the work we RDK or the OEM do for this certifications so SOC has to implement their part n RDK has to implement their part as a operator they only publish those reports to the they ll talk to the youtube, i mean google,netflix n amazon.RDK will not talk to directly with these guys.It is multichoice who talks to these operators.As a operator they need to have a for eg:for these premium apps they need to have  a project with netflix to get the netflix working n they need to have  a project with amazon to get amazon specific actually every device will have like any device which will have amazon prime that will have unique dtid that is specific to customer only.Like now today if i  have a customer tata sky n they have ported amazon prime app in their box side so they will have separate dtid n similarly any operator TEL or multichoice they will have separate dtid so taht dtid they need to have agreement with amazon team and they will be commercial license agreement between these 2  partners amazon n the operator similarly for netflix n operator \\y for utube ,u tube n operator they ll be having a business level agreement so that dtid will be pass on to , like as a  RDK we have only test accounts we don't verify on commercial accounts ,as a rdk we only use test accounts n get pre-certified  as  a operator to deploy there are some more things actually all these netflix,amazon,u tube pre-certification will be done but the actual certification ghas to be done in the actual UI, so what all additional will come like the symbol which they show on the UI like u tube, amazon symbol they ahve test like the symbol shd be this much cm n this color have some specific related n they have product specifications like standby if there is a device in standby whether it shd be waking up through key press,if remote had hard key like the remote has direct key for amazon if i press that prime shd launch amazon it shdn't go to ui n then go to app n bring up there all these r operator specific... who ll do these changes operator or oems support operator like how we r  supporting multi choice to get these changes whenever there is a key navigation they ll map their ui to listen that key it is downlevel  RDK n skyworth as a oem we r supporting them to get that functionality.

    • )
    • Operator specific requirements has to be implemented by operator ( eg.frontpanel related or any customisation of UI and any such requirements

----------------------------------------------------------------------------

They have to have agreements with youtube,netflix,amazon (add those points here
    • )