Index: firmware/App/Monitors/BloodLeak.c =================================================================== diff -u -r6f7ada05f12562eef3d0135168b37cdabf7e3eae -rb2436685ec42e879781b0bc1348ba80f333196bb --- firmware/App/Monitors/BloodLeak.c (.../BloodLeak.c) (revision 6f7ada05f12562eef3d0135168b37cdabf7e3eae) +++ firmware/App/Monitors/BloodLeak.c (.../BloodLeak.c) (revision b2436685ec42e879781b0bc1348ba80f333196bb) @@ -1,5 +1,20 @@ +/************************************************************************** +* +* 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 BloodLeak.c +* +* @author (last) Dara Navaei +* @date (last) 10-Sep-2024 +* +* @author (original) Dara Navaei +* @date (original) 10-Sep-2024 +* +***************************************************************************/ - #include // For pow function #include // For memset and strlen #include // For sprintf @@ -172,36 +187,17 @@ static OVERRIDE_U32_T bloodLeakDataPublishInterval = { BLOOD_LEAK_PUB_INTERVAL, BLOOD_LEAK_PUB_INTERVAL, 0, 0 }; ///< Interval (in ms) at which to publish blood leak data to CAN bus. static U32 bloodLeakDataPublicationCounter; ///< Timer counter used to schedule blood leak data publication to CAN bus. -//static U32 bloodLeakUARTCmdIndex; ///< Blood leak UART command index. -//static U32 bloodLeakSetPointSeqLength; ///< Blood leak set point sequence actual length. static U08 bloodLeakSetPointSequence[ BLOOD_LEAK_SET_POINT_SEQ_MAX_LENGTH ][ 2 ]; ///< Blood leak set point sequence array. -//static HD_BLOOD_LEAK_SENSOR_CAL_RECORD_T bloodLeakCalRecord; ///< Blood leak calibration record structure. // TODO uncomment static BOOL bloodLeakExitNormalRequested; ///< Blood leak exit normal state requested. static U32 bloodLeakRecoveryStartTimeMS; ///< Blood leak recovery start time in milliseconds. static BLOOD_LEAK_ZEROING_STATUS_T bloodLeakZeroingStatus; ///< Blood leak zeroing status. // Embedded mode variables -//static BOOL bloodLeakSignalEmbModeReq; ///< Blood leak signal embedded mode has been requested. -//static U08 bloodLeakEmbModeRqstedCmd; ///< Blood leak signal embedded mode requested command. -//static U08 bloodLeakEmbModeCmdSeq[ BLOOD_LEAK_EMB_MODE_CMD_SEQ_LENGTH ][ 2 ]; ///< Blood leak embedded mode command sequence. -static BLOOD_LEAK_EMB_MODE_STATE_T bloodLeakEmbModeSubstate; ///< Blood leak embedded mode state. -//static U32 bloodLeakEmbModeOpsStartTime; ///< Blood leak embedded mode operations start time. -//static U16 bloodLeakEmbModeSetPoint; ///< Blood leak embedded mode set point command. +static BLOOD_LEAK_EMB_MODE_STATE_T bloodLeakEmbModeSubstate; ///< Blood leak embedded mode state. ///< Blood leak embedded mode set point command. static EMB_MODE_CMD_T bloodLeakEmbModeCmd[ NUM_OF_EMB_CMDS ]; ///< Blood leak embedded mode commands. -//static U08 bloodLeakEmbModeRespBuffer[ BLOOD_LEAK_EMB_MODE_RESP_BUFFER_LEN ]; ///< Blood leak embedded mode response buffer. -//static U32 bloodLeakEmbModeRespIndex; ///< Blood leak embedded mode response buffer index. -//static U32 bloodLeakEmbModeCmdSeqLength; ///< Blood leak embedded mode command sequence length. -//static BOOL bloodLeakEmbModeHasRxRqstBeenSent; ///< Blood leak embedded mode Rx request has been sent signal. static U08 bloodLeakEmbModeCmdQ[ BLOOD_LEAK_EMB_MODE_CMD_Q_MAX_SIZE ]; ///< Blood leak embedded mode command queue. -//static U08 bloodLeakEmbModeCmdQRearIndex; ///< Blood leak embedded mode command queue rear index. -//static U08 bloodLeakEmbModeCmdQFrontIndex; ///< Blood leak embedded mode command queue front index. -//static U08 bloodLeakEmbModeCmdQCount; ///< Blood leak embedded mode command queue count. static BOOL bloodLeakEmbModeHasZeroBeenRqustd; ///< Blood leak embedded mode flag to indicate zero has been requested. -static U32 bloodLeakEmbModeCmdEnqueueCount; ///< Blood leak embedded mode command enqueue count. -//static U32 bloodLeakEmbModeInfoCmdEnqLastTimeStamp; ///< Blood leak embedded mode informative command (i.e. I, V, D) timer. -//static U32 bloodLeakEmbModeInfoCmdCounter; ///< Blood leak embedded mode informative command counter. -//static OVERRIDE_U32_T bloodLeakEmbModeIntensityOverride; ///< Blood leak embedded mode intensity override. -//static OVERRIDE_U32_T bloodLeakEmbModeDetectOverride; ///< Blood leak embedded mode blood detect override. +static U32 bloodLeakEmbModeCmdEnqueueCount; ///< Blood leak embedded mode command enqueue count // ********** private function prototypes ********** @@ -219,7 +215,6 @@ static void processBloodLeakIntensityData( void ); static BOOL isLowerRangeIntensityDriftZeroingNeeded( void ); static BOOL isUpperIntensityZeroingNeeded( void ); -//static BOOL sendBloodLeakEmbeddedModeCommandResponse( U08 cmd, U32 responseLen, U08 *responseBuffer ); /*********************************************************************//** * @brief @@ -250,24 +245,11 @@ bloodLeakStatus.ovData = BLOOD_LEAK_NOT_DETECTED; bloodLeakStatus.override = OVERRIDE_RESET; bloodLeakSelfTestStatus = SELF_TEST_STATUS_IN_PROGRESS; - //bloodLeakUARTCmdIndex = 0; - //bloodLeakSetPointSeqLength = 0; bloodLeakPersistenceCtr = 0; - //bloodLeakSignalEmbModeReq = FALSE; - //bloodLeakEmbModeRqstedCmd = NU_EMB_MODE_CMD; bloodLeakEmbModeSubstate = BLOOD_LEAK_EMB_MODE_WAIT_FOR_COMAND_STATE; - //bloodLeakEmbModeOpsStartTime = 0; - //bloodLeakEmbModeRespIndex = 0; bloodLeakExitNormalRequested = FALSE; - //bloodLeakEmbModeCmdSeqLength = 0; - //bloodLeakEmbModeHasRxRqstBeenSent = FALSE; - //bloodLeakEmbModeCmdQFrontIndex = 0; - //bloodLeakEmbModeCmdQRearIndex = 0; - //bloodLeakEmbModeCmdQCount = 0; bloodLeakEmbModeHasZeroBeenRqustd = FALSE; bloodLeakEmbModeCmdEnqueueCount = 0; - //bloodLeakEmbModeInfoCmdEnqLastTimeStamp = getMSTimerCount(); - //bloodLeakEmbModeInfoCmdCounter = 0; bloodLeakRecoveryStartTimeMS = getMSTimerCount(); // Set the blood leak embedded mode command queue to zero @@ -345,8 +327,6 @@ break; } - //enqueueInfoEmbModeCmds(); - // Publish blood leak data if due publishBloodLeakData(); } @@ -452,14 +432,14 @@ return bloodLeakSelfTestStatus; } -///*********************************************************************//** -// * @brief -// * The isBloodLeakZeroingNeeded function checks whether blood leak zeroing -// * is needed in terms of drift. -// * @details \b Inputs: none -// * @details \b Outputs: none -// * @return TRUE if blood leak zeroing is needed otherwise, FALSE -// *************************************************************************/ +/*********************************************************************//** + * @brief + * The isBloodLeakZeroingNeeded function checks whether blood leak zeroing + * is needed in terms of drift. + * @details \b Inputs: none + * @details \b Outputs: none + * @return TRUE if blood leak zeroing is needed otherwise, FALSE + *************************************************************************/ BOOL isBloodLeakZeroingNeeded( void ) { BOOL status = FALSE; @@ -1056,7 +1036,6 @@ return status; } -<<<<<<< Updated upstream /*********************************************************************//** * @brief * The sendBloodLeakEmbeddedModeCommandResponse function sends out @@ -1197,3 +1176,4 @@ /**@}*/ +