From 48edaa7ef63c360d3d94f7e655756f9da999ade2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beat=20K=C3=BCng?= Date: Fri, 19 Jan 2018 10:05:32 +0100 Subject: [PATCH] vmount: remove output rate-limiting It causes missed input changes. This reverts 73d23742ea5c297f262c0e03caec61ee482977b1. --- src/drivers/vmount/vmount.cpp | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/src/drivers/vmount/vmount.cpp b/src/drivers/vmount/vmount.cpp index 84f009d6f3..54a14c4b00 100644 --- a/src/drivers/vmount/vmount.cpp +++ b/src/drivers/vmount/vmount.cpp @@ -249,7 +249,6 @@ static int vmount_thread_main(int argc, char *argv[]) g_thread_data = &thread_data; int last_active = 0; - hrt_abstime last_output_update = 0; while (!thread_should_exit) { @@ -376,21 +375,16 @@ static int vmount_thread_main(int argc, char *argv[]) } } - hrt_abstime now = hrt_absolute_time(); - if (now - last_output_update > 10000) { // rate-limit the update of outputs - last_output_update = now; + //update output + int ret = thread_data.output_obj->update(control_data); - //update output - int ret = thread_data.output_obj->update(control_data); - - if (ret) { - PX4_ERR("failed to write output (%i)", ret); - break; - } - - thread_data.output_obj->publish(); + if (ret) { + PX4_ERR("failed to write output (%i)", ret); + break; } + thread_data.output_obj->publish(); + } else { //wait for parameter changes. We still need to wake up regularily to check for thread exit requests usleep(1e6);