Index: firmware/App/Modes/ModeStandby.c =================================================================== diff -u -r8466e63f95f65a3ffb18c3af85ac99328e41167b -rc137d3c7cb17b0364d745e10ff6dbd1901eb1baa --- firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision 8466e63f95f65a3ffb18c3af85ac99328e41167b) +++ firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision c137d3c7cb17b0364d745e10ff6dbd1901eb1baa) @@ -1,17 +1,17 @@ /************************************************************************** * -* Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. +* Copyright (c) 2019-2021 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 ModeStandby.c +* @file ModeStandby.c * -* @author (last) Sean Nash -* @date (last) 08-Oct-2020 +* @author (last) Quang Nguyen +* @date (last) 24-Aug-2021 * -* @author (original) Dara Navaei -* @date (original) 05-Nov-2019 +* @author (original) Dara Navaei +* @date (original) 05-Nov-2019 * ***************************************************************************/ @@ -95,9 +95,9 @@ * @details Inputs: none * @details Outputs: Standby Mode module re-initialized, DG interface initialized, * blood & dialysate pumps shut off. - * @return none + * @return initial state *************************************************************************/ -void transitionToStandbyMode( void ) +U32 transitionToStandbyMode( void ) { // Re-initialize when transitioning to standby mode initStandbyMode(); @@ -113,6 +113,15 @@ setBloodPumpTargetFlowRate( 0, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_CLOSED_LOOP ); setDialInPumpTargetFlowRate( 0, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_CLOSED_LOOP ); setDialOutPumpTargetRate( 0, MOTOR_DIR_FORWARD, PUMP_CONTROL_MODE_CLOSED_LOOP ); + + // Set valves to default positions + setValveAirTrap( STATE_CLOSED ); + setValvePosition( VDI, VALVE_POSITION_A_INSERT_EJECT ); + setValvePosition( VDO, VALVE_POSITION_A_INSERT_EJECT ); + setValvePosition( VBA, VALVE_POSITION_A_INSERT_EJECT ); + setValvePosition( VBV, VALVE_POSITION_A_INSERT_EJECT ); + + return currentStandbyState; } /*********************************************************************//** @@ -290,10 +299,12 @@ rejReason = REQUEST_REJECT_REASON_DG_NOT_IN_STANDBY_IDLE_STATE; } +#ifndef DISABLE_BATT_COMM if ( FALSE == isBatteryCharged() ) { rejReason = REQUEST_REJECT_REASON_BATTERY_IS_NOT_CHARGED; } +#endif if ( REQUEST_REJECT_REASON_NONE == rejReason ) { @@ -480,7 +491,7 @@ cmdStopDGFill(); } - if ( DG_MODE_CIRC == dgOperationMode ) + if ( DG_MODE_GENE == dgOperationMode ) { cmdStopDG(); } @@ -662,7 +673,7 @@ data.disinfectSubModeHDState = (U32)dgDisinfectState; - broadcastDisinfectsData( &data ); + broadcastData( MSG_ID_HD_DISINFECT_STANDBY_DATA, COMM_BUFFER_OUT_CAN_HD_BROADCAST, (U08*)&data, sizeof( DISINFECTS_DATA_T ) ); dataPublishCounter = 0; }