Skip to end of metadata
Go to start of metadata


Copyright 2016 RDK Management, LLC. All rights reserved. The contents of this document are RDK Management, LLC Proprietary and Confidential and may not be distributed or otherwise disclosed without prior written permission of RDK Management, LLC.

Host Setup

Yocto Build Steps

To build, follow below instructions

Build Steps

$ mkdir <workspace dir>
$ cd <workspace dir>
$ repo init -u https://code.rdkcentral.com/r/manifests -b rdk-next -m rdkb-extsrc.xml
$ repo sync -j4 --no-clone-bundle
$ source meta-cmf-raspberrypi/setup-environment (Select option raspberrypi-rdk-broadband.conf)
$ bitbake rdk-generic-broadband-image


Note  :  On Successful build,
The kernel Image and root filesystem will be created under the below path,

             ~/tmp/deploy/images/raspberrypi-rdk-broadband folder


Flashing Procedure

Following command can be used to flash the RPI image to sd card using linux machine . dd tool should be available in linux

sudo dd if=<path to ImageName.rpi-sdimg> of=<path to SD card space> bs=4M
Example:
$ sudo dd if=rdk-generic-broadband-image-raspberrypi-rdk-broadband.rpi-sdimg of=/dev/sdb bs=4M

https://www.balena.io/etcher/ can be used to flash RPI image in sd card using windows 

  • No labels

