aboutsummaryrefslogtreecommitdiff
path: root/apps/drivers/px4fmu
diff options
context:
space:
mode:
authorLorenz Meier <lm@inf.ethz.ch>2012-12-13 11:12:34 +0100
committerLorenz Meier <lm@inf.ethz.ch>2012-12-13 11:12:34 +0100
commit1fc0a6546e30cfc913de8c0c03cfc625fba5d2ae (patch)
tree65cf4f9b03e9dc63ffdf05ff698272f326d76908 /apps/drivers/px4fmu
parent26faab64e5e1679d15afe88ef0edebd598f47dc7 (diff)
parent03076a72ca75917cf62d7889c6c6d0de36866b04 (diff)
downloadpx4-firmware-1fc0a6546e30cfc913de8c0c03cfc625fba5d2ae.tar.gz
px4-firmware-1fc0a6546e30cfc913de8c0c03cfc625fba5d2ae.tar.bz2
px4-firmware-1fc0a6546e30cfc913de8c0c03cfc625fba5d2ae.zip
Merged IO feature branch
Diffstat (limited to 'apps/drivers/px4fmu')
-rw-r--r--apps/drivers/px4fmu/fmu.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/apps/drivers/px4fmu/fmu.cpp b/apps/drivers/px4fmu/fmu.cpp
index ff610b0b9..dac0b5e84 100644
--- a/apps/drivers/px4fmu/fmu.cpp
+++ b/apps/drivers/px4fmu/fmu.cpp
@@ -341,8 +341,16 @@ PX4FMU::task_main()
/* handle update rate changes */
if (_current_update_rate != _update_rate) {
int update_rate_in_ms = int(1000 / _update_rate);
- if (update_rate_in_ms < 2)
+ /* reject faster than 500 Hz updates */
+ if (update_rate_in_ms < 2) {
update_rate_in_ms = 2;
+ _update_rate = 500;
+ }
+ /* reject slower than 50 Hz updates */
+ if (update_rate_in_ms > 20) {
+ update_rate_in_ms = 20;
+ _update_rate = 50;
+ }
orb_set_interval(_t_actuators, update_rate_in_ms);
up_pwm_servo_set_rate(_update_rate);
_current_update_rate = _update_rate;