mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-24 01:53:35 +08:00
rate limit most parameter_update subscriptions
- parameter updates can be quite expensive because they trigger nearly all modules to reload all of their parameters immediately - limit modules from updating faster than once per second
This commit is contained in:
@@ -574,7 +574,7 @@ void DShot::Run()
|
||||
}
|
||||
}
|
||||
|
||||
if (_param_sub.updated()) {
|
||||
if (_parameter_update_sub.updated()) {
|
||||
update_params();
|
||||
}
|
||||
|
||||
@@ -603,7 +603,7 @@ void DShot::Run()
|
||||
void DShot::update_params()
|
||||
{
|
||||
parameter_update_s pupdate;
|
||||
_param_sub.update(&pupdate);
|
||||
_parameter_update_sub.copy(&pupdate);
|
||||
|
||||
updateParams();
|
||||
|
||||
|
||||
@@ -223,7 +223,7 @@ private:
|
||||
|
||||
Mode _mode{MODE_NONE};
|
||||
|
||||
uORB::Subscription _param_sub{ORB_ID(parameter_update)};
|
||||
uORB::SubscriptionInterval _parameter_update_sub{ORB_ID(parameter_update), 1_s};
|
||||
|
||||
DEFINE_PARAMETERS(
|
||||
(ParamInt<px4::params::DSHOT_CONFIG>) _param_dshot_config,
|
||||
|
||||
Reference in New Issue
Block a user