From f590137525fe924541f6b2b4f541ae72550b7b4d Mon Sep 17 00:00:00 2001 From: bresch Date: Mon, 12 Nov 2018 15:41:19 +0100 Subject: [PATCH] Fix HIL Revert "pwm_out_sim lazily publish actuator_outputs" This reverts commit bcad940a9f529388781433f30d432eb1f25a9feb. --- src/drivers/pwm_out_sim/PWMSim.cpp | 6 ++++-- src/drivers/pwm_out_sim/PWMSim.hpp | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/drivers/pwm_out_sim/PWMSim.cpp b/src/drivers/pwm_out_sim/PWMSim.cpp index 9a93dfbf83..ef7054b380 100644 --- a/src/drivers/pwm_out_sim/PWMSim.cpp +++ b/src/drivers/pwm_out_sim/PWMSim.cpp @@ -158,6 +158,9 @@ PWMSim::run() _armed_sub = orb_subscribe(ORB_ID(actuator_armed)); + /* advertise the mixed control outputs, insist on the first group output */ + _outputs_pub = orb_advertise(ORB_ID(actuator_outputs), &_actuator_outputs); + update_params(); int params_sub = orb_subscribe(ORB_ID(parameter_update)); @@ -284,8 +287,7 @@ PWMSim::run() /* and publish for anyone that cares to see */ _actuator_outputs.timestamp = hrt_absolute_time(); - int instance; - orb_publish_auto(ORB_ID(actuator_outputs), &_outputs_pub, &_actuator_outputs, &instance, ORB_PRIO_DEFAULT); + orb_publish(ORB_ID(actuator_outputs), _outputs_pub, &_actuator_outputs); // use first valid timestamp_sample for latency tracking for (int i = 0; i < actuator_controls_s::NUM_ACTUATOR_CONTROL_GROUPS; i++) { diff --git a/src/drivers/pwm_out_sim/PWMSim.hpp b/src/drivers/pwm_out_sim/PWMSim.hpp index 87c7beb612..46772adf67 100644 --- a/src/drivers/pwm_out_sim/PWMSim.hpp +++ b/src/drivers/pwm_out_sim/PWMSim.hpp @@ -110,7 +110,7 @@ private: int _armed_sub{-1}; - actuator_outputs_s _actuator_outputs{}; + actuator_outputs_s _actuator_outputs = {}; orb_advert_t _outputs_pub{nullptr}; unsigned _num_outputs{0};