16 Comments

  1. Is it possible to build this using rdkb-nosrc.xml as a manifest, and not rdkb-extsrc.xml? 


    This is because we want to patch some of the components [config, new behavior] and using extsrc pretty much excludes that.
    But the problem seems to be that many of the recipes point to gerrit.teamccp.com for their source, and not code.rdkcentral.com.
    For example:

    meta-rdk-broadband/recipes-ccsp/ccsp/ccsp-wifi-agent.bb:SRC_URI = "${RDKB_CCSP_ROOT_GIT}/CcspWifiAgent/generic;protocol=${RDK_GIT_PROTOCOL};branch=${CCSP_GIT_BRANCH};name=CcspWifiAgent"


    Where

    meta-cmf/conf/distro/include/rdk-versions.inc:RDKB_CCSP_ROOT_GIT ?= "git://${RDK_GIT}/rdk/rdkb/components/opensource/ccsp"
    meta-cmf/conf/distro/include/rdk-versions.inc:RDK_GIT ?= "gerrit.teamccp.com"
    meta-rdk/conf/distro/include/rdk-versions.inc:RDKB_CCSP_ROOT_GIT ?= "git://${RDK_GIT}/rdk/rdkb/components/opensource/ccsp"
    meta-rdk/conf/distro/include/rdk-versions.inc:RDK_GIT ?= "gerrit.teamccp.com"


    Now, if we look in the rdkb-extsrc.xml manifest, we see that WifiAgent comes from

        <project name="rdkb/components/opensource/ccsp/CcspWifiAgent" revision="rdk-next"/>


    And then gen-autoconf.py creates

    meta-cmf/conf/distro/include/rdk-external-src.inc:EXTERNALSRC_pn-ccsp-wifi-agent = "${@'${RDK_ROOT_PATH}/rdkb/components/opensource/ccsp/CcspWifiAgent' if (os.path.isdir('${RDK_ROOT_PATH}/rdkb/components/opensource/ccsp/CcspWifiAgent')) else ''}"


    And so does a bbappend for meta-cmf-ci20:

    meta-cmf-ci20/recipes-ccsp/ccsp/ccsp-wifi-agent.bbappend:EXTERNALSRC_pn-ccsp-wifi-agent = "${RDK_ROOT_PATH}/rdkb/components/opensource/ccsp/CcspWifiAgent"


    And so bitbake uses that directory and because EXTERNAL_SRC is defined, none of fetch, unpack or patch tasks is executed. Hence why we need to use nosrc.
    But as you can see not only is the source RDK_GIT based, which is easy to override, but the paths don't match.
    Here's the path for CMF:
    https://code.rdkcentral.com/r/rdkb/components/opensource/ccsp/CcspWifiAgent
    And the path for teamccp:
    git://gerrit.teamccp.com/rdk/rdkb/components/opensource/ccsp/CcspWifiAgent/generic
    We could trick this, almost, by setting RDK_GIT to match code.rdkcentral.com and drop the extra rdk and add the r,  but what we can't do is avoid that generic at the end, so we're left with not being able to get this code easily without completely overriding the path for each component. And that would include the name, branch and protocol.
    In the end. we tricked this out using git's url.insteadof config value:
    [url "https://code.rdkcentral.com/r/rdkb/components/opensource/ccsp/CcspWifiAgent"]
            insteadOf = https://gerrit.teamccp.com/rdk/rdkb/components/opensource/ccsp/CcspWifiAgent/generic
    But this means we have a config file approaching 100 lines long

    I was wondering if:

    1. I'm mistaken
    2. There's a reason for this
    3. If there are plans to fix this
  2. I was mistaken there was a merge we were missing.

    But, the following, un-referenced, components are still pointing at teamccp from meta-rdk-broadband:

    ./recipes-ccsp/ccsp/ccsp-dslagent.bb:SRC_URI ="${RDKB_CCSP_ROOT_GIT}/DSLAgent/generic;protocol=${RDK_GIT_PROTOCOL};branch=${CCSP_GIT_BRANCH};name=DSLAgent"
    ./recipes-ccsp/ccsp/ccsp-vlanagent.bb:SRC_URI ="${RDKB_CCSP_ROOT_GIT}/VLANAgent/generic;protocol=${RDK_GIT_PROTOCOL};branch=${CCSP_GIT_BRANCH};name=VLANAgent"
    ./recipes-ccsp/ccsp/ccsp-xtmagent.bb:SRC_URI ="${RDKB_CCSP_ROOT_GIT}/XTMAgent/generic;protocol=${RDK_GIT_PROTOCOL};branch=${CCSP_GIT_BRANCH};name=XTMAgent"

    1. Hi Z-Howard Teece Let us check the wrong references to teamccp in the repo .

  3. Hi,

    While running build command it is taking more time to build(taken more than 24hr). It is still in buiilding state here.

    Could you please check and revert asap. 

    Executing RunQueue Tasks

    Currently 4 running tasks (374 of 3890) here it taking more time

    1. Hi Z-Rajesh Reddy


      Time for build is purely dependent on CPU power. If you are using a low end machine( or a Virtual box VM in your PC ) , the RPi RDK-B build might take a day 


      But 374 of 3890 seems too odd for 24hours


      Could you please show which are the current running tasks( whatever text that comes below the line you have shared )? In case some hang happened, a good way to come out is to kill the build and run bitbake again

      1. Hi Narayanaswamy Ramaiyer

        Please check below for required info.

        Currently 4 running tasks (489 of 3890) 12% 
        0: linux-raspberrypi-1_4.14.68+gitAUTOINC+do_fetch (pid 14892)       84%|

        1: qemu-native-2.7.0-r1 do_compile - 1457s (pid 1144)

        2: glibc-2.24-r0 do_populate_sysroot -341s (pid 4086)

        3: glibc-2.24-r0 do_package -42s (pid 12246)

        1. Hi Z-Rajesh Reddy


          Linux Raspberrypi and glibc are compiled at very early stages of  Yocto build. If fetch itself is not completed yet, can you just check if the internet connectivity is all good?

          Could you please share the machine configuration of linux to us ( cat /proc/meminfo and cat /proc/cpuinfo )

  4. Hi,

    I try to connect WiFi on RDK-B, but it always show "Unable to Join the Network".

    I am testing on RDK-B_2021q2.

    1. Hi Arthur Huang 

      Could you try changing the password , and reset of board once

      Also, Can you check whether device is getting internet if you connect lan cable .

      1. Hi Deepika Ganapathi Bhat ,

        It still doesn't work.

        I am testing on raspberry pi, it only has one rj-45 which connect to wan.

        1. Hi Arthur Huang 

          Could you give us the below details

          • RPI board is getting internet from wan ?
          • Did you change the wifi password from GUI ?
          • In the client side , can you remove the the existing ssids, (forgot option) and try to connect once. 

          I have verified in RDK-B_2021q2 release image, the client is connecting to RPI SSID.

          1. Hi Deepika Ganapathi Bhat 

            • RPI board is getting internet from wan ?
              Yes, I can ping 8.8.8.8 on RPI, so wan is fine.
            • Did you change the wifi password from GUI ?
              I change both ssid and password of wifi.
            • In the client side , can you remove the the existing ssids, (forgot option) and try to connect once. 
              My mobile phone always failed to connect to RPI, so there is no forgot option.

            WiFi on RPI seems not stable. SSID sometimes show on the list, but sometimes doesn't.

            Best Regards,
            Arthur

            1. Hi Arthur Huang 

               Could you try below options  

              1. factory reset and try

              2. try with different firmware of same release

              3. seen with specific board ? verified with other boards? if not, please try once

              4. try with latest release .

              The reported issue is not observed from our end with rpi

              1. Hi Deepika Ganapathi Bhat ,

                My original board is RPI 3B+.

                After switching to RPI 3B, WiFi works now.

                Best Regards,

                Arthur

  5. Hi.

    Before I don't have problem to build RDK-B RPI. But today I met below error message.

    NOTE: Executing SetScene Tasks
    NOTE: Executing RunQueue Tasks
    ccsp-common-library-native-1.99+git999-r0 do_compile: NOTE: ccsp-common-library-native: compiling from external source tree /home/djkim/rdk-gdm/meta-cmf/../rdkb/components/opensource/ccsp/CcspCommonLibrary
    ERROR: dibbler-1.0.1-r0 do_patch: Command Error: 'quilt --quiltrc /home/djkim/rdk-gdm/build-raspberrypi-rdk-broadband/tmp/sysroots/x86_64-linux/etc/quiltrc push' exited with 0  Output:
    Applying patch fix_type_casting.patch
    patching file SrvMessages/SrvMsg.cpp
    patch unexpectedly ends in middle of line
    Hunk #2 FAILED at 260.
    1 out of 2 hunks FAILED -- rejects in file SrvMessages/SrvMsg.cpp
    Patch fix_type_casting.patch does not apply (enforce with -f)
    ERROR: dibbler-1.0.1-r0 do_patch: Function failed: patch_do_patch
    ERROR: Logfile of failure stored in: /home/djkim/rdk-gdm/build-raspberrypi-rdk-broadband/tmp/work/cortexa7t2hf-neon-vfpv4-rdk-linux-gnueabi/dibbler/1.0.1-r0/temp/log.do_patch.103288
    ERROR: Task (/home/djkim/rdk-gdm/meta-openembedded/meta-networking/recipes-connectivity/dibbler/dibbler_1.0.1.bb:do_patch) failed with exit code '1'
    NOTE: Tasks Summary: Attempted 1226 tasks of which 1196 didn't need to be rerun and 1 failed.
    NOTE: Writing buildhistory

    Summary: 1 task failed:
      /home/djkim/rdk-gdm/meta-openembedded/meta-networking/recipes-connectivity/dibbler/dibbler_1.0.1.bb:do_patch
    Summary: There were 31 WARNING messages shown.
    Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
    djkim@ubuntu:~/rdk-gdm/build-raspberrypi-rdk-broadband$

    Regards,

    1. Hi djkim ,

      Can you please provide below details

      • Is it with fresh build ?
      • Which release you are using ?
      • Share the commands that you followed to build the code
      • Did you try clean build one more time ?

      Regards,
      Priyankaa KVB