diff --git a/src/drivers/px4io/px4io.cpp b/src/drivers/px4io/px4io.cpp index df00611e5b..c1cba71300 100644 --- a/src/drivers/px4io/px4io.cpp +++ b/src/drivers/px4io/px4io.cpp @@ -2726,12 +2726,15 @@ PX4IO::ioctl(file *filep, int cmd, unsigned long arg) break; } - case PWM_SERVO_GET_TRIM_PWM: + case PWM_SERVO_GET_TRIM_PWM: { + struct pwm_output_values *pwm = (struct pwm_output_values *)arg; + pwm->channel_count = _max_actuators; - ret = io_reg_get(PX4IO_PAGE_CONTROL_TRIM_PWM, 0, (uint16_t *)arg, _max_actuators); + ret = io_reg_get(PX4IO_PAGE_CONTROL_TRIM_PWM, 0, pwm->values, _max_actuators); - if (ret != OK) { - ret = -EIO; + if (ret != OK) { + ret = -EIO; + } } break;