Index: firmware/App/Modes/Dialysis.c =================================================================== diff -u -r96a23b8fe38dda9442cd6f052aeb3eadca198e4b -rbd594d51a6487960035f36d516c801de1b4aaff9 --- firmware/App/Modes/Dialysis.c (.../Dialysis.c) (revision 96a23b8fe38dda9442cd6f052aeb3eadca198e4b) +++ firmware/App/Modes/Dialysis.c (.../Dialysis.c) (revision bd594d51a6487960035f36d516c801de1b4aaff9) @@ -964,12 +964,14 @@ bolusSalineLastMotorCount = bldPumpMotorCount; bolusSalineVolumeDelivered_Safety = ( (F32)bolusSalineMotorCount * VOLUME_PER_BP_MOTOR_REV_ML ); // TODO - include upstream pressure compensation to this calc +#ifndef DISABLE_SALINE_BOLUS_CHECKS // TODO - check for empty saline bag if ( 0 ) { - // TODO - empty saline bag alarm + SET_ALARM_WITH_1_F32_DATA( ALARM_ID_EMPTY_SALINE_BAG, 0.0 ); // TODO - give data supporting empty bag detection errorFound = TRUE; } +#endif // determine if we've reached maximum saline delivery volume if ( ( totalSalineVolumeDelivered >= (F32)MAX_SALINE_VOLUME_DELIVERED ) ) @@ -984,8 +986,10 @@ // if safety thinks we've under-delivered the bolus, throw a fault if ( bolusSalineVolumeDelivered_Safety < ( bolusTargetVolume * MIN_SALINE_BOLUS_VOLUME_PCT ) ) { - // TODO - fault +#ifndef DISABLE_SALINE_BOLUS_CHECKS + SET_ALARM_WITH_2_F32_DATA( ALARM_ID_SALINE_BOLUS_VOLUME_CHECK_FAILURE, bolusTargetVolume, bolusSalineVolumeDelivered_Safety ); errorFound = TRUE; +#endif } bolusSalineVolumeDelivered = 0.0; result = SALINE_BOLUS_STATE_IDLE; @@ -1000,9 +1004,11 @@ // determine if safety thinks we've over-delivered the bolus else if ( bolusSalineVolumeDelivered_Safety > ( bolusTargetVolume * MAX_SALINE_BOLUS_VOLUME_PCT ) ) { - // TODO - fault +#ifndef DISABLE_SALINE_BOLUS_CHECKS + SET_ALARM_WITH_2_F32_DATA( ALARM_ID_SALINE_BOLUS_VOLUME_CHECK_FAILURE, bolusTargetVolume, bolusSalineVolumeDelivered_Safety ); errorFound = TRUE; result = SALINE_BOLUS_STATE_IDLE; +#endif } }