Index: firmware/App/Controllers/DialInFlow.h =================================================================== diff -u -rb20421d84b9049977c04f4752f4fc5697425f25c -rcd5be724d5a3ba7457e761191d82f278654d7f5c --- firmware/App/Controllers/DialInFlow.h (.../DialInFlow.h) (revision b20421d84b9049977c04f4752f4fc5697425f25c) +++ firmware/App/Controllers/DialInFlow.h (.../DialInFlow.h) (revision cd5be724d5a3ba7457e761191d82f278654d7f5c) @@ -1,14 +1,14 @@ /************************************************************************** * -* Copyright (c) 2019-2022 Diality Inc. - All Rights Reserved. +* Copyright (c) 2019-2024 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 DialInFlow.h * -* @author (last) Darren Cox -* @date (last) 10-Mar-2022 +* @author (last) Sean Nash +* @date (last) 06-Jun-2023 * * @author (original) Sean * @date (original) 16-Dec-2019 @@ -33,7 +33,7 @@ #define MAX_DIAL_IN_FLOW_RATE 600 ///< Maximum dialysate inlet flow rate (in mL/min). #define MIN_DIAL_IN_FLOW_RATE 100 ///< Minimum dialysate inlet flow rate (in mL/min). -#define DIALYSATE_FLOW_RATE_FOR_RECIRC 100 ///< Dialysate recirculation flow rate (in mL/min). +#define DIALYSATE_FLOW_RATE_FOR_RECIRC 250 ///< Dialysate recirculation flow rate (in mL/min). /// Payload record structure for a dialysate inlet pump data message. typedef struct @@ -45,7 +45,9 @@ F32 measMCSpd; F32 measMCCurr; F32 pwmDC; - F32 flowSigStrength; + U32 rotorCount; + U32 presFlow; + U32 rotorHall; } DIALIN_PUMP_STATUS_PAYLOAD_T; // ********** public function prototypes ********** @@ -55,11 +57,13 @@ void execDialInFlowController( void ); BOOL setDialInPumpTargetFlowRate( U32 flowRate, MOTOR_DIR_T dir, PUMP_CONTROL_MODE_T mode ); +BOOL setDialInPumpTargetRPM( U32 rpm, MOTOR_DIR_T dir ); void signalDialInPumpHardStop( void ); void signalDialInPumpRotorHallSensor( void ); BOOL homeDialInPump( void ); BOOL isDialInPumpRunning( void ); BOOL isDialInPumpRampComplete( void ); +void resetDialInPumpRotorCount( void ); SELF_TEST_STATUS_T execDialInFlowTest( void ); @@ -70,6 +74,8 @@ F32 getMeasuredDialInPumpMCSpeed( void ); F32 getMeasuredDialInPumpMCCurrent( void ); F32 getDialInPumpPWMDutyCyclePct( BOOL init ); +U32 getDialInPumpRotorCount( void ); +U32 getPumpRotorErrorPersistTime( F32 mtr_speed, F32 gear_ratio ); BOOL testSetDialInFlowDataPublishIntervalOverride( U32 value ); BOOL testResetDialInFlowDataPublishIntervalOverride( void ); @@ -84,7 +90,9 @@ BOOL testResetMeasuredDialInPumpMCSpeedOverride( void ); BOOL testSetMeasuredDialInPumpMCCurrentOverride( F32 value ); BOOL testResetMeasuredDialInPumpMCCurrentOverride( void ); -BOOL testSetDialInPumpTargetDutyCycle( F32 value ); +BOOL testSetDialInPumpTargetDutyCycle( F32 value ); +BOOL testSetDialysateInPumpRotorCountOverride( U32 value ); +BOOL testResetDialysateInPumpRotorCountOverride( void ); /**@}*/