# Adaptive Rmssd Algorithm

The adaptive RMSSD trigger algorithm triggers on low RMSSD values. It adapts thresholds continuously. The algorithm can use two thresholds one when there is no physical activity (low activity trigger) and a second threshold when the participant is physically active (high activity trigger).

# Sensor requirements

To use the Adaptive Rmssd Algorithm, the ECG and Activity sensor EcgMove 3 or EcgMove 4 is required.

# Algorithm description

The Adaptive RMSSD Trigger is active when the incoming condition of the block is true. That means you place e.g. a time range block in front of the trigger block to define the sampling window (i.e. to activate and deactivate the algorithm).

The sampling window will be divided into subwindows. The algorithm will try to output one trigger per subwindow. You can specify a minimum duration without triggers. If no RMSSD trigger were found during this time a timeout trigger will be fired. The thresholds for each subwindow will be calculated from the values of the previous subwindow. The last third of the data is taken to calculate the threshold. In the first subwindow of the first day no triggers will be fired.

# Threshold calculation

  • After each subwindow: the last 3rd of the subwindow data is used to calculate the threshold.
  • At first the rmssd values are selected where the physical activity conditions are met (configured by physicalActivityCutpoint and minimumTimeoutAfterActivity). Then a running mean filter is applied. The length of the filter is set by the parameter rmssdRunningMeanLength. The smallest rmssd value of the interval that meats the conditions is used as the threshold of next subwindow.

# Parameter description

Parameter Default value Description
subWindowSizeMinutes 100 min Defines the duration of a subwindow in which only one trigger can take place
minimumTimeBetweenTriggersMinutes 30 min Defines the minimum distance between 2 triggers (condition)
maximumTimeWihtoutTriggerMinutes 150 min In case there is no trigger found for the given duration, than regardless of the fulfillment of the conditions, a trigger is fired
minConsecutiveRmssdValuesUnderThreshold 2 Defines the minimum number of consecutive rmssd values that have to be lower than the calculated threshold (condition)
rmssdRunningMeanLength 2 Number of rmssd values to be used for threshold calculation.
enableHighActivityTriggers true Configures if there should be triggers fired also during active intervals.
physicalActivityCutpoint 0.05 g Cutpoint that divides high physical activity from light/no activity
minimumTimeoutAfterActivity 5 min Defines the minimum duration needed after a high activity to fire a low activity trigger. And the minimum duration of high activity to fire a high activity trigger (condition)
thresholdTolerancePercent 20.0 % Actual threshold is higher than the ideal threshold by the given percentage

# Additional Information

You can use a SensorValue block to remind a participant if the sensor is not worn or if the signal quality is not good enough for HRV parameter calculation (Sensor Signal: Hrv Is Valid, has value: equal, to: false, for: at least, 5 Minutes).

If you want to suppress the internal timeout triggers set the maximumTimeWihtoutTriggerMinutes greater than the sampling window length.

The algorithm probably will not work for participants with heart arrythmia because heart rate variability is affected by non normal to normal heart beat intervals.

# Literature and Validation

For specific questions about the use of the adaptive RMSSD Trigger, you can reach out directly to Lauren M. Bylsma, PhD, Associate Professor of Psychiatry and Psychology, University of Pittsburgh; BylsmaL@pitt.edu

Last Updated: 2/17/2025, 9:23:43 AM
© 2025 movisens GmbH, Imprint