PX4 named parameter set
PX4 parameter writes use MAVLinkPARAM_SET underneath, but Open Platform does not expose generic px4.parameter.set. Every writable parameter has its own named command, request model, response model, and PX4 catalog evidence, so callers only provide payload.value.
The current PX4 catalog is generated from parameters.json/xml and contains 1873 QGroundControl-style named parameters: 1310 FLOAT, 563 INT32, and 101 volatile rows. Each parameter receives a fixed command type:
CBRK_USB_CHK maps to px4.parameter.cbrk_usb_chk.set. Callers must not pass param_id in the payload; the parameter name is always fixed by the command type.
Find A Parameter
Full Set Catalog
A complete index table for all 1873 named set commands
Browse By PX4 Group
Open group pages for Commander, EKF2, MAVLink, Sensors, and more
Read Parameter
Read the current value before deciding whether to write
Parameter Protocol
Review responses, allowlist rules, and completion semantics
Payload Model
Catalog-backed parameter writes use a fixed field:| PX4 shape | Payload form | Validation |
|---|---|---|
FLOAT | number | Type, minimum, maximum |
INT32 | integer | Type, minimum, maximum |
| enum | string | Must match catalog values |
| boolean | boolean | Converted to PX4 INT32 |
| bitmask | object { "bits": 3 } | May only set catalog bits |
payload.value. For example, COM_RC_IN_MODE uses the enum string payload.value: "mavlink_only", and velocity parameters use numeric payload.value. Those detail pages are focused explanations, not the full catalog.
Request Example
Detail Pages
| Parameter | command_type | Description |
|---|---|---|
COM_RC_IN_MODE | px4.parameter.com_rc_in_mode.set | Manual-control input source |
MPC_XY_VEL_MAX | px4.parameter.mpc_xy_vel_max.set | Maximum horizontal velocity |
CBRK_USB_CHK | px4.parameter.cbrk_usb_chk.set | USB-link circuit breaker |
EKF2_GPS_CTRL | px4.parameter.ekf2_gps_ctrl.set | GNSS fusion bitmask |
MPC_Z_VEL_MAX_UP | px4.parameter.mpc_z_vel_max_up.set | Maximum ascent velocity |
Safety Rules
- Do not send
command_type=px4.parameter.set. - Do not provide
param_id,value_type, orparam1throughparam7in the payload. - Enums, booleans, bitmasks, floats, and int32 values are validated against the PX4 catalog.
- Real writes require
PX4_COMMAND_MODE=guarded, explicit authorization, ready transport, and operator guard. PX4_PARAMETER_WRITE_ALLOWLISTmust contain the PX4 parameter ID fixed by the named command.PX4_COMMAND_MODE=disabledis the default; in that mode the agent rejects every parameter write locally before sendingPARAM_SET.
Transport Mapping
| Layer | Description |
|---|---|
| Cloud command | One named command type per parameter |
| Request model | One named request struct per parameter |
| MAVLink frame | PARAM_SET (23) |
| PX4 response | PARAM_VALUE or PARAM_ERROR |
| Completion | parameter_value_confirmed / parameter_error / parameter_response_mismatch / parameter_timeout |