start-parodus
is a C-based utility used in RDK platforms to initialize and generating the binary in BPI Platform. It acts as a wrapper that handles system readiness checks, configuration loading, URL preparation, and command execution for starting Parodus. This component sets up the environment and starts Parodus (webpa). Parodus is a websocket client which connects to a server in the cloud & delivers messages to and from services running on the gateway device.
Parodus is a lightweight message broker used in RDK platforms to:
Communicate with WebPA (Web-based remote management protocol)
Send and receive messages to/from a cloud server or local components using WebSockets
Interface with RFCs, telemetry, and other cloud-driven components
Recipe Path: recipes-ccsp/start-parodus.bb
Provides: Utility binary parodusStart
Dependencies:
Runtime: hal-platform
, utopia
, cjson
Build-time: cpgc
, openssl
, breakpad
Breakpad Integration: Generates minidumps for crash diagnostics.
DISTRO_FEATURES Flags:
safec
, seshat
, WanFailOverSupportEnable
, webconfig_bin
trigger conditional flags in build.
The main responsibilities of start-parodus
are:
Wait for system components like PSM to be ready.
Read configuration values from syscfg and PSM.
Validate and prepare WebPA server URL.
Construct and execute the final Parodus command.
Log the command and write supporting diagnostics.
Setting required environment variables (like server URLs, interface info, device info details like WAN IP, MAC)
In BPI:
It's present under binaries path as /usr/bin/parodusStart
.
Source code: https://code.rdkcentral.com/r/admin/repos/rdkb/components/generic/startParodus,general