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:
Daniel Agar
2021-01-10 21:09:15 -05:00
committed by GitHub
parent 70e503cb91
commit 967d35a6b6
73 changed files with 212 additions and 122 deletions
@@ -40,7 +40,6 @@ namespace sensors
{
using namespace matrix;
using namespace time_literals;
static constexpr uint32_t SENSOR_TIMEOUT{300_ms};
@@ -114,10 +113,10 @@ void VehicleAirData::SensorCorrectionsUpdate(bool force)
void VehicleAirData::ParametersUpdate()
{
// Check if parameters have changed
if (_params_sub.updated()) {
if (_parameter_update_sub.updated()) {
// clear update
parameter_update_s param_update;
_params_sub.copy(&param_update);
_parameter_update_sub.copy(&param_update);
updateParams();
}