Index: firmware/App/Modes/ModeGenDialysate.h =================================================================== diff -u -ra711f7995e555b503ed8c295f98fbe7bb9e5abf5 -rd31e9b40e9d56df8fa3551bbba63f6bec3a72811 --- firmware/App/Modes/ModeGenDialysate.h (.../ModeGenDialysate.h) (revision a711f7995e555b503ed8c295f98fbe7bb9e5abf5) +++ firmware/App/Modes/ModeGenDialysate.h (.../ModeGenDialysate.h) (revision d31e9b40e9d56df8fa3551bbba63f6bec3a72811) @@ -1,17 +1,17 @@ /************************************************************************** * -* Copyright (c) 2024-2024 Diality Inc. - All Rights Reserved. +* Copyright (c) 2024-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 ModeGenDialysate.h * -* @author (last) Vinayakam Mani -* @date (last) 30-Oct-2024 +* @author (last) Jashwant Gantyada +* @date (last) 13-Mar-2026 * * @author (original) Vinayakam Mani -* @date (original) 30-Oct-2024 +* @date (original) 06-Nov-2024 * ***************************************************************************/ @@ -32,21 +32,18 @@ // ********** public definitions ********** #define FRESH_DIAL_PUMP_INITIAL_RPM 2500 ///< Nominal RPM target for fresh dialysate pump to maintain required pressure. +#define FRESH_DIAL_PUMP_INITIAL_RPM_B1_9_B2_0 1250 ///< Nominal RPM target for fresh dialysate pump for beta 1.9 and 2.0 hardware. #define SPENT_DIAL_PUMP_INITIAL_RPM 2300 ///< Nominal RPM target for spent dialysate pump to maintain required pressure. -#define SPENT_DIAL_PUMP_FILL_RPM 350 ///< Nominal RPM target for spent chamber fill operations. +#define DIAL_PUMP_DRAIN_RPM 1000 ///< Nominal RPM target for dialysate pump to drain the dry bicart. +#define SPENT_DIAL_PUMP_FILL_RPM 200 ///< Nominal RPM target for spent chamber fill operations. /// Generate dialysate mode data structure typedef struct { U32 genDialysateExecState; ///< Generate dialysate execution state BOOL isDialDelInProgress; ///< Whether Dialysate Delivery in progress or not - U32 d6Level; ///< Floater level (low, medium and high) - U32 d63Level; ///< BiCarb Chamber level - U32 d46Level; ///< Spent dialysate chamber level - F32 d9Pressure; ///< Hydraulics chamber negative pressure - F32 d18Pressure; ///< Hydraulics chamber positive pressure - F32 d51Pressure; ///< Spent Dialysate positive pressure BOOL isDialysateGoodtoDeliver; ///< Ready to deliver dialysate or not + F32 currentQd; ///< Current dialysate flow rate (ml/min) } GEN_DIALYSATE_MODE_DATA_T; // ********** public function prototypes ********** @@ -55,13 +52,18 @@ U32 transitionToGenDialysateMode( void ); // Prepares for transition to gen dialysate mode U32 execGenDialysateMode( void ); // Execute the gen dialysate mode state machine (call from OperationModes) void execGenDialysateMonitor( void ); // Dialysate generation monitor +F32 calculateUpdatedD28TargetDialysateTemp( void ); // Calculated updated D28 temperature with Ultrafilters heat loss BOOL hydChamberWaterInletControl( void ); // Hydraulics chamber inlet water control DD_GEND_MODE_STATE_T getCurrentGenDialysateState( void ); // Get the current state of the gen dialysate mode. U32 getDialGoodToDeliverStatus( void ); // Get the dialysate good to deliver status void setTreatmentParamUpdate( void ); // To indicate one or more treatment parameters updated void updateTreatmentSettings( void ); // Process the recent treatment parameters changes BOOL requestDDGenDialyasteStop( void ); // Stop generate dialysate +U32 getD48PumpSpeedForBCFill( void ); // Get D48 pump speed +void setD48PumpSpeedForBCFill( U32 pumpSpeed ); // Set D48 pump speed +U32 calculateD48PumpSpeedForBCFill( void ); // Calculate and store initial D48 pump speed +U32 getCalculatedD48PumpSpeedForBCFill( void ); // Get nominal D48 speed from formula only BOOL testDDGenDialysateDataPublishIntervalOverride( MESSAGE_T *message ); // GenD Mode data publish interval override BOOL testDialDeliveryInProgressOverride( MESSAGE_T *message ); // To override the dialysate delivery in progress flag