Skip to end of metadata
Go to start of metadata


This page is dedicated to bring up yocto 3.1 upgradation for RDK generic camera image.

Host Setup

The OpenEmbedded build system should be able to run on Ubuntu 18.04 distribution/other compatible linux distribution with the following versions for Git, tar, and Python.

  • Git or greater
  • tar 1.27 or greater
  • Python 3.4.0 or greater
  • Coreutils(E.g realpath)

Note: You should also have about 50 Gbytes of free disk space for building images.

The essential packages you need for a supported Ubuntu or Debian distribution are shown in the following command:

$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \
  build-essential chrpath socat cpio python python3 python3-pip python3-pexpect \
  xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev \
  pylint3 xterm bmap-tools

Repo Setup

In order to use Yocto build system, the repo tool must be properly installed on the machine.

To install Repo make sure you have a /bin directory in your home directory and that it is included in your path

Repo Setup Steps
$ mkdir ~/bin
$ PATH=~/bin:$PATH
Download the repo tool and ensure that it is executable
$ curl > ~/bin/repo
$ chmod a+x ~/bin/repo

Note: it is also recommended to put credentials in ~/.netrc when interacting with repo.

A sample ~/.netrc file is illustrated below


Build Procedure

Build step
$ repo init -u "" -m rdkc-nosrc.xml -b yocto-dunfell-upgrade
$ repo sync
$ source meta-cmf-raspberrypi/setup-environment (Choose 11 `meta-cmf-raspberrypi/conf/machine/raspberrypi0-rdk-camera.conf`)
$ bitbake rdk-generic-camera-image

Image Flash Procedure

Flash step
$ bzcat ImageName.wic.bz2 | sudo dd of=/dev/sdc bs=4M iflag=fullblock oflag=direct conv=fsync

bzcat rdk-generic-camera-image-raspberrypi0-rdk-camera.wic.bz2 | sudo dd of=/dev/sdc bs=4M iflag=fullblock oflag=direct conv=fsync

Errors and Challenges

S.NOErrors/challengesReceipes/ReposUpdatesChange setsStatus
1.Add camera manifest files

Added rdkc-nosrc and rdkc-extsrc manifest

file in yocto-dunfell-upgrade branch

2Create dunfell branch for camera component

configmgr, httpclients-utility

ledmgr-camera, plugins, rms

cvr, mediastreamer, thumbnail 

Created yocto dunfel upgrade branch for camera specific componentBranch Created

ERROR: ExpansionError during parsing

fatal: remote error: rdkc/components/opensource/ems unavailable

meta-rdk-camera/recipes-extended/ems/ems_git.bbMoved meta-rdk-camera and meta-cmf-camera latest update upto 23Jul20 from "rdk-next" into "yocto-dunfell-upgrade" branch


ERROR: ExpansionError during parsing


FetchError: Fetcher failure: Unable to resolve 'yocto-dunfell-upgrade' in upstream git repository in git

Specific component source codes are not available in rdkcentral. so,masked this component in file.
5ERROR: ExpansionError during parsing audioserver-sample-apps.bbmeta-rdk-video/recipes-extended/audioserver/
6ERROR: ExpansionError during parsing ctrlm-testapp.bbmeta-rdk-video/recipes-extended/ctrlm/
7ERROR: ExpansionError during parsing audioserver-headers.bbmeta-rdk-video/recipes-extended/audioserver/
8ERROR: ExpansionError during parsing audioserver.bbmeta-rdk-video/recipes-extended/audioserver/
9ERROR: ExpansionError during parsing ctrlm-main.bbmeta-rdk-video/recipes-extended/ctrlm/
10ERROR: ExpansionError during parsing ctrlm-headers.bbmeta-rdk-video/recipes-extended/ctrlm/
11ERROR: ExpansionError during parsing base64_git.bbmeta-rdk-ext/recipes-support/base64/
12ERROR: Nothing RPROVIDES 'ems'meta-cmf-raspberrypi/recipes-core/packagegroups/packagegroup-rdk-oss-camera.bbappendChanged ems into rms because we have recently modified this in rdk-next

ERROR: Nothing PROVIDES 'ffmpeg'

ffmpeg was skipped: because it has a restricted license 'commercial'. Which is not whitelisted in LICENSE_FLAGS_WHITELIST

openembedded-core/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.16.2.bbConfigured gstreamer1.0-libav preferred version as 1.14.1

