Introduction

This manual describes the rdk-generic-broadband-image build procedure with EasyMesh Controller enabled for Yocto 3.1 builds. It will be used to generate rdk-generic-broadband-image for Raspberry Pi reference platform.

Host Setup

For Host setup details refer this link: How to Build - Setting up the Host Environment

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
$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/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

.netrc
machine code.rdkcentral.com
  login YOUR_USERNAME
  password YOUR_PASSWORD

Yocto Build

To build, follow below instructions

Build Steps
$ mkdir <workspace dir>
$ cd <workspace dir>
$ repo init -u https://code.rdkcentral.com/r/manifests -b dunfell -m rdkb-extsrc.xml
$ repo sync -j`nproc` --no-clone-bundle
$ MACHINE=raspberrypi-rdk-broadband source meta-cmf-raspberrypi/setup-environment

In order to enable EasyMesh Controller for the build "easymesh-controller" distro feature must be added. The following line must be added to a configuration file (could be meta-cmf-raspberrypi/conf/distro/include/rdk-rpi.inc or meta-cmf-raspberrypi/conf/machine/raspberrypi-rdk-broadband.conf etc):

DISTRO_FEATURES_append = " easymesh-controller "

Note: Before proceeding make sure you have the correct branch by checking the following items:

  • meta-cmf/recipes-core/packagegroups/packagegroup-rdk-ccsp-broadband.bbappend has to include a line with "easymesh-controller" regarding DISTRO_FEATURES.
  • meta-rdk-broadband/recipes-ccsp/ccsp/ccsp_common.inc has to include a line with "easymesh-controller" regarding DISTRO_FEATURES.
  • meta-rdk-broadband/recipes-ccsp/ccsp/rdk-easymesh-controller.bb must exist.
Build Steps Continued
$ bitbake rdk-generic-broadband-image
  • No labels

3 Comments

    • Engin Akca 
      Thanks a lot for the build instructions. I have a question . Do you have any idea how can I set rdk-b as Easymesh Agent. Thanks a lot
  1. MACHINE=raspberrypi-rdk-broadband source meta-cmf-raspberrypi/setup-environment
    bash: meta-cmf-raspberrypi/setup-environment: No such file or directory

  2. ERROR: ParseError at /home/dingo/EM/meta-rdk/recipes-core/packagegroups/packagegroup-rdk-qt5.bb:5: Could not inherit file classes/populate_sdk_qt5.bbclass