Index: firmware/App/Controllers/BloodFlow.c =================================================================== diff -u -r1c628bfd5d6414b74b8cbd083f66839888a8236b -rd80c4a21ab700d8197e292f34c86dad61828c45a --- firmware/App/Controllers/BloodFlow.c (.../BloodFlow.c) (revision 1c628bfd5d6414b74b8cbd083f66839888a8236b) +++ firmware/App/Controllers/BloodFlow.c (.../BloodFlow.c) (revision d80c4a21ab700d8197e292f34c86dad61828c45a) @@ -1063,7 +1063,7 @@ // Keep a running 32-bit edge count used for safety check on volume in some functions delta = u16BiDiffWithWrap( last, bpMotorHallSensorCount ); - bloodPumpMotorEdgeCount += (U16)delta; + bloodPumpMotorEdgeCount += ( delta >= 0 ? (U16)delta : 0 ); // Update last count for next time bpLastMotorHallSensorCounts[ nextIdx ] = bpMotorHallSensorCount;