ERROR: rtmessage-git-r0 do_fetch: Fetcher failure for URL: 'git://

Please set a valid SRCREV for url

meta-rdk-ext/recipes-common/rtmessage/rtmessage_git.bbAdded SRC_REV in rtmessage_git.bb
15ERROR: rtmessage-git-r0 do_fetch: Fetcher failure: Unable to find file file://rtrouted.confmeta-rdk-ext/recipes-common/rtmessage/rtmessage/Added rtrouted.conf file in rtmessage directory

ERROR: gstreamer1.0-plugins-bad-1.16.2-r0 do_patch

Applying patch gstreamer1.0-plugins-bad_1.patch

Hunk #1 FAILED at 101.

meta-rdk-camera/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_%.bbappendRemoved meta-rdk-camera/recipes-multimedia/gstreamer folder
17ERROR: QA Issue: rms: The LIC_FILES_CHKSUM does not match for file://LICENSE;md5=ae6150f078ea1c81960d0595a46a293ardkc/components/opensource/rmsMoved rms source latest changes upto 24Jul20 from rdk-next into dunfell branch
18ERROR: bcm2835-bootfiles-20180619-r3 do_fetch: Fetcher failure for URL: ''. Checksum mismatch!meta-cmf-raspberrypi/recipes-bsp/bootfiles/bcm2835-bootfiles.bbappendMasked bcm2835-bootfiles.bbappend

No rule to make target 'arch/arm/boot/dts/bcm2711-rpi-4-b.dtb

ERROR: Task failed with exit code '1'

meta-rdk/conf/distro/include/rdkc.incUpgrade linux kernel version from 4.14 to 4.19

ERROR: lighttpd-1.5-r0 do_compile: oe_runmake failed

Makefile:1663: recipe for target 'lemon.o' failed

meta-cmf-raspberrypi/conf/machine/raspberrypi0-rdk-camera.confChanged lighttpd preferred version as 1.4.53
21configmgr : fatal error: PRO_file.h: No such file or directoryrdkc/components/opensource/configMgrMoved configmgr source code changes upto 24Jul20 from rdk-next into dunfell branch
22plugins: error: 'RdkCVideoCapturer' does not name a typerdkc/components/opensource/pluginsMoved plugins source code changes upto 27Jul20 from rdk-next into dunfell branch
23ERROR: mediastreamer-git-r0 do_package_qameta-rdk-camera/recipes-multimedia/mediastreamer/mediastreamer_git.bbAdded RDEPENDS file
24Thumbnail : CMake Error at CMakeLists.txt:40 (ADD_SUBDIRECTORY : normal_thumbnail )rdkc/components/opensource/thumbnailMoved thumnail source code changes upto 27Jul20 from rdk-next into dunfell branch
25smart_thumbnail.h:53:10: fatal error: RdkCVideoCapturer.h: No such file or directorymeta-rdk-camera/recipes-multimedia/thumbnail/thumbnail_git.bbAdded plugins dependency at thumbnail receipes.
26thumbnail : fatal error: opencv2/opencv.hpp: No such file or directorymeta-openembedded/meta-oe/recipes-support/opencv/opencv_4.1.0.bbAvoid to store opencv header files under opencv4 in sysroot.
27thumbnail : fatal error: mongoose.h: No such file or directorymeta-rdk-camera/recipes-multimedia/thumbnail/thumbnail_git.bbAdded mongoose dependency at thumbnail receipes
28thumbnail : error: 'CV_YUV2BGR_NV12' was not declared in this scoperdkc/components/opensource/thumbnailIncluded types_c.h at normal_thumbnail.h file.
29ERROR: When reparsing /mnt/home/sanil534/Savidha/RDK-C/meta-rdk/recipes-core/images/, the basehash value changed from 1b3e827be261ee60d5bcea3827f4ede9ff99ebbd1c9e101686fe686e5ace3268 to 22d5dc96290d6fa6a5119e634d53e99bdc17d3dd4bf52381e874719822deb742. The metadata is not deterministic and this needs to be fixed.meta-cmf-raspberrypi/recipes-core/images/rdk-generic-camera-image.bbappendAdded BB_HASH_IGNORE_MISMATCH = "1 in rdk-generic-camera-image.bbappend file
30ERROR: rdk-generic-camera-image-1.0-r0 do_rootfs: Taskhash mismatch 271be5777a813d0312a7a1fba331bf05f45a42cd7249ed412f5bbd966a452c21 versus 66a9d352e30c8c1bcca799a340b7051c2fd97feaf98d379678cae7da6d43afc3 for /mnt/home/sanil534/Savidha/RDK-C/meta-rdk/recipes-core/images/ IMAGE_NAME[vardepsexclude] = "DATETIME" in rdk-generic-camera-image.bbappend file
31nothing provides gstreamer1.0-plugins-bad-opengl needed by packagegroup-rdk-gstreamer1-1.0-r0.allmeta-cmf-raspberrypi/recipes-core/packagegroups/packagegroup-rdk-gstreamer1.bbappendOpengl license was whitelisted
32ERROR: userland-20190724-r0 do_patch: Command Error:Patch 0013-Implement-triple-buffering-for-wayland.patch is already appliedmeta-raspberrypi/recipes-graphics/userland/userland_git.bbRemoved morty from machine overrides and distro.
33Bootup Issuemeta-rdk/conf/distro/include/rdkc.incRemoved VC4graphics in camera build to avoid bootup issue
34ERROR: Nothing RPROVIDES 'faad2'meta-cmf-raspberrypi/recipes-core/packagegroups/packagegroup-rdk-gstreamer1.bbappend Allowed fadd2 with LICENSE_FLAGS_WHITELIST conditional check.

