RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
To set up RDK-B on a Raspberry Pi, ensure you have a Raspberry Pi 4 Model B and are using Kirkstone builds. Follow the steps below for the build process:
Git- 1.8.3.1 or greater Python- 3.8.10 tar- 1.24 or greater
The instructions provided below are meant to be executed via the command line on an Ubuntu machine.
# essential packages installation # super user mode is required # major essential packages sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib g++-multilib build-essential chrpath socat bison curl cpio python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm # Installation steps for Ubuntu 20.04 # Update and upgrade the system sudo apt-get -y update sudo apt-get -y upgrade # Install essential packages sudo apt install -y gawk wget python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm python3-subunit mesa-common-dev zstd liblz4-tool git diffstat unzip texinfo gcc build-essential chrpath socat cpio python python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping make xsltproc docbook-utils fop dblatex xmlto lib32z1 libc6-i386 g++-multilib curl locales vim git-extras tree valgrind exuberant-ctags cscope dos2unix lcov libcunit1-dev libjson-perl members screen silversearcher-ag git-review nano
sudo dpkg-reconfigure dash
Select “No”
To choose bash, when the prompt asks if you want to use dash as the default system shell- select “No”
Upgrade your Git version to 1.8.x or higher.
sudo apt-get install software-properties-common sudo add-apt-repository ppa:git-core/ppa sudo apt-get update sudo apt-get install git
Once git is installed, configure your name and email using the below commands.
# review your existing configuration git config --list --show-origin # configure user name and email address git config --global user.name "John Doe" git config --global user.email johndoe@example.com # configure git cookies. Needed for Gerrit to only contact the LDAP backend once. git config --global http.cookieFile /tmp/gitcookie.txt git config --global http.saveCookies true
In order to use Yocto build system, first you need to make sure that repo is properly installed on the machine.
# create a bin directory mkdir ~/bin export 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 the repo. For more details on how to setup .netrc credentials, please refer this page .
A sample .netrc file is illustrated below.
machine code.rdkcentral.com login <YOUR_USERNAME> password <YOUR_PASSWORD>
mkdir <workspace dir> cd <workspace dir> #Following commands fetch the source code using repo tool #repo init -u https://code.rdkcentral.com/r/rdkcmf/manifests -m <manifest.xml> -b <branch_name> #Example: repo init -u https://code.rdkcentral.com/r/rdkcmf/manifests -m rdkb-extsrc.xml -b rdkb-2024q4-kirkstone repo sync --no-clone-bundle --no-tags #Below step configures and sets up your directory to start an appropriate build #MACHINE=<machine type> source <relative path to setup_environment>/setup-environment #Example: MACHINE=raspberrypi4-rdk-broadband source meta-cmf-raspberrypi/setup-environment #Initiate the build using the bitbake command: bitbake <image-name> #Example: bitbake rdk-generic-broadband-image #To build TDK image bitbake rdk-generic-broadband-tdk-image
For CMF release, please refer: RDK-B Code Releases
This section outlines two methods for flashing: Flashing the SD Card in a Linux environment and using balenaEtcher App (flashing in Windows).
For Raspberry Pi 4 Model B Reference Platform, following command can be used to flash the RPi image to sd card using linux machine. bmap tool should be available in linux
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
For flashing the image using BalenaEtcher in Windows, follow the below steps:
To flash the image on an SD card, you will need to download the BalenaEtcher application: balena.io.
*Note: Prefer to use a 32GB SD card, and there should be a minimum of 12GB of free space available in the device. Be sure to remove all other portable flash drives/hard drives/SD cards from your computer before flashing the RDK image.
Connect USB-Ethernet adapter to one of the USB slots present in Raspberry Pi.
Connect Ethernet cable from USB-Ethernet adapter to the client device/machine.
Insert the SD card into Micro SD Card Slot.
Connect the power cable to Micro USB power input.
Once the RPI boots up, login prompts will be displayed on the TV
WebUI can be accessed by both the LAN clients and from the WAN Side.