diff options
author | px4dev <px4@purgatory.org> | 2012-08-28 09:14:59 -0700 |
---|---|---|
committer | px4dev <px4@purgatory.org> | 2012-08-28 09:15:12 -0700 |
commit | 936940abc939f939be11d8b1f161877f37f32c21 (patch) | |
tree | 9c2d906fe3766964dab7c6385a6d07eea699e380 /apps/sensors | |
parent | 6901a85323565f2d2f5080e57b7e47e07079926e (diff) | |
download | px4-firmware-936940abc939f939be11d8b1f161877f37f32c21.tar.gz px4-firmware-936940abc939f939be11d8b1f161877f37f32c21.tar.bz2 px4-firmware-936940abc939f939be11d8b1f161877f37f32c21.zip |
Force a parameter update when the sensors thread starts.
Diffstat (limited to 'apps/sensors')
-rw-r--r-- | apps/sensors/sensors.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/apps/sensors/sensors.cpp b/apps/sensors/sensors.cpp index 98b476814..b63ad19cc 100644 --- a/apps/sensors/sensors.cpp +++ b/apps/sensors/sensors.cpp @@ -285,7 +285,7 @@ private: /** * Check for changes in parameters. */ - void parameter_update_poll(); + void parameter_update_poll(bool forced = false); /** * Poll the ADC and update readings to suit. @@ -735,12 +735,12 @@ Sensors::vehicle_status_poll() } void -Sensors::parameter_update_poll() +Sensors::parameter_update_poll(bool forced) { bool param_updated; /* Check if any parameter has changed */ orb_check(_params_sub, ¶m_updated); - if (param_updated) + if (param_updated || forced) { /* read from param to clear updated flag */ struct parameter_update_s update; @@ -969,6 +969,8 @@ Sensors::task_main() mag_poll(raw); baro_poll(raw); + parameter_update_poll(true /* forced */); + /* advertise the sensor_combined topic and make the initial publication */ _sensor_pub = orb_advertise(ORB_ID(sensor_combined), &raw); |