Index: firmware/App/Controllers/BloodFlow.c =================================================================== diff -u -r68ee5d128b86860fac265d5ea25600bed9327077 -r7350aa8f5e25799f294433fea4d98dd23c4df642 --- firmware/App/Controllers/BloodFlow.c (.../BloodFlow.c) (revision 68ee5d128b86860fac265d5ea25600bed9327077) +++ firmware/App/Controllers/BloodFlow.c (.../BloodFlow.c) (revision 7350aa8f5e25799f294433fea4d98dd23c4df642) @@ -76,7 +76,6 @@ #define BP_MAX_MOTOR_SPEED_ERROR_RPM 300.0F ///< Maximum difference in speed between measured and commanded RPM. #define BP_MAX_MOTOR_SPEED_VS_TRGT_DIFF_PCT 0.15F ///< Maximum motor speed vs target difference in percent. - /// Persist time (in ms) for motor off error condition. static const U32 BP_OFF_ERROR_PERSIST = ( 5 * MS_PER_SECOND ); /// Persist time (in ms) motor speed error condition. @@ -1169,7 +1168,7 @@ F32 measRotorSpeed = fabs( getMeasuredBloodPumpRotorSpeed() ); F32 measMotorSpeedInRotorRPM = measMotorSpeed / BP_GEAR_RATIO; F32 deltaRotorSpeed = fabs( measRotorSpeed - measMotorSpeedInRotorRPM ); - F32 measMotorSpeedDeltaPct = deltaRotorSpeed / measMotorSpeedInRotorRPM; + F32 measMotorSpeedDeltaPct = fabs( deltaRotorSpeed / measMotorSpeedInRotorRPM ); // Check measured motor speed vs. commanded motor speed while controlling to target if ( ( TRUE == isPersistentAlarmTriggered( ALARM_ID_BLOOD_PUMP_MOTOR_SPEED_CHECK,