35nothing provides gstreamer1.0-plugins-bad-faad needed by packagegroup-rdk-gstreamer1-1.0-r0.allmeta-cmf-raspberrypi/recipes-core/packagegroups/packagegroup-rdk-gstreamer1.bbappendAllowed gstreamer1.0-plugins-bad-faad with LICENSE_FLAGS_WHITELIST conditional check. undefined reference to `PRO_GetStr'rdkc/components/opensource/configMgrMoved Configmgr changes from rdk-next branch into yocto-dunfell-upgrade branch
37ERROR: glib-2.0-native-1_2.62.6-r0 do_patchmeta-rdk-ext/recipes-core/glib-2.0rebase RDK patch from glib 2.62.4 to glib 2.62.6

Supported feature updates

S.NOErrors/challengesReceipes/ReposUpdatesChange setsStatus
1.RDK Media Streamer validation ( RMS ) validationmeta-cmf-raspberrypi/recipes-extended/rms/Moved automatic bootup process changes from rdk-nect into yocto-dunfell-upgrade branch

meta-cmf-raspberrypi/recipes-extended/rmsBy default triggered rms and mediastreamer service without any dependency.
2Normal Thumbnail validationrdkc/devices/raspberrypi/mediastreamerMoved needed normal thumbnail changes from rdk-next into yocto-dunfell-upgrade
3CVR validation with kvssink and AWS basic credential( Access id and secret access key)meta-cmf-raspberrypi/recipes-multimedia/cvrMoved cvr with kvssink validation related changes from morty into dunfell
meta-rdk-extMoved jsmn,kvs,log4cplus and gtest receipes from morty into dunfell
4Firmware upgrade validation at yocto 3.1 camera imagemeta-cmf-raspberrypi/recipes-extended/sysintMoved firmware upgrade changes from rdk-next branch into yocto-dunfell-upgrade branch

Supported Features

S.NoFeaturesSupported StatusRemark
1Ethernet connection(  USB Ethernet Adapter )(tick)NA
2WiFi Connection(tick)NA
3RMS ( RDKC Media Server )(tick)NA
4CVR ( Continuous video recording ) with kvssink(tick)NA
5Normal Thumbnail(tick)NA
6Firmware upgrade with tftp and xconf server(tick)NA
7Webpa(error)CMFSUPPORT-38 : In-progress to host the webpa-camera in xmidt-org github

User Manual for Supported Feature

S.NoFeaturesUser Manual
1RMS ( RDKC Media Server )RDK-C RDKC Media Server( RMS ) - Community
2CVR ( Continuous video recording )RDK-C : Continuos Video Recording (CVR)
3Normal ThumbnailRDK-C Normal Thumbnail
4Firmware upgrade with tftp and xconf serverRDK-C Firmware Upgrade with HTTP and TFTP support

Known Issues and Limitations

  1.  WiFi connection:
    •  After bootup unable to get the 'WiFi IP' address by default.
    • Once we restart the " wpa_supplicant.service" forcefully then we can able to get the 'WiFi IP'.
  2.  System date and time is not properly updating.

  • No labels