Index: firmware/App/Controllers/Ultrafiltration.c =================================================================== diff -u -r387ea33c2e45705550905bc1a97e13db1cc95bf8 -rd748813399d38ef5b71d760e327e368cc82d7a38 --- firmware/App/Controllers/Ultrafiltration.c (.../Ultrafiltration.c) (revision 387ea33c2e45705550905bc1a97e13db1cc95bf8) +++ firmware/App/Controllers/Ultrafiltration.c (.../Ultrafiltration.c) (revision d748813399d38ef5b71d760e327e368cc82d7a38) @@ -1,17 +1,17 @@ /************************************************************************** * -* Copyright (c) 2024-2025 Diality Inc. - All Rights Reserved. +* Copyright (c) 2025-2026 Diality Inc. - All Rights Reserved. * * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * @file Ultrafiltration.c * * @author (last) Vinayakam Mani -* @date (last) 23-Jul-2025 +* @date (last) 09-Feb-2026 * * @author (original) Vinayakam Mani -* @date (original) 23-Jul-2025 +* @date (original) 28-Jul-2025 * ***************************************************************************/ @@ -104,9 +104,22 @@ // Calculate UF volume and determine UF pause/run updateUFRequest(); - // Compensate balancing error at defined interval - UpdateUFCompensation(); + // Trimmer heater enabled, hence UF temp compensation is optional + if ( getTestConfigStatus( TEST_CONFIG_DD_ENABLE_UF_TEMP_COMPENSATION ) == TRUE ) + { + // Compensate balancing error at defined interval + UpdateUFCompensation(); + } + else if ( TRUE == isUFRateUpdated ) + { + //get updated UF rate + compUFrate = getTDUFRate(); + // Update UF rate + setConcentratePumpTargetSpeed( D76_PUMP, compUFrate, DOSING_CONT_VOLUME ); + isUFRateUpdated = FALSE; + } + // execute current ultrafiltration exec state switch ( ufExecState ) { @@ -181,10 +194,10 @@ /*********************************************************************//** * @brief - * The updateUFRequest function updates the ultrafiltration rate per iteration - * and of the ultrafiltration. + * The updateUFRequest function updates the ultrafiltration requested + * flag to true or false based on the conditions. * @details \b Inputs: TD Uf rate, TD Dialysate flow rate and bypass flag - * @details \b Outputs: ufVolumeperIteration , isUltrafiltrationRequested + * @details \b Outputs: isUltrafiltrationRequested * @return none. *************************************************************************/ static void updateUFRequest( void )