Index: firmware/App/Services/SystemComm.c =================================================================== diff -u -r1b8f3d5802dcd34fbd8ab27163aec26b1ec08088 -r5291bb3f717bb61085601eed512a1e1e57053e7f --- firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 1b8f3d5802dcd34fbd8ab27163aec26b1ec08088) +++ firmware/App/Services/SystemComm.c (.../SystemComm.c) (revision 5291bb3f717bb61085601eed512a1e1e57053e7f) @@ -37,11 +37,11 @@ // ********** private definitions ********** #define NUM_OF_CAN_OUT_BUFFERS 5 ///< Number of CAN buffers for transmit -#define NUM_OF_CAN_IN_BUFFERS 6 ///< Number of CAN buffers for receiving +#define NUM_OF_CAN_IN_BUFFERS 7 ///< Number of CAN buffers for receiving #ifndef DEBUG_ENABLED - #define NUM_OF_MSG_IN_BUFFERS 6 ///< Number of Msg buffers for receiving + #define NUM_OF_MSG_IN_BUFFERS 7 ///< Number of Msg buffers for receiving #else - #define NUM_OF_MSG_IN_BUFFERS 7 + #define NUM_OF_MSG_IN_BUFFERS 8 #define SCI1_RECEIVE_DMA_REQUEST 30 #define SCI1_TRANSMIT_DMA_REQUEST 31 #endif @@ -81,9 +81,9 @@ { COMM_BUFFER_OUT_CAN_DG_ALARM, COMM_BUFFER_OUT_CAN_DG_2_HD, + COMM_BUFFER_OUT_CAN_DG_2_UI, COMM_BUFFER_OUT_CAN_DG_BROADCAST, - COMM_BUFFER_OUT_CAN_PC, - COMM_BUFFER_OUT_CAN_DG_2_UI + COMM_BUFFER_OUT_CAN_PC }; /// Array of in-coming CAN buffers. @@ -93,6 +93,7 @@ COMM_BUFFER_IN_CAN_UI_ALARM, COMM_BUFFER_IN_CAN_HD_2_DG, COMM_BUFFER_IN_CAN_HD_BROADCAST, + COMM_BUFFER_IN_CAN_UI_2_DG, COMM_BUFFER_IN_CAN_UI_BROADCAST, COMM_BUFFER_IN_CAN_PC, #ifdef DEBUG_ENABLED @@ -566,13 +567,12 @@ else { signalCANXmitsCompleted(); - // TODO - shouldn't get here, but let's see if we do - SET_ALARM_WITH_1_U32_DATA( ALARM_ID_DG_SOFTWARE_FAULT, (U32)mBox ) + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DG_SOFTWARE_FAULT, SW_FAULT_ID_CAN_TX_FAULT, (U32)mBox ) } } else - { // TODO - shouldn't get here - just testing - set first data to new s/w fault enum later - SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DG_SOFTWARE_FAULT, (U32)buffer, (U32)dataSize ) + { + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DG_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_CAN_MESSAGE_SIZE, (U32)dataSize ) } } @@ -838,9 +838,7 @@ if ( TRUE == didTimeout( timeOfLastHDCheckIn, HD_COMM_TIMEOUT_IN_MS ) ) { hdIsCommunicating = FALSE; -#ifndef DEBUG_ENABLED - activateAlarmNoData( ALARM_ID_HD_COMM_TIMEOUT ); // TODO - add this alarm if we're in middle of a treatment? or if in a mode that comm loss would impact badly? -#endif + activateAlarmNoData( ALARM_ID_HD_COMM_TIMEOUT ); } } @@ -999,6 +997,10 @@ handlePowerOffWarning( message ); break; + case MSG_ID_ALARM_CLEARED: + handleAlarmClear( message ); + break; + case MSG_ID_SET_DG_DIALYSATE_TEMP_TARGETS: handleSetDialysateTemperatureCmd( message ); break; @@ -1035,6 +1037,23 @@ handleStartStopTrimmerHeaterCmd( message ); break; + case MSG_ID_DG_START_STOP_FLUSH: + handleStartStopDGFlush( message ); + break; + + case MSG_ID_DG_START_STOP_HEAT_DISINFECT: + handleStartStopDGHeatDisinfect( message ); + break; + + case MSG_ID_DG_START_STOP_CHEM_DISINFECT: + handleStartStopDGChemicalDisinfect( message ); + break; + + case MSG_ID_UI_DG_SET_RTC_REQUEST: + handleUIClockSyncRequest( message ); + break; + + // NOTE: This case must be last case MSG_ID_DG_TESTER_LOGIN_REQUEST: handleTesterLogInRequest( message ); break; @@ -1141,6 +1160,14 @@ handleTestDGAccelBroadcastIntervalOverrideRequest( message ); break; + case MSG_ID_DG_MONITORED_VOLTAGES_SEND_INTERVAL_OVERRIDE: + handleTestMonitoredVoltagesSendIntervalOverrideRequest( message ); + break; + + case MSG_ID_DG_MONITORED_VOLTAGES_OVERRIDE: + handleTestMonitoredVoltageOverrideRequest( message ); + break; + case MSG_ID_DRAIN_PUMP_SET_DELTA_PRESSURE_OVERRIDE: handleSetDrainPumpDeltaPressureOverrideRequest( message ); break; @@ -1175,6 +1202,7 @@ case MSG_ID_DG_FANS_DATA_PUBLISH_INTERVAL_OVERRIDE: handleTestFansDataPublishIntervalOverride( message ); + break; case MSG_ID_DG_RO_PUMP_DUTY_CYCLE_OVERRIDE: handleTestROPumpDutyCycleOverride( message ); @@ -1204,6 +1232,38 @@ handleTestUVReactorsHealthOverride( message ); break; + case MSG_ID_DG_SET_CALIBRATION_RECORD: + handleSetDGCalibrationRecord( message ); + break; + + case MSG_ID_DG_GET_CALIBRATION_RECORD: + handleGetDGCalibrationRecord( message ); + break; + + case MSG_ID_DG_SET_SYSTEM_RECORD: + handleSetDGSystemRecord( message ); + break; + + case MSG_ID_DG_GET_SYSTEM_RECORD: + handleGetDGSystemRecord( message ); + break; + + case MSG_ID_DG_GET_SERVICE_RECORD: + handleGetDGServiceRecord( message ); + break; + + case MSG_ID_DG_SET_SERVICE_RECORD: + handleSetDGServiceRecord( message ); + break; + + case MSG_ID_DG_GET_SCHEDULED_RUNS_RECORD: + handleGetDGScheduledRunsRecord( message ); + break; + + case MSG_ID_DG_SET_SCHEDULED_RUNS_RECORD: + handleSetDGScheduledRunsRecord( message ); + break; + case MSG_ID_DG_FLUID_LEAK_SEND_INTERVAL_OVERRIDE: handleSetFluidLeakBroadcastIntervalOverrideRequest( message ); break; @@ -1212,6 +1272,10 @@ handleSetFluidLeakStateDetectorOverrideRequest( message ); break; + case MSG_ID_FILTER_FLUSH_TIME_PERIOD_OVERRIDE: + handleFilterFlushTimePeriodOverride(message); + break; + default: // TODO - unrecognized message ID received - ignore break;