Index: firmware/App/Services/SystemComm.c =================================================================== diff -u -r98f34c2ab63d51a1bf248db454ebc04e184d4748 -r276c2634eab5a641ed7f0a548b31e1bb13ef5477 --- firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 98f34c2ab63d51a1bf248db454ebc04e184d4748) +++ firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 276c2634eab5a641ed7f0a548b31e1bb13ef5477) @@ -191,7 +191,12 @@ void checkInFromDG( void ) { dgIsCommunicating = TRUE; - timeOfLastDGCheckIn = getMSTimerCount(); + timeOfLastDGCheckIn = getMSTimerCount(); + + if ( TRUE == isAlarmActive( ALARM_ID_DG_COMM_TIMEOUT ) ) + { + clearAlarm( ALARM_ID_DG_COMM_TIMEOUT ); + } } /*********************************************************************//** @@ -204,6 +209,11 @@ *************************************************************************/ void checkInFromUI( void ) { + if ( FALSE == uiDidCommunicate ) + { // Start DG check-in timer when UI first communicates + timeOfLastDGCheckIn = getMSTimerCount(); + } + uiIsCommunicating = TRUE; timeOfLastUICheckIn = getMSTimerCount(); uiDidCommunicate = TRUE; @@ -930,11 +940,13 @@ { activateAlarmNoData( ALARM_ID_UI_COMM_TIMEOUT ); } + + if ( TRUE == didTimeout( timeOfLastDGCheckIn, DG_COMM_TIMEOUT_IN_MS ) ) + { + activateAlarmNoData( ALARM_ID_DG_COMM_TIMEOUT ); + dgIsCommunicating = FALSE; + } } - if ( TRUE == didTimeout( timeOfLastDGCheckIn, DG_COMM_TIMEOUT_IN_MS ) ) - { - dgIsCommunicating = FALSE; - } } /*********************************************************************//** @@ -1179,26 +1191,82 @@ handleTreatmentParametersFromUI( message ); break; - case MSG_ID_UI_START_TREATMENT: - handleUIStartTreatmentMsg( message ); + case MSG_ID_UI_INITIATE_TREATMENT_REQUEST: + handleInitiateTreatmentRequest( message ); break; case MSG_ID_UI_USER_CONFIRM_TREATMENT_PARAMS: handleUIUserConfirmTreatmentParameters( message ); break; - case MSG_ID_UI_TREATMENT_END_REQUEST: - handleUIUserEndTreatmentRequest( message ); - break; - case MSG_ID_UI_PRESSURE_LIMITS_CHANGE_REQUEST: handleChangePressureLimitsRequest( message ); break; + case MSG_ID_UI_HEPARIN_PAUSE_RESUME_REQUEST: + handleHeparinCommandRequest( message ); + break; + case MSG_ID_UI_SET_UF_VOLUME_PARAMETER: handleUFVolumeSetRequest( message ); break; + case MSG_ID_UI_SAMPLE_WATER_CMD: + handleSampleWaterCmd( message ); + break; + + case MSG_ID_UI_SAMPLE_WATER_RESULT: + handleSampleWaterResult( message ); + break; + + case MSG_ID_UI_CONSUMABLE_INSTALL_CONFIRM: + handleConsumableInstallConfirm( message ); + break; + + case MSG_ID_UI_INSTALLATION_CONFIRM: + handleInstallationConfirm( message ); + break; + + case MSG_ID_UI_START_PRIME_REQUEST: + handleStartPrimeCmd( message ); + break; + + case MSG_ID_UI_PATIENT_CONNECTION_BEGIN_REQUEST: + handleContinueToTreatmentCmd( message ); + break; + + case MSG_ID_UI_PATIENT_CONNECTION_CONFIRM: + handlePatientConnectionConfirmCmd( message ); + break; + + case MSG_ID_UI_START_TREATMENT_REQUEST: + handleStartTreatmentRequest( message ); + break; + + case MSG_ID_UI_RINSEBACK_CMD: + handlRinsebackCmd( message ); + break; + + case MSG_ID_UI_RECIRC_CMD: + handleTreatmentRecircCmd( message ); + break; + + case MSG_ID_UI_TX_END_CMD: + handleTreatmentEndCmd( message ); + break; + + case MSG_ID_UI_PATIENT_DISCONNECTION_CONFIRM: + handlePatientDisconnectionConfirmCmd( message ); + break; + + case MSG_ID_UI_DISPOSABLE_REMOVAL_CONFIRM: + handleDisposableRemovalConfirmCmd( message ); + break; + + case MSG_ID_UI_TREATMENT_LOG_DATA_REQUEST: + handleUITreatmentLogDataRequest( message ); + break; + case MSG_ID_DG_COMMAND_RESPONSE: handleDGCmdResp( message ); break; @@ -1207,8 +1275,32 @@ handleTesterLogInRequest( message ); break; + case MSG_ID_HD_SET_CALIBRATION_RECORD: + handleSetHDCalibrationRecord( message ); + break; + + case MSG_ID_HD_GET_CALIBRATION_RECORD: + handleGetHDCalibrationRecord( message ); + break; + + case MSG_ID_HD_SET_SYSTEM_RECORD: + handleSetHDSystemRecord( message ); + break; + + case MSG_ID_HD_GET_SYSTEM_RECORD: + handleGetHDSystemRecord( message ); + break; + + case MSG_ID_HD_GET_SERVICE_RECORD: + handleGetHDServiceRecord( message ); + break; + + case MSG_ID_HD_SET_SERVICE_RECORD: + handleSetHDServiceRecord( message ); + break; + default: - // TODO - unrecognized message ID received - ignore + // Unrecognized message ID received - ignore break; } @@ -1259,6 +1351,10 @@ case MSG_ID_BLOOD_FLOW_SEND_INTERVAL_OVERRIDE: handleTestBloodFlowBroadcastIntervalOverrideRequest( message ); + break; + + case MSG_ID_TREATMENT_TIME_REMAINING_OVERRIDE: + handleTestTreatmentTimeRemainingOverrideRequest( message ); break; case MSG_ID_BLOOD_PUMP_MEAS_SPEED_OVERRIDE: @@ -1373,18 +1469,6 @@ handleTestHDAccelBroadcastIntervalOverrideRequest( message ); break; - case MSG_ID_HD_ACCEL_SET_CALIBRATION: - handleSetAccelCalibration( message ); - break; - - case MSG_ID_HD_BLOOD_FLOW_SET_CALIBRATION: - handleSetBloodFlowCalibration( message ); - break; - - case MSG_ID_HD_DIALYSATE_FLOW_SET_CALIBRATION: - handleSetDialysateFlowCalibration( message ); - break; - case MSG_ID_DIAL_OUT_FLOW_SET_PT_OVERRIDE: handleTestDialOutFlowSetPointOverrideRequest( message ); break; @@ -1447,20 +1531,80 @@ handleTestDialOutPumpHomeRequest( message ); break; + case MSG_ID_HD_FLUID_LEAK_SEND_INTERVAL_OVERRIDE: + handleSetFluidLeakBroadcastIntervalOverrideRequest( message ); + break; + + case MSG_ID_HD_FLUID_LEAK_STATE_OVERRIDE: + handleSetFluidLeakStateOverrideRequest( message ); + break; + + case MSG_ID_HD_BLOOD_LEAK_DATA_SEND_INTERVAL_OVERRIDE: + handleSetBloodLeakDataBroadcastIntervalOverrideRequest( message ); + break; + + case MSG_ID_HD_BLOOD_LEAK_STATUS_OVERRIDE: + handleSetBloodLeakStatusOverrideRequest( message ); + break; + + case MSG_ID_HD_BLOOD_LEAK_ZERO_REQUEST: + handleBloodLeakZeroRequest( message ); + break; + + case MSG_ID_HD_BUBBLES_DATA_SEND_INTERVAL_OVERRIDE: + handleSetBubblesDataBroadcastIntervalOverrideRequest( message ); + break; + + case MSG_ID_HD_BUBBLE_STATUS_OVERRIDE: + handleSetBubbleStatusOverrideRequest( message ); + break; + + case MSG_ID_HD_BUBBLE_SELF_TEST_REQUEST: + handleBubbleSelfTestRequest( message ); + break; + + case MSG_ID_HD_SET_OP_MODE_REQUEST: + handleTestSetOpModeRequest( message ); + break; + case MSG_ID_SUPER_CLEAR_ALARMS_CMD: handleTestSuperClearAlarmsRequest( message ); break; - case MSG_ID_HD_REQUEST_CALIBRATION_DATA: - handleTestHDCalibrationDataRequest( message ); + case MSG_ID_HD_SYRINGE_PUMP_SEND_INTERVAL_OVERRIDE: + handleTestSyringePumpDataBroadcastIntervalOverrideRequest( message ); break; - case MSG_ID_HD_ERASE_CALIBRATION_DATA: - handleTestEraseHDCalibrationDataRequest( message ); + case MSG_ID_HD_SYRINGE_PUMP_OPERATION_REQUEST: + handleTestSyringePumpOperationRequest( message ); break; + case MSG_ID_HD_SYRINGE_PUMP_MEASURED_RATE_OVERRIDE: + handleTestSyringePumpMeasuredRateOverrideRequest( message ); + break; + + case MSG_ID_HD_SYRINGE_PUMP_MEASURED_FORCE_OVERRIDE: + handleTestSyringePumpMeasuredForceOverrideRequest( message ); + break; + + case MSG_ID_HD_SYRINGE_PUMP_SYRINGE_DETECT_OVERRIDE: + handleTestSyringePumpMeasuredSyringeDetectOverrideRequest( message ); + break; + + case MSG_ID_HD_SYRINGE_PUMP_MEASURED_HOME_OVERRIDE: + handleTestSyringePumpMeasuredHomeOverrideRequest( message ); + break; + + case MSG_ID_HD_SYRINGE_PUMP_MEASURED_POSITION_OVERRIDE: + handleTestSyringePumpMeasuredPositionOverrideRequest( message ); + break; + + case MSG_ID_HD_SYRINGE_PUMP_MEASURED_VOLUME_OVERRIDE: + handleTestSyringePumpMeasuredVolumeOverrideRequest( message ); + break; + default: - // TODO - unrecognized message ID received - ignore + // Unrecognized message ID received - ignore break; } }