Adding a New Test Component

Created on February 16, 2026

This section briefs how to add a new component along with TR-181 data models to RDK-B.

Test Component API List

TestComponent_GetParamUlongValue API is used to retrieve the parameter value of type “unsignedInt”
TestComponent_SetParamUlongValueAPI is used to set the parameter value of type “unsignedInt”
TestComponent_GetParamStringValue API is used to retrieve the parameter value of type “string”
TestComponent_SetParamStringValue   API is used to set the parameter value of type “string”
TestComponent_Commit                       To Commit all the update to the data model

Build ccsp-testcomponent for Raspberry Pi device

  1. Put the ccsp-testcomponent.bb recipe file inside meta-rdk-broadband/recipes-ccsp/ccsp  location.
  2.  Create folder names “files” under  “meta-rdk-broadband/recipes-ccsp/ccsp” path
  3. Put CcspTestComponent.tar.gz (source code of TestComponent) file inside meta-rdk-broadband/recipes-ccsp/ccsp/files   location.
  4. Build the test component inside build directory i.e. build-raspberrypi-rdk-broadband directory.
    bitbake ccsp-testcomponent
  5. Binary file of test component will be present inside build-raspberrypi-rdk-broadband/tmp/work/cortexa7hf-neon-vfpv4-rdk-linux-gnueabi/ccsp-testcomponent/1.0-r0/image/usr/bin/ location
  6. XML file of test component will be present inside 
    build-raspberrypi-rdk-broadband/tmp/work/cortexa7t2hf-neon-vfpv4-rdk-linux-gnueabi/ccsp-testcomponent/1.0-r0/image/usr/ccsp/testcomponent/ location.

NOTE : For rpi4 , yocto 3.1 use ccsp_testcomponent.tar.gz to avoid build errors due to cfg directory missing

Run the Test Component

Copy the supported files to Raspberry Pi device

Copy test_component (Binary of ccsp-testcomponent, generated in step 4 of Build) and TestComponent.xml (present at location mentioned in step 5 of Build) to /tmp/ directory of Raspberry Pi device.

Execute the TestComponent in the Raspberry Pi device

Go to /tmp/ directory of Raspberry Pi 3 and start the ccsp-testcomponent
./test_component -subsys eRT.

You can check the status of the process by doing  ps in the RPi device.

Validate if component is registered with CR

DMCLI (Database Manager Command Line Interface) provides interface used to send and receive command/messages via CLI (Command Line Interface) over Telnet and SSH protocols.

List all the test component parameters using dmcli:

dmcli eRT getv Device.TestComponent.

Expected Output:
CR component name is: eRT.com.cisco.spvtg.ccsp.CR
subsystem_prefix eRT.
getv from/to component(eRT.com.cisco.spvtg.ccsp.testcomponent): Device.TestComponent.
Execution succeed.
Parameter    1 name: Device.TestComponent.TestSampleParamUlong
               type:       uint,    value: 1

Change the “TestSampleParamUlong” parameter value by using below command:

dmcli eRT setv Device.TestComponent.TestSampleParamUlong uint 5

Now verify the value by this command

dmcli eRT getv Device.TestComponent.TestSampleParamUlong

Include Newly Added Component in Package Group

Once the validation is successfully done and we can now include the new component (ccsp-testcomponent) in the package groups.

  1.  Open “packagegroup-rdk-ccsp-broadband.bb” file present at “meta-rdk/recipes-core/packagegroups/packagegroup-rdk-ccsp-broadband.bb” location.
  2. In the “RDEPENDS_packagegroup-rdk-ccsp-broadband” flag add the name of new component.
Go To Top