diff --git a/src/modules/sensors/sensors.cpp b/src/modules/sensors/sensors.cpp index d54ee6e0bd..954df4e3d9 100644 --- a/src/modules/sensors/sensors.cpp +++ b/src/modules/sensors/sensors.cpp @@ -1503,8 +1503,12 @@ Sensors::parameter_update_poll(bool forced) /* mag is internal */ _mag_rotation[s] = _board_rotation; /* reset param to -1 to indicate internal mag */ - int32_t minus_one = MAG_ROT_VAL_INTERNAL; - param_set_no_notification(param_find(str), &minus_one); + int32_t minus_one; + param_get(param_find(str), &minus_one); + if (minus_one != MAG_ROT_VAL_INTERNAL) { + minus_one = MAG_ROT_VAL_INTERNAL; + param_set_no_notification(param_find(str), &minus_one); + } } else {