Index: firmware/App/Modes/SalineBolus.c =================================================================== diff -u -r5ed6831faa470509f0946fff85fe8e33c9d32eab -r3309dc1279d58aef3ed325ecf2ad21f5acd7b9b5 --- firmware/App/Modes/SalineBolus.c (.../SalineBolus.c) (revision 5ed6831faa470509f0946fff85fe8e33c9d32eab) +++ firmware/App/Modes/SalineBolus.c (.../SalineBolus.c) (revision 3309dc1279d58aef3ed325ecf2ad21f5acd7b9b5) @@ -198,7 +198,7 @@ // If in treatment stop submode but also in blood recover the software cannot do saline bolus rejReason = REQUEST_REJECT_REASON_INVALID_TREATMENT_STATE; } - else if ( ( TRUE == isAnyAlarmActive() ) && ( ( TRUE == isBloodRecircBlocked() ) || ( TRUE == isDialysateRecircBlocked() ) ) ) + else if ( ( TRUE == isAnyAlarmActive() ) && ( ( TRUE == isBloodRecircBlocked() ) || ( TRUE == isRinseBackBlocked() ) ) ) { // Any alarm can be active but blood recirculation and dialysate recirculation cannot be blocked in their properties in order // to do saline bolus Index: firmware/App/Services/AlarmMgmt.c =================================================================== diff -u -r849fffb475b8be4c24963e1c694e382a0a96ba1b -r3309dc1279d58aef3ed325ecf2ad21f5acd7b9b5 --- firmware/App/Services/AlarmMgmt.c (.../AlarmMgmt.c) (revision 849fffb475b8be4c24963e1c694e382a0a96ba1b) +++ firmware/App/Services/AlarmMgmt.c (.../AlarmMgmt.c) (revision 3309dc1279d58aef3ed325ecf2ad21f5acd7b9b5) @@ -782,6 +782,19 @@ /*********************************************************************//** * @brief + * The isRinseBackBlocked function determines whether any currently + * active alarm is blocking rinseback. + * @details Inputs: alarmStatus + * @details Outputs: none + * @return TRUE if any active alarm prevents rinseback, FALSE if not + *************************************************************************/ +BOOL isRinseBackBlocked( void ) +{ + return alarmStatus.noRinseback; +} + +/*********************************************************************//** + * @brief * The doesAlarmStatusIndicateEndTxOnly function determines whether any currently * active alarm has ( stop && noRes && /noET ) property, that is end treatment is * the only choice from full stop. Index: firmware/App/Services/AlarmMgmt.h =================================================================== diff -u -rfba69244d94307e50fefaa1e88bcbb979584461e -r3309dc1279d58aef3ed325ecf2ad21f5acd7b9b5 --- firmware/App/Services/AlarmMgmt.h (.../AlarmMgmt.h) (revision fba69244d94307e50fefaa1e88bcbb979584461e) +++ firmware/App/Services/AlarmMgmt.h (.../AlarmMgmt.h) (revision 3309dc1279d58aef3ed325ecf2ad21f5acd7b9b5) @@ -210,6 +210,7 @@ BOOL isAnyAlarmActive( void ); BOOL isBloodRecircBlocked( void ); BOOL isDialysateRecircBlocked( void ); +BOOL isRinseBackBlocked( void ); BOOL doesAlarmStatusIndicateStop( void ); BOOL doesAlarmIndicateNoResume( void ); BOOL doesAlarmStatusIndicateEndTxOnly( void );