Index: firmware/App/Controllers/DGInterface.c =================================================================== diff -u -r316f8773970f94c9b1996a03f2235050afb514da -r93156ec3080112357d4cd115ab2e9a23c6ab152d --- firmware/App/Controllers/DGInterface.c (.../DGInterface.c) (revision 316f8773970f94c9b1996a03f2235050afb514da) +++ firmware/App/Controllers/DGInterface.c (.../DGInterface.c) (revision 93156ec3080112357d4cd115ab2e9a23c6ab152d) @@ -512,7 +512,7 @@ } else { - activateAlarmNoData( ALARM_ID_HD_SOFTWARE_FAULT ); + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_HD_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_LOAD_CELL_ID, loadCellID ); } return result; @@ -575,7 +575,7 @@ } else { - // TODO - s/w fault + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_HD_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_DG_OPERATING_MODE, opMode ); } } @@ -631,8 +631,8 @@ dgReservoirDrainVolumeTarget = drainVol; } else - { - // TODO - s/w fault + { + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_HD_SOFTWARE_FAULT, SW_FAULT_ID_HD_INVALID_RESERVOIR_ID, resID ); } } Index: firmware/App/Controllers/DGInterface.h =================================================================== diff -u -rb4bc2e0337b358ee180650101d98e18346bf7c22 -r93156ec3080112357d4cd115ab2e9a23c6ab152d --- firmware/App/Controllers/DGInterface.h (.../DGInterface.h) (revision b4bc2e0337b358ee180650101d98e18346bf7c22) +++ firmware/App/Controllers/DGInterface.h (.../DGInterface.h) (revision 93156ec3080112357d4cd115ab2e9a23c6ab152d) @@ -32,12 +32,15 @@ // ********** public definitions ********** -#define DRAIN_RESERVOIR_TO_VOLUME_ML 0 ///< Drain reservoir to this volume (in mL) during treatment. +#define DRAIN_RESERVOIR_TO_VOLUME_ML 0 ///< Drain reservoir to this volume (in mL) during treatment. #ifndef V1_5_SYSTEM -#define FILL_RESERVOIR_TO_VOLUME_ML 1700 ///< Fill reservoir to this volume (in mL) during treatment. +#define FILL_RESERVOIR_TO_VOLUME_ML 1700 ///< Fill reservoir to this volume (in mL) during treatment. #else -#define FILL_RESERVOIR_TO_VOLUME_ML 1300 ///< Fill reservoir to this volume (in mL) during treatment. +#define FILL_RESERVOIR_TO_VOLUME_ML 1300 ///< Fill reservoir to this volume (in mL) during treatment. #endif + +#define FILL_RESERVOIR_TO_VOLUME_LOW_FLOW_ML 1300 ///< Fill reservoir to this volume (in mL) during treatment if dialysate flow is slow. +#define SLOW_DIALYSATE_FLOW_ML_MIN 250 ///< Threshold for slow dialysate flow designation. /// Enumeration of DG pressure sensors. typedef enum DG_PressureSensors @@ -133,6 +136,7 @@ F32 getDGROPumpFlowRateMlMin( void ); U32 getDGDrainPumpRPMSetPt( void ); F32 getLoadCellWeight( LOAD_CELL_ID_T loadCellID ); +F32 getReservoirWeight( DG_RESERVOIR_ID_T resID ); F32 getReservoirWeightLargeFilter( DG_RESERVOIR_ID_T resID ); void setDGOpMode( U32 opMode, U32 subMode ); Index: firmware/App/Modes/ModeInitPOST.c =================================================================== diff -u -r476ef181700cbe3182e760bcd73d978b2752212d -r93156ec3080112357d4cd115ab2e9a23c6ab152d --- firmware/App/Modes/ModeInitPOST.c (.../ModeInitPOST.c) (revision 476ef181700cbe3182e760bcd73d978b2752212d) +++ firmware/App/Modes/ModeInitPOST.c (.../ModeInitPOST.c) (revision 93156ec3080112357d4cd115ab2e9a23c6ab152d) @@ -215,7 +215,6 @@ default: sendPOSTFinalResult( FALSE ); SET_ALARM_WITH_2_U32_DATA( ALARM_ID_HD_SOFTWARE_FAULT, SW_FAULT_ID_MODE_INIT_POST_INVALID_POST_STATE, postState ) - postState = POST_STATE_FAILED; break; }