Index: firmware/App/Controllers/Switches.c =================================================================== diff -u -r0803f828b81e046166457564650acf6a9bbd3cc6 -r9df576f7d1962f640d8d8a4b56403431c67a8639 --- firmware/App/Controllers/Switches.c (.../Switches.c) (revision 0803f828b81e046166457564650acf6a9bbd3cc6) +++ firmware/App/Controllers/Switches.c (.../Switches.c) (revision 9df576f7d1962f640d8d8a4b56403431c67a8639) @@ -137,7 +137,7 @@ * @param switchId which is the switch that its status is requested * @return switch status *************************************************************************/ -OPN_CLS_STATE_T getSwitchStatus( SWITCH_T switchId ) +OPN_CLS_STATE_T getSwitchStatus( CAP_T switchId ) { U32 status = 0; Index: firmware/App/Controllers/Switches.h =================================================================== diff -u -r0803f828b81e046166457564650acf6a9bbd3cc6 -r9df576f7d1962f640d8d8a4b56403431c67a8639 --- firmware/App/Controllers/Switches.h (.../Switches.h) (revision 0803f828b81e046166457564650acf6a9bbd3cc6) +++ firmware/App/Controllers/Switches.h (.../Switches.h) (revision 9df576f7d1962f640d8d8a4b56403431c67a8639) @@ -33,12 +33,12 @@ // ********** public definitions ********** /// DG doors and caps enumeration -typedef enum switches_names +typedef enum cap_names { CONCENTRATE_CAP = 0, ///< Concentrate cap DIALYSATE_CAP, ///< Dialysate cap NUM_OF_CAPS ///< Number of caps -} SWITCH_T; +} CAP_T; /// DG doors and caps data publish structure typedef struct @@ -53,7 +53,7 @@ void execSwitches( void ); -OPN_CLS_STATE_T getSwitchStatus( SWITCH_T switchId ); +OPN_CLS_STATE_T getSwitchStatus( CAP_T switchId ); BOOL testSetSwitchesDataPublishIntervalOverride( U32 value ); BOOL testResetSwitchesDataPublishIntervalOverride( void ); Index: firmware/App/DGCommon.h =================================================================== diff -u -rbcb768dd6a13286e028533394916a9f69c9f254f -r9df576f7d1962f640d8d8a4b56403431c67a8639 --- firmware/App/DGCommon.h (.../DGCommon.h) (revision bcb768dd6a13286e028533394916a9f69c9f254f) +++ firmware/App/DGCommon.h (.../DGCommon.h) (revision 9df576f7d1962f640d8d8a4b56403431c67a8639) @@ -39,7 +39,6 @@ #define DISABLE_COND_STATUS_CHECK 1 // Build switch // #define EMC_TEST_BUILD 1 // Build switch - #define DISABLE_RTC_CONFIG 1 // Not needed TODO investigate and remove #include Index: firmware/App/Modes/ModeFill.c =================================================================== diff -u -r0803f828b81e046166457564650acf6a9bbd3cc6 -r9df576f7d1962f640d8d8a4b56403431c67a8639 --- firmware/App/Modes/ModeFill.c (.../ModeFill.c) (revision 0803f828b81e046166457564650acf6a9bbd3cc6) +++ firmware/App/Modes/ModeFill.c (.../ModeFill.c) (revision 9df576f7d1962f640d8d8a4b56403431c67a8639) @@ -330,10 +330,8 @@ { DG_HEATERS_RECORD_T heaterInfo; - // There is no number of NV data to check for the heaters info so it is passed as 0 - U08 numOfNVData2Check = 0; // Get the heaters info from the NV data management. Do not alarm on the status of the data since it has already been checked in NV POST - getNVRecord2Driver( GET_INF_HEATERS_RECORD, (U08*)&heaterInfo, sizeof( DG_HEATERS_RECORD_T ), numOfNVData2Check, ALARM_ID_NO_ALARM ); + getNVRecord2Driver( GET_INF_HEATERS_RECORD, (U08*)&heaterInfo, sizeof( DG_HEATERS_RECORD_T ), 0, ALARM_ID_NO_ALARM ); // If the data in the NV data management was not initialized properly, set it to 0 otherwise, set the average flow rate fillStatus.fillFlowRateAverage = ( heaterInfo.averageFillFlow < NEARLY_ZERO ? 0.0 : heaterInfo.averageFillFlow ); @@ -381,6 +379,10 @@ { volume = getF32OverrideValue( &usedBicarbVolumeML ); } + else + { + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DG_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_CHEMICAL_BOTTLE_SELECTED, bottle ) + } return volume; } @@ -404,6 +406,10 @@ { usedBicarbVolumeML.data = 0.0; } + else + { + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DG_SOFTWARE_FAULT, SW_FAULT_ID_INVALID_CHEMICAL_BOTTLE_SELECTED, bottle ) + } } /*********************************************************************//** Index: firmware/App/Services/AlarmMgmtSWFaults.h =================================================================== diff -u -r867521a9810f2218c34d96164fab614494a63f8d -r9df576f7d1962f640d8d8a4b56403431c67a8639 --- firmware/App/Services/AlarmMgmtSWFaults.h (.../AlarmMgmtSWFaults.h) (revision 867521a9810f2218c34d96164fab614494a63f8d) +++ firmware/App/Services/AlarmMgmtSWFaults.h (.../AlarmMgmtSWFaults.h) (revision 9df576f7d1962f640d8d8a4b56403431c67a8639) @@ -130,6 +130,7 @@ SW_FAULT_ID_SAFETY_SHUTDOWN_INVALID_SELF_TEST_STATE, SW_FAULT_ID_PHANTOM_INTERRUPT, // 100 SW_FAULT_ID_ILLEGAL_MEM_ACCESS, + SW_FAULT_ID_INVALID_CHEMICAL_BOTTLE_SELECTED, NUM_OF_SW_FAULT_IDS } SW_FAULT_ID_T; Index: firmware/App/Services/FPGA.c =================================================================== diff -u -r264d5853c97ab9550878609c9302e87464078734 -r9df576f7d1962f640d8d8a4b56403431c67a8639 --- firmware/App/Services/FPGA.c (.../FPGA.c) (revision 264d5853c97ab9550878609c9302e87464078734) +++ firmware/App/Services/FPGA.c (.../FPGA.c) (revision 9df576f7d1962f640d8d8a4b56403431c67a8639) @@ -743,11 +743,7 @@ SELF_TEST_STATUS_T result; // check FPGA reported correct ID -#ifndef RM46_EVAL_BOARD_TARGET if ( FPGA_EXPECTED_ID == fpgaHeader.fpgaId ) -#else - if ( 1 ) -#endif { // Check FPGA compatibility w/ firmware if ( fpgaHeader.fpgaRevMajor > MIN_DG_FPGA_MAJOR )