CDRouter prpl Certification User Guide
Introduction
CDRouter offers a dedicated prpl Certification expansion for the prpl Foundation’s prplWare and High-Level API Certification program.
As an officially approved testing tool, CDRouter is an authorized test tool for use in conducting the prplWare and High-Level API self-testing certification. The prpl Foundation’s website is the definitive source for information regarding the official certification process and associated requirements.
The prplWare and High-Level API Certification program includes test cases for the following test plans:
The prpl HL-API data models for USP and CWMP are available in XML and HTML formats here:
- prpl HL-API data model (prpl Foundation login required)
The baseline profiles for USP and CWMP are included in the data models. The current version of each is:
-
X_PRPLWARE-COM_4_0:1 (USP)
-
X_PRPLWARE-COM_CWMP_4_0:1 (CWMP)
-
X_PRPL-COM_3_2:1 (USP)
-
X_PRPL-COM_CWMP_3_2:1 (CWMP)
-
X_PRPL-COM_3_1:1 (USP)
-
X_PRPL-COM_CWMP_3_1:1 (CWMP)
Licensing
CDRouter prpl Certification is a licensed expansion that must be purchased from QA Cafe. Additional expansions are required for both HL-API and prplOS testing:
- HL-API: requires the USP expansion license, a TR-069 expansion license is optional
- prplOS: requires the IPv6, Multiport, and either TR-069 or USP expansion licenses
For information on upgrading a CDRouter license to include prpl Certification or any other expansions, please contact sales@qacafe.com. To learn more about CDRouter licensing, see the license FAQ.
Self Testing Certification
To achieve prplWare and HL-API certification, both HL-API and prplOS Network Functionality test results are required as part of the self-testing certification process.
A certification requester must:
- Be a valid prpl member.
- Pass all required Core Feature tests:
- HL-API Test Plan USP Tests
- prplOS Network Functionality Test Plan Core Tests
- Pass all claimed Optional Feature tests:
- CWMP
- Single Ethernet LAN
- Provide complete product information (manufacturer, model, software version).
- Submit all required documentation to the Certification TWG (cert.twg@prplfoundation.org).
- Product Information (Model, software version)
- Submit samples and firmware to prpl Foundation to allow for verification.
- prplWare 3.2/4.0 must be OpenWRT version 23.05 with a 5.15 kernel version.
- prplWare 4.1 is planned to be OpenWRT version 24.10 with a 6.6 kernel version.
- Pay the $1,500 Application Review Fee to the prpl Foundation.
For more information on the certification program, requirements, and application process, please refer to the following link:
Testing Overview
The prpl HL-API tests perform USP or CWMP functions to verify support for the prpl data model profile. The profile defines all required objects, parameters, commands, and events for a prpl device.
The prplOS tests utilize USP or CMWP to modify the DUT data model and evaluate the DUT’s behavior. This includes Bridging, DHCP, IP, Firewall, DNS and other configuration functionality and reporting in the data model.
Support for CWMP (TR-069) is an optional feature for prpl certification. All required tests must be run with USP.
For the HL-API test plan, select and run the prpl-hl-api-cert test module in the prpl Certification expansion using USP. If you are interested in the optional CWMP feature, select and run the test module in the prpl Certification expansion using CMWP.
For the prplOS test plan, select and run the prplOS test module in the prpl Certification expansion using USP. CWMP must be used to claim support for the optional CWMP feature.
The prplOS Network Functionality test plan includes a “Provisional Exclude” section, which specifies tests that are mandatory, optional, or provisionally excluded for certification. Excluded tests are not expected to pass during the current testing cycle.
Quick Start Guide
To get the prplOS expansion running with a minimal config for USP, set the following testvars:
- Set the testvar
supportsUSP
toyes
- Set the testvar
uspControllerMTP
tostomp
- Set the testvar
uspAgentPath
to/queue/agent-1
This minimal setup allows you to run a subset of prplOS tests. Start with section 1.6 to verify your configuration and connectivity with a set of basic tests.
Test Setup
Complete the setup steps below to ensure your configuration meets the requirements of the certification tests.
-
USP or CMWP must be configured for the prpl Certification tests. To get started, set the testvar
prplosProtocol
to eitherusp
orcwmp
and verify that the DUT has a working USP or CWMP CDRouter configuration. For more information about configuring CDRouter for USP or CWMP, please refer to the following user guides: -
If USP is being used, set the testvar
supportsCWMP
tono
to avoid unnecessary issues. -
WebSocket is not supported in prplWare, set
uspControllerMTP
to eithermqtt
orstomp
. -
When executing HL-API testing, a prplOS profile version may be selected using the testvar
prplWareVersion
. CDRouter is compatible with multiple prplWare Data Model versions. Specify a supported version number, or set it to “latest” to use the most recent release. -
Some prplOS tests will be skipped if IPv6 is not enabled. IPv6 must be enabled for prplWare and HL-API Certification.
-
Two independent LAN interfaces are required to execute all Bridging tests in the prplOS test module.
-
The testvar
useSameLanInterface
must be set toyes
to ensure every test case uses the same LAN port. See the “Enabling and Disabling Additional Test Interfaces” section of the Multiport User Guide for more information. -
The testvar
prplosLanInterfaceAlias
must be set to the value ofDevice.Bridging.Bridge.{i}.Port.{i}.Alias
that corresponds to the primary LAN test interface.
-
-
The prpl certification tests rely on consistent alias naming to detect and validate key parameters. To support this, the parameters below must have one instance with the required alias.
The following parameters must have one instance with an alias of “lan”:
- Device.IP.Interface.
- Device.Bridging.Bridge.
- Device.DHCPv6.Server.Pool.
- Device.DHCPv4.Server.Pool.
- Device.IP.Interface.<LAN>.IPv4Address.
The following parameters must have one instance with an alias of “wan”:
- Device.IP.Interface.
- Device.DHCPv4.Client.
- Device.DHCPv6.Client.
Test Specific Configurations
Some specific tests or groups of tests in the prpl certification module require specific configurations.
Group 3: DHCPv6 Tests
The following testvars must be set for Group 3 tests:
supportsIPv6
must be set toyes
- For tests 1.3.1 through 1.3.10,
ipv6WanMode
must be set toDHCP
- For tests 1.3.11 through 1.3.27,
ipv6LanMode
must be set toDHCP
Ensure the following parameters are set in the prpl data model:
ubus-cli Device.DHCPv6.Client.wan.RequestAddresses=true
ubus-cli Device.RouterAdvertisement.InterfaceSetting.lan.AdvManagedFlag=1
Group 4: DNS Tests
In order to run tests 4.1.4 and 4.1.9, ipv6WanRDNSS
must be set to yes
.
Troubleshooting Tips
- For any unexpected failures in the prpl-HL-API module, running the test with MQTT may help.