Index: firmware/App/Services/TxParams.h =================================================================== diff -u -r1a3a2f806bb81b05f67f80efb94f1d82ce174c09 -r8cceda439faa23a1e927721c6a9ef8e4ee30c5be --- firmware/App/Services/TxParams.h (.../TxParams.h) (revision 1a3a2f806bb81b05f67f80efb94f1d82ce174c09) +++ firmware/App/Services/TxParams.h (.../TxParams.h) (revision 8cceda439faa23a1e927721c6a9ef8e4ee30c5be) @@ -34,8 +34,8 @@ // ********** public definitions ********** #define MIN_PRESSURE_ALARM_LIMIT_DELTA_MMHG ( 30 ) ///< Minimum pressure alarm limit delta (in mmHg) -#define MAX_UF_RATE_L_HR ( 2.0F ) ///< Maximum ultrafiltration rate (in L/hr) -#define MIN_UF_RATE_L_HR ( 0.0F ) ///< Minimum ultrafiltration rate (in L/hr) +#define MAX_UF_RATE_ML_MIN ( 2000.01F / (F32)MIN_PER_HOUR ) ///< Maximum ultrafiltration rate (in mL/min). Added small decimal to prevent float round off issues. +#define MIN_UF_RATE_ML_MIN ( 0.0F ) ///< Minimum ultrafiltration rate (in mL/min). #define MAX_UF_VOLUME_ML ( 8 * ML_PER_LITER ) ///< Maximum ultrafiltration volume (in mL). /// Record structure for a treatment parameters payload from UI. @@ -135,6 +135,38 @@ S32 tmpPressureLimitWindowMMHG; ///< TMP pressure limit window in mmHg. } PRESSURE_LIMIT_CHANGE_RESPONSE_T; +/// Payload record structure for UF change response. +typedef struct +{ + BOOL accepted; ///< Accepted/Rejected + U32 rejectionReason; ///< Rejection reason if not accepted. + F32 ufVolume; ///< UF Volume in mL. + U32 durationInMinutes; ///< new Treatment duration in minutes. + S32 timeDiff; ///< Treatment duration difference. + F32 ufRate; ///< new UF rate in mL/min. + F32 rateDiff; ///< difference between new and old UF rates. + F32 oldUFRate; ///< Previous UF Rate in mL/min. +} UF_SETTINGS_CHANGE_RESPONSE_PAYLOAD_T; + +/// Payload record structure for UF change confirmation response. +typedef struct +{ + BOOL accepted; ///< Accepted/Rejected + U32 rejectionReason; ///< Rejection reason if not accepted. + F32 volume; ///< UF Volume in mL. + U32 duration; ///< Treatment duration in minutes + F32 ufRate; ///< UF rate in mL. +} UF_SETTINGS_CONFIRMATION_RESPONSE_PAYLOAD_T; + +/// Payload record structure for blood / dialysate rate change response. +typedef struct +{ + BOOL accepted; ///< Accepted/Rejected + U32 rejectionReason; ///< Rejection reason if not accepted. + U32 bloodRate; ///< new blood flow rate + U32 dialRate; ///< new dialysate flow rate +} BLOOD_DIAL_RATE_CHANGE_RESPONSE_PAYLOAD_T; + // ********** public function prototypes **************** BOOL setTreatmentParameterU32( TREATMENT_PARAM_T param, U32 value ); // Set a specified unsigned integer treatment parameter value