Introduction

The following are instructions for building an RDKv5 image for the DTVKit White Label Box using the Amlogic S905X4 chipset. The release is using Amlogic's RDK v5.2.1 release, which uses RDK-V 2023Q2, so includes slightly later versions of some of the RDK packages that a pure RDK5 image. Access is needed to the RDK-hosted Amlogic git repositories to download the Amlogic specific recipes and software.

Setup

The build is based on RDK Yocto 3.1 (dunfell) so Ubuntu 18.04 LTS is recommended as the build environment. Follow the instructions provided by Amlogic for cloning their code and recipes into a separate directory (referred to as <rdk_dir> below), but the following steps should work:

  1. mkdir <rdk_dir>
  2. cd <rdk_dir>
  3. repo init -u https://code.rdkcentral.com/r/collaboration/soc/amlogic/aml-accel-manifests -b rdk-next -m rdk-5.2.xml –repo-branch=v2.9
  4. repo sync -j 4 --no-clone-bundle
  5. git clone git@github.com:DTVKit/meta-dtvkit-aml.git
Building

HbbTV

HbbTV is included by default, using the OpenRedButton (ORB - http://orb-tv.org/) open source project, and is enabled when using the DTVKit app on the WLB to watch DVB content. To build with HbbTV disabled, edit “meta-dtvkit-aml/conf/machine/mesonsc2-5.4-lib32-ah212-dxd6828.conf” and comment out the following line:

After changing this, or anything in the machine configuration file, you will need to start a new shell for the build so the setup-environment script can be re-sourced, as shown in the building instructions above.

Flashing

When the build has completed successfully, two binary installation files will be found in “<rdk_dir>/build-mesonsc2-5.4-lib32-ah212-dxd6828/tmp/deploy/images/mesonsc2-5.4-lib32-ah212-dxd6828/”. One is called “aml_upgrade_package.img” and this is a full system image including the bootloader, and the other is called “aml_upgrade_package_ota.img”, which is also a full system image but it doesn't include the bootloader. Unless you know you need to reflash the bootloader it's safer to use the “ota” image so the bootloader is still available if anything happens during the flashing process, such as a power failure.

The image file to be used should either be copied to a FAT formatted USB disk, or if the STB is on the network then you can copy the file to it using:

You will need access to a shell on the STB to update the image. If the box is on a network and you know its IP address then you can ssh on to it:

Or you can use the serial console:

If the image is being transferred to the STB via USB then plug the USB into the STB and copy the image file to the /tmp directory on the STB.

Now proceed with the following to install the image:

This will take around 30 seconds and when it finishes the STB should be rebooted, which can be done by power cycling it or from the console do:

Watching DVB Content

DVB content can't be viewed using the main RDK UI, so an app is provided that supports viewing content from DVB-S/S2, DVB-T/T2 and DVB-C. This app is written in basic HTML/JS using jQuery, and it can be found by scrolling to the bottom of the home screen on the main UI where it will be found under “Partner Apps”.

From this application you can scan for services on any of the supported RF inputs, but note that a country must be selected first if you want to scan using DVB-T/T2, as the tuning table for this is included in DVBCore's country configuration. Once services have been found you can then view channels by accessing the Channel List.

To exit from this application, return to the top-level menu so DVB playback is stopped and then press the Home button to return to the main RDK UI.