Versions Compared

Key

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

HideElements
sidebartrue


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.

Background Color
color#F5F5F5

Before You Begin
Anchor
Before You Begin
Before You Begin

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

Background Color
color#F5F5F5

Overview
Anchor
Overview
Overview


Operator can choose preferable device from OEM and also get details from SoC vendors, SoC vendors will already have RDK ported on top of their SoC so they will be having all the features supported in SoC so based on that Operator's can select a OEM with preferred SoC platform and then they can start integrating features that Operator requires on top of the OEM layer so that they can have final product.


This document will detail the recommended step by step procedure of adopting RDK by a Operator.


Background Color
color#F5F5F5

Operator Checklist
Anchor
Operator Checklist
Operator Checklist


Product Specifications


The first step to get a fully functional product is to define the product features and see if they meet the standard requirements. See here to know what are all the features available in RDK-V and can implement based on your requirement. SoC Operator can use this as a guide while engineering the RDK SoC Operator platform.


Device Firmware
Anchor
Device Firmware
Device Firmware


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

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


Operator Specific Apps


Operators will be having a range of Operator specific applications from simple generic device information apps to Operator specific content applications. RDK's Yocto based layered structure allows 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 Operator Platform Firmwarefor the engineering details.


Operator Specific UI


RDK supports usage of multiple User Interface in the RDK IP Set-top devices. Operators can choose from among the already available UIs that are available with RDK as well as develop and use their own UI. For more information on UI support in RDK, please refer User Interface(only for RDK licensee).

Based on resident app reference implementation Operator need to bring up the UI.


App Support


Along with the Operator specific apps, 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. Operator can easily port native apps in their platforms (for some third party apps, 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).


Provisioning Support


Operator 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 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.


Disaster Recovery


Disaster recovery is an inevitable part of the CPE life cycle. Operator, 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. Operators could easily add their business logic to RDK as part of Operator firmware engineering as described in Operator Platform Firmware.

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


Test & Certification of devices


Once the device engineering is completed from 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 (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

  • 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.
  • 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 Operators need to do:

  • As an Operator, the certification for the operators device has to be done by them(eg: for premium apps).
  • 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)
  • 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(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 )