Index: firmware/App/Services/SystemCommMessages.h =================================================================== diff -u -r1c80d60fe6a95297a8a8033a3c7eade53e72779a -rd3ae2d91603ae6d2d25b9abdb220cc144cf90692 --- firmware/App/Services/SystemCommMessages.h (.../SystemCommMessages.h) (revision 1c80d60fe6a95297a8a8033a3c7eade53e72779a) +++ firmware/App/Services/SystemCommMessages.h (.../SystemCommMessages.h) (revision d3ae2d91603ae6d2d25b9abdb220cc144cf90692) @@ -17,72 +17,41 @@ #ifndef __SYSTEM_COMM_MESSAGES_H__ #define __SYSTEM_COMM_MESSAGES_H__ -#include "Common.h" +#include "HDCommon.h" #include "MsgQueues.h" +#include "DialOutFlow.h" // ********** public definitions ********** -typedef enum Msg_IDs -{ // normal CAN messages - MSG_ID_UNUSED = 0, - MSG_ID_OFF_BUTTON_PRESS, // 1 - MSG_ID_ALARM_STATUS, // 2 - MSG_ID_ALARM_TRIGGERED, // 3 - MSG_ID_ALARM_CLEARED, // 4 - MSG_ID_BLOOD_FLOW_DATA, // 5 - MSG_ID_DG_CHECK_IN, // 6 - MSG_ID_UI_CHECK_IN, // 7 - MSG_ID_DIALYSATE_FLOW_DATA, // 8 - MSG_ID_PRESSURE_OCCLUSION_DATA, // 9 - MSG_ID_RTC_EPOCH, // 10 - - // service/test CAN messages - - MSG_ID_FIRST_TESTER_MESSAGE = 0x8000, // 0x8000 - MSG_ID_TESTER_LOGIN_REQUEST = MSG_ID_FIRST_TESTER_MESSAGE, - MSG_ID_HD_MESSAGE, // 0x8001 - MSG_ID_OFF_BUTTON_STATE_OVERRIDE, // 0x8002 - MSG_ID_STOP_BUTTON_STATE_OVERRIDE, // 0x8003 - MSG_ID_ALARM_LAMP_PATTERN_OVERRIDE, // 0x8004 - MSG_ID_WATCHDOG_TASK_CHECKIN_OVERRIDE, // 0x8005 - MSG_ID_ALARM_STATE_OVERRIDE, // 0x8006 - MSG_ID_ALARM_TIME_OVERRIDE, // 0x8007 - MSG_ID_BLOOD_FLOW_SET_PT_OVERRIDE, // 0x8008 - MSG_ID_BLOOD_FLOW_MEAS_OVERRIDE, // 0x8009 - MSG_ID_BLOOD_PUMP_MC_MEAS_SPEED_OVERRIDE, // 0x800A - MSG_ID_BLOOD_PUMP_MC_MEAS_CURR_OVERRIDE, // 0x800B - MSG_ID_BLOOD_FLOW_SEND_INTERVAL_OVERRIDE, // 0x800C - MSG_ID_ALARM_STATUS_SEND_INTERVAL_OVERRIDE, // 0x800D - MSG_ID_BLOOD_PUMP_MEAS_SPEED_OVERRIDE, // 0x800E - MSG_ID_BLOOD_PUMP_MEAS_ROTOR_SPEED_OVERRIDE, // 0x800F - MSG_ID_DIAL_IN_FLOW_SET_PT_OVERRIDE, // 0x8010 - MSG_ID_DIAL_IN_FLOW_MEAS_OVERRIDE, // 0x8011 - MSG_ID_DIAL_IN_PUMP_MC_MEAS_SPEED_OVERRIDE, // 0x8012 - MSG_ID_DIAL_IN_PUMP_MC_MEAS_CURR_OVERRIDE, // 0x8013 - MSG_ID_DIAL_IN_FLOW_SEND_INTERVAL_OVERRIDE, // 0x8014 - MSG_ID_DIAL_IN_PUMP_MEAS_SPEED_OVERRIDE, // 0x8015 - MSG_ID_DIAL_IN_PUMP_MEAS_ROTOR_SPEED_OVERRIDE, // 0x8016 - MSG_ID_PRESSURE_ARTERIAL_OVERRIDE, // 0x8017 - MSG_ID_PRESSURE_VENOUS_OVERRIDE, // 0x8018 - MSG_ID_OCCLUSION_BLOOD_PUMP_OVERRIDE, // 0x8019 - MSG_ID_OCCLUSION_DIAL_IN_PUMP_OVERRIDE, // 0x801A - MSG_ID_OCCLUSION_DIAL_OUT_PUMP_OVERRIDE, // 0x801B - MSG_ID_PRES_OCCL_SEND_INTERVAL_OVERRIDE, // 0x801C - MSG_ID_SET_RTC_DATE_TIME, // 0x801D - END_OF_MSG_IDS -} MSG_ID_T; - // ********** public function prototypes ********** -#ifndef ACK_NOT_IMPLEMENTED // ACK MSG BOOL sendACKMsg( MESSAGE_T *message ); -#endif +// MSG_ID_DG_CHECK_IN +void handleDGCheckIn( MESSAGE_T *message ); +// MSG_ID_UI_CHECK_IN +void handleUICheckIn( MESSAGE_T *message ); + // MSG_ID_OFF_BUTTON_PRESS BOOL sendOffButtonMsgToUI( U08 cmd ); void handleOffButtonConfirmMsgFromUI( MESSAGE_T *message ); +// MSG_ID_LOAD_CELL_READINGS +void handleLoadCellReadingsFromDG( MESSAGE_T *message ); + +// MSG_ID_USER_UF_PAUSE_RESUME_REQUEST +void handleUFPauseResumeRequest( MESSAGE_T *message ); +// MSG_ID_USER_UF_SETTINGS_CHANGE_REQUEST +void handleChangeUFSettingsRequest( MESSAGE_T *message ); +// MSG_ID_USER_UF_SETTINGS_CHANGE_RESPONSE +BOOL sendChangeUFSettingsResponse( BOOL accepted, F32 volume_mL, U32 time_min, F32 ufRate_mL_min, S32 timeDiff, F32 rateDiff ); +// MSG_ID_USER_CONFIRM_UF_SETTINGS_CHANGE +void handleChangeUFSettingsConfirmation( MESSAGE_T *message ); + +//MSG_ID_USER_TREATMENT_TIME_CHANGE_REQUEST +void handleChangeTreatmentDurationRequest( MESSAGE_T *message ); + // MSG_ID_ALARM_STATUS BOOL broadcastAlarmStatus( COMP_ALARM_STATUS_T almStatus ); // MSG_ID_ALARM_TRIGGERED @@ -96,21 +65,30 @@ // MSG_ID_DIALYSATE_FLOW_DATA BOOL broadcastDialInFlowData( U32 flowStPt, F32 measFlow, F32 measRotorSpd, F32 measSpd, F32 measMCSpd, F32 measMCCurr, F32 pwmDC ); +// MSG_ID_DIALYSATE_OUT_FLOW_DATA +BOOL broadcastDialOutFlowData( DIAL_OUT_FLOW_DATA_T *dialOutFlowData ); + // MSG_ID_PRESSURE_OCCLUSION_DATA BOOL broadcastPresOcclData( F32 artPres, F32 venPres, F32 bpOccl, F32 diOccl, F32 doOccl ); // MSG_ID_RTC_EPOCH BOOL broadcastRTCEpoch( U32 epoch ); -// MSG_ID_DG_CHECK_IN -void handleDGCheckIn( MESSAGE_T *message ); -// MSG_ID_UI_CHECK_IN -void handleUICheckIn( MESSAGE_T *message ); +// MSG_ID_TREATMENT_TIME +BOOL broadcastTreatmentTime( U32 secsTotTreatment, U32 secsElapsed, U32 secsRemaining ); +// MSG_ID_TREATMENT_STATE +BOOL broadcastTreatmentState( U32 subMode, U32 uFState, BOOL salineBolusState ); + +// MSG_ID_POWER_OFF_WARNING +BOOL broadcastPowerOffWarning( void ); + // *********** public test support message functions ********** +#ifdef DEBUG_ENABLED // DEBUG OUTPUT BOOL sendDebugData( U08 *dbgData, U32 len ); +#endif // MSG_TESTER_LOG_IN void handleTesterLogInRequest( MESSAGE_T *message ); @@ -203,5 +181,29 @@ // MSG_ID_SET_RTC_TIMESTAMP void handleSetRTCTimestamp( MESSAGE_T *message ); +// MSG_ID_DIAL_OUT_FLOW_SEND_INTERVAL_OVERRIDE +void handleTestDialOutFlowBroadcastIntervalOverrideRequest( MESSAGE_T *message ); + +// MSG_ID_DIAL_OUT_UF_REF_VOLUME_OVERRIDE +void handleTestDialOutUFReferenceVolumeOverrideRequest( MESSAGE_T *message ); + +// MSG_ID_DIAL_OUT_UF_MEAS_VOLUME_OVERRIDE +void handleTestDialOutUFMeasuredVolumeOverrideRequest( MESSAGE_T *message ); + +// MSG_ID_DIAL_OUT_PUMP_MC_MEAS_SPEED_OVERRIDE +void handleTestDialOutPumpMCMeasuredSpeedOverrideRequest( MESSAGE_T *message ); + +// MSG_ID_DIAL_OUT_PUMP_MC_MEAS_CURR_OVERRIDE +void handleTestDialOutPumpMCMeasuredCurrentOverrideRequest( MESSAGE_T *message ); + +// MSG_ID_DIAL_OUT_PUMP_MEAS_SPEED_OVERRIDE +void handleTestDialOutPumpMeasuredSpeedOverrideRequest( MESSAGE_T *message ); + +// MSG_ID_DIAL_OUT_PUMP_MEAS_ROTOR_SPEED_OVERRIDE +void handleTestDialOutPumpMeasuredRotorSpeedOverrideRequest( MESSAGE_T *message ); + +// MSG_ID_DIAL_OUT_LOAD_CELL_WEIGHT_OVERRIDE +void handleTestDialOutLoadCellWeightOverrideRequest( MESSAGE_T *message ); + #endif