Index: firmware/App/Services/TxParams.c =================================================================== diff -u -r69c276212d96dbf22e4684e8d95b087ae7a9d11b -ra67fbb440e081b87925ac7ac0cb892fe3a8d4b37 --- firmware/App/Services/TxParams.c (.../TxParams.c) (revision 69c276212d96dbf22e4684e8d95b087ae7a9d11b) +++ firmware/App/Services/TxParams.c (.../TxParams.c) (revision a67fbb440e081b87925ac7ac0cb892fe3a8d4b37) @@ -84,7 +84,7 @@ typedef struct { BOOL accepted; ///< Command accepted. - U32 reason[ NUM_OF_TREATMENT_PARAMS - 1 ]; ///< Rejection reason codes; 1 for each parameter. + U32 reason[ NUM_OF_TREATMENT_PARAMS ]; ///< Rejection reason codes; 1 for each parameter. } TREATMENT_PARAMS_VAL_RESP_DATA_PAYLOAD_T; /// Record structure for response to validate ultrafiltration volume @@ -127,7 +127,7 @@ { CRITICAL_DATA_TYPE_F32, {.sFlt=0.0}, {.sFlt=2.0}, {.sFlt=0.0} }, // TREATMENT_PARAM_HEPARIN_BOLUS_VOLUME { CRITICAL_DATA_TYPE_F32, {.sFlt=0.0}, {.sFlt=3.0}, {.sFlt=0.0} }, // TREATMENT_PARAM_HEPARIN_DELIVERY_RATE { CRITICAL_DATA_TYPE_F32, {.sFlt=35.0}, {.sFlt=38.0}, {.sFlt=37.0} }, // TREATMENT_PARAM_DIALYSATE_TEMPERATURE - { CRITICAL_DATA_TYPE_F32, {.sFlt=0.10}, {.sFlt=0.20}, {.sFlt=0.20} }, // TREATMENT_PARAM_ACID_CONCENTRATE_CONV_FACTOR // TODO + { CRITICAL_DATA_TYPE_F32, {.sFlt=0.00}, {.sFlt=0.20}, {.sFlt=0.20} }, // TREATMENT_PARAM_ACID_CONCENTRATE_CONV_FACTOR // TODO { CRITICAL_DATA_TYPE_F32, {.sFlt=2.0}, {.sFlt=500.0},{.sFlt=50.0} }, // TREATMENT_PARAM_PRE_WEIGHT { CRITICAL_DATA_TYPE_F32, {.sFlt=2.0}, {.sFlt=500.0},{.sFlt=50.0} }, // TREATMENT_PARAM_EST_TARGET_WEIGHT { CRITICAL_DATA_TYPE_F32, {.sFlt=0.0}, {.sFlt=8.0}, {.sFlt=0.0} }, // TREATMENT_PARAM_UF_VOLUME @@ -160,9 +160,9 @@ { 142, 304 } }; // DIALYZER_TYPE_FRESENIUS_OPTIFLUX_F250NRE /// Acid concentration conversion factors for each acid type -const F32 ACID_CONVERSION_FACTOR[ MAX_ACID_CONC_TYPES ] = { 0.1119255F, - 0.1131362F, - 0.1143568F, +const F32 ACID_CONVERSION_FACTOR[ MAX_ACID_CONC_TYPES ] = { 0.11192F, + 0.11313F, + 0.11435F, 0.0F, 0.0F, 0.0F, @@ -576,7 +576,7 @@ // check for float type params else { - if ( stagedParams[ param ].sFlt != (F32)NEARLY_ZERO ) + if ( stagedParams[ param ].sFlt > NEARLY_ZERO ) { result = FALSE; } @@ -610,7 +610,7 @@ else { // Range check treatment parameters excluding treatment modality and up to (but not including) UF volume - for ( param = TREATMENT_PARAM_HDF_DILUTION; param < TREATMENT_PARAM_UF_VOLUME; param++ ) + for ( param = TREATMENT_PARAM_HDF_DILUTION; param < NUM_OF_TREATMENT_PARAMS; param++ ) { reasons[ param ] = REQUEST_REJECT_REASON_NONE;