Skip to content
Snippets Groups Projects
Commit 55e3f80b authored by Daniel Agar's avatar Daniel Agar Committed by Nuno Marques
Browse files

mavlink handle MAV_ODOM_LP parameter in main

 - fixes #11125
parent 032e64aa
No related branches found
No related tags found
No related merge requests found
......@@ -494,9 +494,9 @@ public:
bool ftp_enabled() const { return _ftp_on; }
bool hash_check_enabled() { return _param_hash_check_enabled.get(); }
bool forward_heartbeats_enabled() { return _param_heartbeat_forwarding_enabled.get(); }
bool hash_check_enabled() const { return _param_hash_check_enabled.get(); }
bool forward_heartbeats_enabled() const { return _param_heartbeat_forwarding_enabled.get(); }
bool odometry_loopback_enabled() const { return _param_send_odom_loopback.get(); }
struct ping_statistics_s {
uint64_t last_ping_time;
......@@ -642,7 +642,8 @@ private:
(ParamBool<px4::params::MAV_FWDEXTSP>) _param_forward_externalsp,
(ParamInt<px4::params::MAV_BROADCAST>) _param_broadcast_mode,
(ParamBool<px4::params::MAV_HASH_CHK_EN>) _param_hash_check_enabled,
(ParamBool<px4::params::MAV_HB_FORW_EN>) _param_heartbeat_forwarding_enabled
(ParamBool<px4::params::MAV_HB_FORW_EN>) _param_heartbeat_forwarding_enabled,
(ParamBool<px4::params::MAV_ODOM_LP>) _param_send_odom_loopback
)
perf_counter_t _loop_perf; /**< loop performance counter */
......
......@@ -2318,7 +2318,7 @@ protected:
mavlink_odometry_t msg = {};
if (_send_odom_loopback.get()) {
if (_mavlink->odometry_loopback_enabled()) {
odom_updated = _vodom_sub->update(&_vodom_time, &odom);
// frame matches the external vision system
msg.frame_id = MAV_FRAME_VISION_NED;
......@@ -2361,8 +2361,8 @@ protected:
msg.yawspeed = odom.yawspeed;
// get the covariance matrix size
const size_t POS_URT_SIZE = sizeof(odom.pose_covariance) / sizeof(odom.pose_covariance[0]);
const size_t VEL_URT_SIZE = sizeof(odom.velocity_covariance) / sizeof(odom.velocity_covariance[0]);
static constexpr size_t POS_URT_SIZE = sizeof(odom.pose_covariance) / sizeof(odom.pose_covariance[0]);
static constexpr size_t VEL_URT_SIZE = sizeof(odom.velocity_covariance) / sizeof(odom.velocity_covariance[0]);
static_assert(POS_URT_SIZE == (sizeof(msg.pose_covariance) / sizeof(msg.pose_covariance[0])),
"Odometry Pose Covariance matrix URT array size mismatch");
static_assert(VEL_URT_SIZE == (sizeof(msg.twist_covariance) / sizeof(msg.twist_covariance[0])),
......
......@@ -58,7 +58,6 @@ int
MavlinkStream::update(const hrt_abstime &t)
{
update_data();
ModuleParams::updateParams();
// If the message has never been sent before we want
// to send it immediately and can return right away
......
......@@ -127,10 +127,6 @@ protected:
*/
virtual void update_data() { }
DEFINE_PARAMETERS(
(ParamBool<px4::params::MAV_ODOM_LP>) _send_odom_loopback
)
private:
hrt_abstime _last_sent{0};
bool _first_message_sent{false};
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment