From 1ab2d22e42293164a337cc90cbc04f13be882aba Mon Sep 17 00:00:00 2001 From: alessandro <alessandro@yuneecresearch.com> Date: Thu, 12 Apr 2018 11:12:50 +0200 Subject: [PATCH] tap_esc: removed redundant _initialized member --- src/drivers/tap_esc/tap_esc.cpp | 61 ++++++++++++++------------------- 1 file changed, 25 insertions(+), 36 deletions(-) diff --git a/src/drivers/tap_esc/tap_esc.cpp b/src/drivers/tap_esc/tap_esc.cpp index 498709ed4b..7a7c727d93 100644 --- a/src/drivers/tap_esc/tap_esc.cpp +++ b/src/drivers/tap_esc/tap_esc.cpp @@ -136,7 +136,6 @@ private: MixerGroup *_mixers; uint32_t _groups_required; uint32_t _groups_subscribed; - volatile bool _initialized; unsigned _pwm_default_rate; unsigned _current_update_rate; ESC_UART_BUF uartbuf; @@ -180,7 +179,6 @@ TAP_ESC::TAP_ESC(): _mixers(nullptr), _groups_required(0), _groups_subscribed(0), - _initialized(false), _pwm_default_rate(400), _current_update_rate(0) @@ -209,29 +207,26 @@ TAP_ESC::TAP_ESC(): TAP_ESC::~TAP_ESC() { - if (_initialized) { - for (unsigned i = 0; i < actuator_controls_s::NUM_ACTUATOR_CONTROL_GROUPS; i++) { - if (_control_subs[i] >= 0) { - orb_unsubscribe(_control_subs[i]); - _control_subs[i] = -1; - } + for (unsigned i = 0; i < actuator_controls_s::NUM_ACTUATOR_CONTROL_GROUPS; i++) { + if (_control_subs[i] >= 0) { + orb_unsubscribe(_control_subs[i]); + _control_subs[i] = -1; } + } - orb_unsubscribe(_armed_sub); - _armed_sub = -1; - orb_unsubscribe(_test_motor_sub); - _test_motor_sub = -1; - orb_unsubscribe(_params_sub); + orb_unsubscribe(_armed_sub); + _armed_sub = -1; + orb_unsubscribe(_test_motor_sub); + _test_motor_sub = -1; + orb_unsubscribe(_params_sub); - orb_unadvertise(_outputs_pub); - orb_unadvertise(_esc_feedback_pub); - orb_unadvertise(_to_mixer_status); + orb_unadvertise(_outputs_pub); + orb_unadvertise(_esc_feedback_pub); + orb_unadvertise(_to_mixer_status); - tap_esc_common::deinitialise_uart(_uart_fd); + tap_esc_common::deinitialise_uart(_uart_fd); - DEVICE_LOG("stopping"); - _initialized = false; - } + DEVICE_LOG("stopping"); } /** @see ModuleBase */ @@ -262,8 +257,6 @@ TAP_ESC::init() { int ret; - ASSERT(!_initialized); - ret = tap_esc_common::initialise_uart(_device, _uart_fd); if (ret < 0) { @@ -329,6 +322,16 @@ TAP_ESC::init() ret = CDev::init(); + /* advertise the mixed control outputs, insist on the first group output */ + _outputs_pub = orb_advertise(ORB_ID(actuator_outputs), &_outputs); + _esc_feedback_pub = orb_advertise(ORB_ID(esc_status), &_esc_feedback); + multirotor_motor_limits_s multirotor_motor_limits = {}; + _to_mixer_status = orb_advertise(ORB_ID(multirotor_motor_limits), &multirotor_motor_limits); + + _armed_sub = orb_subscribe(ORB_ID(actuator_armed)); + _test_motor_sub = orb_subscribe(ORB_ID(test_motor)); + _params_sub = orb_subscribe(ORB_ID(parameter_update)); + return ret; } @@ -403,20 +406,6 @@ void TAP_ESC::send_esc_outputs(const uint16_t *pwm, const unsigned num_pwm) void TAP_ESC::cycle() { - - if (!_initialized) { - _current_update_rate = 0; - /* advertise the mixed control outputs, insist on the first group output */ - _outputs_pub = orb_advertise(ORB_ID(actuator_outputs), &_outputs); - _esc_feedback_pub = orb_advertise(ORB_ID(esc_status), &_esc_feedback); - multirotor_motor_limits_s multirotor_motor_limits = {}; - _to_mixer_status = orb_advertise(ORB_ID(multirotor_motor_limits), &multirotor_motor_limits); - _armed_sub = orb_subscribe(ORB_ID(actuator_armed)); - _test_motor_sub = orb_subscribe(ORB_ID(test_motor)); - _params_sub = orb_subscribe(ORB_ID(parameter_update)); - _initialized = true; - } - if (_groups_subscribed != _groups_required) { subscribe(); _groups_subscribed = _groups_required; -- GitLab