Index: firmware/App/Controllers/DGInterface.c =================================================================== diff -u -rd91a24c730aeb5cd7e3eba9ef4eca78e442911f8 -r515a40fb83e3fc13384dae12dba25b45aeeea904 --- firmware/App/Controllers/DGInterface.c (.../DGInterface.c) (revision d91a24c730aeb5cd7e3eba9ef4eca78e442911f8) +++ firmware/App/Controllers/DGInterface.c (.../DGInterface.c) (revision 515a40fb83e3fc13384dae12dba25b45aeeea904) @@ -141,8 +141,11 @@ U32 msSinceLastVolumeCalc = calcTimeSince( resUseTimer ); F32 flowRateMlPerMs = (F32)getTargetDialInFlowRate() / (F32)( MS_PER_SECOND * SEC_PER_MIN ); - // calculate volume used from active reservoir - resUseVolumeMl += ( flowRateMlPerMs * msSinceLastVolumeCalc ); // TODO - should this calc be done and kept by Dialysis sub-mode? + // calculate volume used from active reservoir - do not accumulate if saline bolus in progress + if ( SALINE_BOLUS_STATE_IN_PROGRESS == getSalineBolusState() ) + { + resUseVolumeMl += ( flowRateMlPerMs * msSinceLastVolumeCalc ); // TODO - should this calc be done and kept by Dialysis sub-mode? + } resUseTimer = getMSTimerCount(); // treatment reservoir mgmt. state machine