RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
<work in progress>
Data available partially
Basic skills expected, relevant RDK links,hardware requirements etc
Data available partially
build VM, pre requisites etc. for Dunfell builds
RPI 3B/3B+ Model Reference Platform
This manual describes the rdk-generic-broadband-image build procedure for Yocto 3.1 builds. This will upgrade the default build system used in RDKB, from morty(2.2) to dunfell(3.1). In addition to upgrades to opensource packages, Yocto 3.1 also contain Long term Support release feature. The current version lacks the variety of features available in the dunfell. The upgraded build tools will be used to generate rdk-generic-broadband-image for Raspberrypi reference platform.
Yocto 3.1 Upgradation support the following:
Each component in RDK is a standalone repository with its own individual build tools producing a library or set of binaries. When we upgrade the OE layers to the newer versions, we need to make necessary changes in the RDK layers which use these components, to avoid build failures.
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.
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
$
sudo
apt-get
install
git cmake autoconf texinfo openjdk-8-jdk openjdk-8-jre \
m4 libtool libtool-bin curl pkg-config lib32z1 doxygen
Existing source : https://wiki.rdkcentral.com/display/RDK/Join+RDK
Relevant RDK Links: https://wiki.rdkcentral.com/display/RDK/Important+Links
Hardware requirements: https://wiki.rdkcentral.com/display/RDK/How+to+Build#HowtoBuild-BuildSetupInstructions - Prerequisites
Data available partially
build VM, pre requisites etc. for Dunfell builds
https://wiki.rdkcentral.com/display/RDK/RDK-V+rdk-next+Yocto+3.1+dunfell+build+for+Raspberrypi
Data available partially
build VM, pre requisites etc. for Dunfell builds
Data available
Basic build commands
Data available
Basic build commands
Data available partially
Current flash image steps + screenshots
Data available partially
Current flash image steps + screenshots
Data not available
Explain layer structures in RDK-V build.Refers both Rpi & Ref platform
Data not available
Check whether the Thunder plugin template earlier created and shared by team is sufficient for this.
Data not available
Explain how to develop based on the Thunder plugin template
Data not available
Thunder Interfaces, COMRPC
Data not available
ThunderJS
Item | Data Exist? | Remarks |
Before you begin | Partially | Basic skills expected, relevant RDK links,hardware requirements etc |
Environment Rpi 3b+ | Partially | build VM, pre requisites etc. for Dunfell builds |
Environment IPSTB ref box | Partially |
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 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
|
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
$ bitbake rdk-generic-broadband-image
Following command can be used to flash the RPI image to sd card using linux machine . bmap tool should be available in linux
Flash command
...
bzip2 -d <path to ImageName.wic.bz2>
sudo -E bmaptool copy --nobmap <path to ImageName.wic> <path to SD card space>
Example:
$ bzip2 -d rdk-generic-broadband-image-raspberrypi-rdk-broadband.wic.bz2
$ sudo -E bmaptool copy --nobmap rdk-generic-broadband-image-raspberrypi-rdk-broadband.wic /dev/sdb
...
No
...
Feature
...
Supported
...
No
...
Feature
...
Supported
...
Log level control through CcspLogAgent
...
Band Steering using RSSI
...
Backup and Restore
...
SelfHeal
...
...
build VM, pre requisites etc. for Dunfell builds | |
Build basic image for Rpi |
...
Yes | Basic build commands |
Build basic image IPSTB ref box |
...
Yes | Basic build commands |
Flash image and bring up Rpi |
...
Partially | Current flash image steps + screenshots |
Flash image and bring up IPSTB ref box |
...
Partially | Current flash image steps + screenshots |
Yocto recipe structure of relevant components - wpeframework and RDKservices |
...
No | Explain layer structures in RDK-V build.Refers both Rpi & Ref platform |
Setup the Thunder plugin template |
...
No | Check whether the Thunder plugin template earlier created and shared by team is sufficient for this. |
Develop a sample thunder plugin |
...
No | Explain how to develop based on the Thunder plugin template |
Interface with other RDK services |
...
No | Thunder Interfaces, COMRPC |
Interface with Lightning apps |
...
No | ThunderJS |