Build Steps

Opensourced Manifest:

  • repo init -u https://code.rdkcentral.com/r/rdkcmf/manifests -b feature-rdk-google-collab -m aml_ipstb_google_rdk_starboard-open.xml
  • repo sync -c
  • source meta-rdk-amlogic/set-env.sh mesonsc2-5.4-lib32-ah212 --gst1-18 --ipclient --rdk-starboard --use-rdk-ui --rdk-cobalt23
  • bitbake lib32-rdk-generic-mediaclient-image

Above manifest hosts Amlogic pre-built libraries for kernel and other SoC components.


For latest Cobalt builds which included latest RDK and latest Amlogic BSP included, please reachout to Amlogic FAE or RDKM team(support@rdkcentral.com)

Note: To enable build with DRM(Playready & Widevine), Please reach out to Amlogic for Openlinux access for DRM libraries. Need to have below repository access.


For certified manifest with DRM: 

Check if you have access to Amlogic restricted repos.

Execute below command to check if  you have PlayReady access

git clone ssh://git@openlinux.amlogic.com/vendor/playready.git

Execute below command to check if you have Widevine access

git clone ssh://git@openlinux.amlogic.com/yocto/vendor/widevine

Please contact your Amlogic sales or FAE teams to get restricted DRM repo access if you do not have yet.

If Widevine and PlayReady access is available, please pass additional arguments as

repo init -u https://code.rdkcentral.com/r/rdk/soc/amlogic/aml-manifests -b rdk-next -m aml_ipstb_google_rdk_starboard.xml 
repo sync -j4 --no-clone-bundle
source meta-rdk-aml/set-env.sh mesonsc2-5.4-lib32-ah212 --ipclient --rdk-starboard --gst1-18 --rdk-ui --playready --widevine
bitbake lib32-rdk-generic-mediaclient-image

Note: This manifest is based on RDK 2022q1 based RDK and Amlogic BSP version is BSP866. This manifest is in RDKM restricted zone. 

Build Steps to generate an image with RDKstarboard using Amlogic pre-builds(github), non-drm and with DAB support enabled

repo init -u https://code.rdkcentral.com/r/rdk/soc/amlogic/aml-manifests -b rdk-next -m aml_ipstb_google_rdk_starboard-open-dab.xml
repo sync -j4 --no-clone-bundle

For Amlogic UI:
source meta-rdk-aml/set-env.sh mesonsc2-5.4-lib32-ah212 --gst1-18 --ipclient --rdk-starboard --enable-dab-bridge

For RDK UI:
source meta-rdk-aml/set-env.sh mesonsc2-5.4-lib32-ah212 --gst1-18 --ipclient --rdk-starboard --enable-dab-bridge --use-rdk-ui



bitbake lib32-rdk-generic-mediaclient-image

Note: If you are seeing following error while bitbake parse happens; please enable meta-rust manually after "source" step before "bitbake".

ERROR: ParseError at /home/amadha013/codebase/ah212-rdknext-dab/meta-dab/dab-rs/dab-bridge_0.4.0.bb:3: Could not inherit file classes/cargo.bbclass

Edit $BUILDDIR/conf/bblayers.conf to enable meta-rust manually by adding below change:

BBLAYERS += "${RDKROOT}/meta-rust"


Refer IPSTB Flashing Steps to flash the image after build has been finished successfully.

IPSTB build on rdk-next stack:

Build steps with DRM:

  • repo init -u https://code.rdkcentral.com/r/collaboration/soc/amlogic/aml-accel-manifests -b rdk-next -m ipstb-google-rdk-next.xml
  • repo sync -j4 --no-clone-bundle
  • source meta-rdk-aml/set-env.sh mesonsc2-5.4-lib32-ah212 --use-rdk-ui --enable-rdk-voice --playready --widevine  --enable-fireboltcompliance --rdk-starboard --t4hremote  --ipclient
    (NOTE: Use --b12remote instead of --t4hremote if B12 remote is used)
  • bitbake lib32-rdk-generic-mediaclient-tdk-image

Build steps with non-DRM:

  • repo init -u https://code.rdkcentral.com/r/collaboration/soc/amlogic/aml-accel-manifests -b rdk-next -m ipstb-google-rdk-next.xml
  • repo sync -j4 --no-clone-bundle
  • source meta-rdk-aml/set-env.sh mesonsc2-5.4-lib32-ah212 --use-rdk-ui --enable-rdk-voice --enable-fireboltcompliance --rdk-starboard --t4hremote --ipclient
    (NOTE: Use --b12remote instead of --t4hremote if B12 remote is used)
  • bitbake lib32-rdk-generic-mediaclient-tdk-image

