Index: firmware/App/Controllers/BloodFlow.c =================================================================== diff -u -r1ebbe403d260d9f65695c13d6dbafbe1a93cfdde -r651dcf74b57105a1247d1a29a4e9df2bd8d56649 --- firmware/App/Controllers/BloodFlow.c (.../BloodFlow.c) (revision 1ebbe403d260d9f65695c13d6dbafbe1a93cfdde) +++ firmware/App/Controllers/BloodFlow.c (.../BloodFlow.c) (revision 651dcf74b57105a1247d1a29a4e9df2bd8d56649) @@ -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;