Note: Amlogic meta layers and components are in Amlogic collaboration zone. Need to be Amlogic collab-zone approved member to be able to get access.

RDK uses rdkcentral artifactory to place AlexaSmartScreenVoiceChrome-1.1.0.tar. Removed this depending upon ipclient distro. During build we need to place the tar file in downloads folder

Refer IPSTB Flashing Steps to flash the image after build has been finished successfully.


Cobalt relative binaries location/path on the device :

Library: /usr/lib/libloader_app.so.
In evergreen enabled images we do not have separate libcobalt.so libraries.
Build path: build/tmp/work/armv7at2hf-neon-rdkmllib32-linux-gnueabi/lib32-libloader-app/23.lts.stable-3/image/usr/lib/libloader_app.so

In Amlogic the installation slots are present at /data/persistent/Cobalt-0/.cobalt_storage
/data/persistent/Cobalt-0/.cobalt_storage is created run-time.

root@AmlogicFirebolt:~# ls -l /data/persistent/Cobalt-0/.cobalt_storage
drwx------    2 root     root          4096 Aug  4 08:55 cobalt_updater
drwx------    4 root     root          4096 Aug  4 08:55 installation_1
drwx------    2 root     root          4096 Aug  4 08:48 installation_2
-rw-------    1 root     root            20 Aug  4 08:55 installation_store_aHR0cHM6Ly93d3cueW91dHViZS5jb20vdHY=.pb
root@AmlogicFirebolt:~#
root@AmlogicFirebolt:~# ls /usr/lib/libloader_app.so
/usr/lib/libloader_app.so
root@AmlogicFirebolt:~#



IPSTB Flashing Steps

Locate the Image file from build directory

The reference device Image shall be created under ${BUILDDIR}/tmp/deploy/images/<machine>/aml_upgrade_package.img which can be used to flash the device using below methods.

1) Using Burning tool:

Download AMlogic Burning tool from the link Amlogic Video Accelerator Collaboration).

NOTE: Please reachout to Amlogic to get USB Burning tool if no access to the wiki page.

How to flash X4-SC2 image

Connect all necessary cables to AH212 box as below. It’s easy to do with place AH212 up-side-down.

From left to right: Power, USB-C, Console, HDMI, Ethernet

USB-C is only using for flash image.

USB-Micro is for Console connection.


Setup the serial port settings (921600 baud rate  8N1)

Option 1:  Enable USB buring mode for V3 Buring Tool App by holding USB BOOT button and apply AC to box as below

You shall see below bootloader print out on the console window indicating USB burning mode enabled.



Option 2: Apply power and press "enter" on console to access uboot prompt then execute "run update" command to start USB burning mode.


Launch USB Burn Tool V3.1.1 and verify it’s connected with AH212.  We shall see the “connection 0%” status 

Load the image and start to program the AH212. 

Once the flashing is completed, click on STOP and disconnect USB-C cable.

Close the USB Burning Tool App and cycle the AC.


If driver is not properly installed and you cannot see the device , please manually install the driver with below steps:

If a yellow exclamation point "!" appears when the device is connected in the device manager, it means that the driver has not been installed successfully, and you need to install the driver manually.


1) First enter the directory specified by the tool installation, first click dpscat.exe to sign the driver.

2)During the signing process, if security prompt when need signature or authorization, need allow this operation.


3)Choose the corresponding installation according to the system bit requirement of your own machine, choose dpinst64.exe for 64 bit and dpinst32.exe for 32 bit.

4)Or manually update the driver in the device manager, right-click on the problematic device and select update driver.

5)Select "Browse my computer for driver software", select C:\Amlogic\Aml_Burn_Tool\V3\Driver in the tool installation directory to update the driver.


6.       The driver is installed successfully.



Boot up UI

AH212 shall reboot with boot logo as below if the image is programmed successfully and AC cycled.


A generic RDK UI shall be launched with active ethernet. 

Use Amlogic IR remote to check YouTube and verify 2K and 4K playback.


Other Methods to update the firmware:

2) MfrUtils

Download the image to /data/ path on the device.

mfrUtil -u /data/aml_upgrade_package.img



Youtube RDK CommonPort Archtecture:


  • No labels