Index: firmware/App/Drivers/ConductivitySensors.c =================================================================== diff -u -r0f40091ff6b022d1afed0ed5b9d76b6bc46295b0 -r43ceadd4e906f44579de2a15d1201c5e7f7024ed --- firmware/App/Drivers/ConductivitySensors.c (.../ConductivitySensors.c) (revision 0f40091ff6b022d1afed0ed5b9d76b6bc46295b0) +++ firmware/App/Drivers/ConductivitySensors.c (.../ConductivitySensors.c) (revision 43ceadd4e906f44579de2a15d1201c5e7f7024ed) @@ -125,7 +125,7 @@ void initConductivitySensors( void ) { /// TODO: Revert back to init state. - currentConductivityState = CONDUCTIVITY_READ_DATA_STATE; + currentConductivityState = CONDUCTIVITY_INIT_STATE; CONDUCTIVITY_SENSORS_T sensor; // Initialize override structures for each conductivity sensor @@ -168,48 +168,19 @@ conductivitySensorStatus[ sensor ].haveAllCalSlotsBeenRead = FALSE; memset( conductivitySensorStatus[ sensor ].hasCalSlotBeenRead, 0 ,sizeof( conductivitySensorStatus[ sensor ].hasCalSlotBeenRead ) ); - // TODO: Remove temp values. Sensors do not have calibrated values. - conductivitySensorCoefficients[ sensor ].K_high = 4.1F; - conductivitySensorCoefficients[ sensor ].alpha_high = 0.02F; - conductivitySensorCoefficients[ sensor ].eta_high = 1.0F; -// conductivitySensorCoefficients[ sensor ].zeta_high = 0.0F; - conductivitySensorCoefficients[ sensor ].K_low = 4.1F; - conductivitySensorCoefficients[ sensor ].alpha_low = 0.02F; - conductivitySensorCoefficients[ sensor ].eta_low = 1.0F; - conductivitySensorCoefficients[ sensor ].zeta_low = -76.4F; - conductivitySensorCoefficients[ sensor ].beta = 0.25F; - conductivitySensorCoefficients[ sensor ].delta = -250.0F; + conductivitySensorCoefficients[ sensor ].K_high = 0.0F; + conductivitySensorCoefficients[ sensor ].alpha_high = 0.0F; + conductivitySensorCoefficients[ sensor ].eta_high = 0.0F; + conductivitySensorCoefficients[ sensor ].zeta_high = 0.0F; + conductivitySensorCoefficients[ sensor ].K_low = 0.0F; + conductivitySensorCoefficients[ sensor ].alpha_low = 0.0F; + conductivitySensorCoefficients[ sensor ].eta_low = 0.0F; + conductivitySensorCoefficients[ sensor ].zeta_low = 0.0F; + conductivitySensorCoefficients[ sensor ].beta = 0.0F; + conductivitySensorCoefficients[ sensor ].delta = 0.0F; conductivitySensorCoefficients[ sensor ].reserved1 = 0.0F; conductivitySensorCoefficients[ sensor ].reserved2 = 0.0F; - // Beta 2 - Unit 04 -// if ( ( P9_COND == sensor ) || ( P18_COND == sensor ) || ( D74_COND == sensor ) ) -// { -// conductivitySensorCoefficients[ sensor ].zeta_high = -6.42F; -// } -// else if ( ( D17_COND == sensor ) || ( D27_COND == sensor ) || ( D29_COND == sensor ) ) -// { -// conductivitySensorCoefficients[ sensor ].zeta_high = -14.4F; -// } -// else -// { -// conductivitySensorCoefficients[ sensor ].zeta_high = -6.65F; -// } - - // Beta 2 - Unit 05 - if ( ( P9_COND == sensor ) || ( P18_COND == sensor ) || ( D74_COND == sensor ) ) - { - conductivitySensorCoefficients[ sensor ].zeta_high = -28.6F; - } - else if ( ( D17_COND == sensor ) || ( D27_COND == sensor ) || ( D29_COND == sensor ) ) - { - conductivitySensorCoefficients[ sensor ].zeta_high = -38.35F; - } - else - { - conductivitySensorCoefficients[ sensor ].zeta_high = -6.65F; - } - memset( conductivitySensorRevisions[ sensor ].swRev, 0, sizeof( U08 ) * CONDUCTIVITY_CAL_CHAR_LENGTH ); memset( conductivitySensorRevisions[ sensor ].hwRev, 0, sizeof( U08 ) * CONDUCTIVITY_CAL_CHAR_LENGTH ); memset( conductivitySensorRevisions[ sensor ].hwSerial, 0, sizeof( U08 ) * CONDUCTIVITY_CAL_CHAR_LENGTH ); @@ -222,6 +193,8 @@ initFPGAPersistentAlarm( FPGA_PERS_ERROR_D29_COND_SENSOR, ALARM_ID_DD_D29_COND_SENSOR_FPGA_FAULT, COND_SENSORS_FPGA_ERROR_TIMEOUT_MS, COND_SENSORS_FPGA_ERROR_TIMEOUT_MS ); initFPGAPersistentAlarm( FPGA_PERS_ERROR_D43_COND_SENSOR, ALARM_ID_DD_D43_COND_SENSOR_FPGA_FAULT, COND_SENSORS_FPGA_ERROR_TIMEOUT_MS, COND_SENSORS_FPGA_ERROR_TIMEOUT_MS ); initFPGAPersistentAlarm( FPGA_PERS_ERROR_D74_COND_SENSOR, ALARM_ID_DD_D74_COND_SENSOR_FPGA_FAULT, COND_SENSORS_FPGA_ERROR_TIMEOUT_MS, COND_SENSORS_FPGA_ERROR_TIMEOUT_MS ); + initFPGAPersistentAlarm( FPGA_PERS_ERROR_P9_COND_SENSOR, ALARM_ID_FP_P9_COND_SENSOR_FPGA_FAULT, COND_SENSORS_FPGA_ERROR_TIMEOUT_MS, COND_SENSORS_FPGA_ERROR_TIMEOUT_MS ); + initFPGAPersistentAlarm( FPGA_PERS_ERROR_P18_COND_SENSOR, ALARM_ID_FP_P18_COND_SENSOR_FPGA_FAULT, COND_SENSORS_FPGA_ERROR_TIMEOUT_MS, COND_SENSORS_FPGA_ERROR_TIMEOUT_MS ); } /*********************************************************************//** @@ -383,57 +356,58 @@ // Check which counter, assign it, and assign read bool to TRUE per sensor for ( sensor = FIRST_DD_COND_SENSOR; sensor < NUM_OF_CONDUCTIVITY_SENSORS; sensor++ ) { - if ( FALSE == conductivitySensorStatus[ sensor ].haveAllCalSlotsBeenRead ) + + if ( FALSE == conductivitySensorStatus[ sensor ].haveAllCalSlotsBeenRead ) { switch( conductivitySensorStatus[ sensor ].calMemCount ) { case CAL_DATA_1: - conductivitySensorCoefficients[ sensor ].K_high = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].K_high, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_1 ] = TRUE; break; case CAL_DATA_2: - conductivitySensorCoefficients[ sensor ].alpha_high = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].alpha_high, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_2 ] = TRUE; break; case CAL_DATA_3: - conductivitySensorCoefficients[ sensor ].eta_high = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].eta_high, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_3 ] = TRUE; break; case CAL_DATA_4: - conductivitySensorCoefficients[ sensor ].zeta_high = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].zeta_high, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_4 ] = TRUE; break; case CAL_DATA_5: - conductivitySensorCoefficients[ sensor ].K_low = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].K_low, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_5 ] = TRUE; break; case CAL_DATA_6: - conductivitySensorCoefficients[ sensor ].alpha_low = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].alpha_low, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_6 ] = TRUE; break; case CAL_DATA_7: - conductivitySensorCoefficients[ sensor ].eta_low = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].eta_low, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_7 ] = TRUE; break; case CAL_DATA_8: - conductivitySensorCoefficients[ sensor ].zeta_low = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].zeta_low, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_8 ] = TRUE; break; case CAL_DATA_9: - conductivitySensorCoefficients[ sensor ].beta = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].beta, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_9 ] = TRUE; break; case CAL_DATA_10: - conductivitySensorCoefficients[ sensor ].delta = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].delta, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_10 ] = TRUE; break; case CAL_DATA_11: - conductivitySensorCoefficients[ sensor ].reserved1 = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].reserved1, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_11 ] = TRUE; break; case CAL_DATA_12: - conductivitySensorCoefficients[ sensor ].reserved2 = (F32)conductivitySensorStatus[ sensor ].calData; + memcpy( &conductivitySensorCoefficients[ sensor ].reserved2, &conductivitySensorStatus[ sensor ].calData, sizeof(U32)); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ CAL_DATA_12 ] = TRUE; break; case SW_REV_LOWER_WORD: @@ -472,6 +446,10 @@ memcpy( ( conductivitySensorRevisions[ sensor ].hwRev + ( LOWER_WORD_SIZE + MID_WORD_SIZE ) ), &conductivitySensorStatus[ sensor ].calData, sizeof( U32 ) ); conductivitySensorStatus[ sensor ].hasCalSlotBeenRead[ HW_SERIAL_UPPER_WORD ] = TRUE; break; + default: + SET_ALARM_WITH_2_U32_DATA( ALARM_ID_DD_SOFTWARE_FAULT, SW_FAULT_ID_CONDUCTIVITY_SENSOR_CAL_CHECK, sensor ) + break; + } // check if we have finished reading all values. conductivitySensorStatus[ sensor ].haveAllCalSlotsBeenRead = monitorCalDataReads( sensor ); @@ -480,21 +458,35 @@ else { - if ( ( getTestConfigStatus( TEST_CONFIG_FP_DISABLE_CONDUCTIVITY_ALARMS ) == TRUE ) && - ( getTestConfigStatus( TEST_CONFIG_DD_DISABLE_CONDUCTIVITY_ALARMS ) == TRUE ) ) + if ( getTestConfigStatus( TEST_CONFIG_DD_FP_DISABLE_CONDUCTIVITY_SENSOR_CHECKS ) == TRUE ) { conductivitySensorStatus[ sensor ].calReadComplete = TRUE; } else { conductivitySensorStatus[ sensor ].calReadComplete = checkConductivityCoefficientRanges( sensor ); - } - if ( TRUE == conductivitySensorStatus[ sensor ].calReadComplete ) - { - calResult = TRUE; + // TODO: this retry should be changed to an alarm or fault once we change the functionality of + // BETA 2.0 test config. This is meant to handle the in-between state of FPGA transitioning + // between 2.0 and non-2.0 data structures. + if ( FALSE == conductivitySensorStatus[ sensor ].calReadComplete ) + { + conductivitySensorStatus[ sensor ].haveAllCalSlotsBeenRead = FALSE; + memset( conductivitySensorStatus[ sensor ].hasCalSlotBeenRead, 0 ,sizeof( conductivitySensorStatus[ sensor ].hasCalSlotBeenRead ) ); + } } } + + // calResult determines if we are done reading calibration data from all sensors. + // each sensor can re-assign it back to false if it is not completely done reading. + if ( TRUE == conductivitySensorStatus[ sensor ].calReadComplete ) + { + calResult = TRUE; + } + else + { + calResult = FALSE; + } } if ( TRUE == calResult ) @@ -625,70 +617,70 @@ CONDUCTIVITY_CAL_IDX_T idx = CAL_DATA_1; // Check data for high and low ranges. - if( ( conductivitySensorCoefficients[ sensorId ].K_high <= CELL_COEFF_HIGH_BOUNDS ) && - ( conductivitySensorCoefficients[ sensorId ].K_high >= CELL_COEFF_LOW_BOUNDS ) ) + if( ( conductivitySensorCoefficients[ sensorId ].K_high > CELL_COEFF_HIGH_BOUNDS ) || + ( conductivitySensorCoefficients[ sensorId ].K_high < CELL_COEFF_LOW_BOUNDS ) ) { result = FALSE; idx = CAL_DATA_1; } - if( ( conductivitySensorCoefficients[ sensorId ].K_low <= CELL_COEFF_HIGH_BOUNDS ) && - ( conductivitySensorCoefficients[ sensorId ].K_low >= CELL_COEFF_LOW_BOUNDS ) ) + if( ( conductivitySensorCoefficients[ sensorId ].K_low > CELL_COEFF_HIGH_BOUNDS ) || + ( conductivitySensorCoefficients[ sensorId ].K_low < CELL_COEFF_LOW_BOUNDS ) ) { result = FALSE; idx = CAL_DATA_2; } - if( ( conductivitySensorCoefficients[ sensorId ].alpha_high <= TEMPERATURE_CORRECTION_HIGH_BOUNDS ) && - ( conductivitySensorCoefficients[ sensorId ].alpha_high >= TEMPERATURE_CORRECTION_LOW_BOUNDS ) ) + if( ( conductivitySensorCoefficients[ sensorId ].alpha_high > TEMPERATURE_CORRECTION_HIGH_BOUNDS ) || + ( conductivitySensorCoefficients[ sensorId ].alpha_high < TEMPERATURE_CORRECTION_LOW_BOUNDS ) ) { result = FALSE; idx = CAL_DATA_3; } - if( ( conductivitySensorCoefficients[ sensorId ].alpha_low <= TEMPERATURE_CORRECTION_HIGH_BOUNDS ) && - ( conductivitySensorCoefficients[ sensorId ].alpha_low >= TEMPERATURE_CORRECTION_LOW_BOUNDS ) ) + if( ( conductivitySensorCoefficients[ sensorId ].alpha_low > TEMPERATURE_CORRECTION_HIGH_BOUNDS ) || + ( conductivitySensorCoefficients[ sensorId ].alpha_low < TEMPERATURE_CORRECTION_LOW_BOUNDS ) ) { result = FALSE; idx = CAL_DATA_4; } - if( ( conductivitySensorCoefficients[ sensorId ].eta_high <= RESISTANCE_SCALE_HIGH_BOUNDS ) && - ( conductivitySensorCoefficients[ sensorId ].eta_high >= RESISTANCE_SCALE_LOW_BOUNDS ) ) + if( ( conductivitySensorCoefficients[ sensorId ].eta_high > RESISTANCE_SCALE_HIGH_BOUNDS ) || + ( conductivitySensorCoefficients[ sensorId ].eta_high < RESISTANCE_SCALE_LOW_BOUNDS ) ) { result = FALSE; idx = CAL_DATA_5; } - if( ( conductivitySensorCoefficients[ sensorId ].eta_low <= RESISTANCE_SCALE_HIGH_BOUNDS ) && - ( conductivitySensorCoefficients[ sensorId ].eta_low >= RESISTANCE_SCALE_LOW_BOUNDS ) ) + if( ( conductivitySensorCoefficients[ sensorId ].eta_low > RESISTANCE_SCALE_HIGH_BOUNDS ) || + ( conductivitySensorCoefficients[ sensorId ].eta_low < RESISTANCE_SCALE_LOW_BOUNDS ) ) { result = FALSE; idx = CAL_DATA_6; } - if( ( conductivitySensorCoefficients[ sensorId ].zeta_high <= RESISTANCE_OFFSET_HIGH_BOUNDS ) && - ( conductivitySensorCoefficients[ sensorId ].zeta_high >= RESISTANCE_OFFSET_LOW_BOUNDS ) ) + if( ( conductivitySensorCoefficients[ sensorId ].zeta_high > RESISTANCE_OFFSET_HIGH_BOUNDS ) || + ( conductivitySensorCoefficients[ sensorId ].zeta_high < RESISTANCE_OFFSET_LOW_BOUNDS ) ) { result = FALSE; idx = CAL_DATA_7; } - if( ( conductivitySensorCoefficients[ sensorId ].zeta_low <= RESISTANCE_OFFSET_HIGH_BOUNDS ) && - ( conductivitySensorCoefficients[ sensorId ].zeta_low >= RESISTANCE_OFFSET_LOW_BOUNDS ) ) + if( ( conductivitySensorCoefficients[ sensorId ].zeta_low > RESISTANCE_OFFSET_HIGH_BOUNDS ) || + ( conductivitySensorCoefficients[ sensorId ].zeta_low < RESISTANCE_OFFSET_LOW_BOUNDS ) ) { result = FALSE; idx = CAL_DATA_8; } - if( ( conductivitySensorCoefficients[ sensorId ].beta <= TEMPERATURE_SCALE_HIGH_BOUNDS ) && - ( conductivitySensorCoefficients[ sensorId ].beta >= TEMPERATURE_SCALE_LOW_BOUNDS ) ) + if( ( conductivitySensorCoefficients[ sensorId ].beta > TEMPERATURE_SCALE_HIGH_BOUNDS ) || + ( conductivitySensorCoefficients[ sensorId ].beta < TEMPERATURE_SCALE_LOW_BOUNDS ) ) { result = FALSE; idx = CAL_DATA_9; } - if( ( conductivitySensorCoefficients[ sensorId ].delta <= TEMPERATURE_OFFSET_HIGH_BOUNDS ) && - ( conductivitySensorCoefficients[ sensorId ].delta >= TEMPERATURE_OFFSET_LOW_BOUNDS ) ) + if( ( conductivitySensorCoefficients[ sensorId ].delta > TEMPERATURE_OFFSET_HIGH_BOUNDS ) || + ( conductivitySensorCoefficients[ sensorId ].delta < TEMPERATURE_OFFSET_LOW_BOUNDS ) ) { result = FALSE; idx = CAL_DATA_10; @@ -1050,5 +1042,48 @@ return result; } +/*********************************************************************//** + * @brief + * The testHandleConductivitySensorVersionRequest function sends + * the conductivity sensor version response + * @details \b Inputs: conductivitySensorRevisions[] + * @details \b Outputs: none + * @param message Override message from Dialin which includes an sensor + * ID. + * @return TRUE if response is successful, FALSE if not + *************************************************************************/ +BOOL testHandleConductivitySensorVersionRequest( MESSAGE_T *message ) +{ + BOOL result = FALSE; + U32 condSensorId = 0; + U32 msgId = 0; + U32 channelId = 0; + if ( message->hdr.payloadLen == sizeof( U32 ) ) + { + CONDUCTIVITY_REVISIONS_T CondVersionRecord; + + memcpy( &condSensorId, &message->payload, sizeof( U32 ) ); + + // Build conductivity version record + if ( condSensorId < LAST_DD_COND_SENSOR ) + { + msgId = MSG_ID_DD_CONDUCTIVITY_SENSOR_VERSION_RESPONSE; + channelId = COMM_BUFFER_OUT_CAN_DD_BROADCAST; + memcpy( &CondVersionRecord, &conductivitySensorRevisions[ condSensorId ], sizeof( CONDUCTIVITY_REVISIONS_T ) ); + + } + else + { + msgId = MSG_ID_FP_CONDUCTIVITY_SENSOR_VERSION_RESPONSE; + channelId = COMM_BUFFER_OUT_CAN_FP_BROADCAST; + memcpy( &CondVersionRecord, &conductivitySensorRevisions[ condSensorId ], sizeof( CONDUCTIVITY_REVISIONS_T ) ); + } + result = sendMessage( (MSG_ID_T)msgId, (COMM_BUFFER_T)channelId, (U08*)&CondVersionRecord, sizeof( CONDUCTIVITY_REVISIONS_T ) ); + + } + + return result; +} + /**@}*/ Index: firmware/App/Drivers/ConductivitySensors.h =================================================================== diff -u -r53eaeea39c88b1894a6b2d7b5c2733fbf037e0da -r43ceadd4e906f44579de2a15d1201c5e7f7024ed --- firmware/App/Drivers/ConductivitySensors.h (.../ConductivitySensors.h) (revision 53eaeea39c88b1894a6b2d7b5c2733fbf037e0da) +++ firmware/App/Drivers/ConductivitySensors.h (.../ConductivitySensors.h) (revision 43ceadd4e906f44579de2a15d1201c5e7f7024ed) @@ -119,6 +119,7 @@ BOOL testFPConductivitySensorConductivityErrorCounterOverride( MESSAGE_T *message ); BOOL testFPConductivitySensorTemperatureReadCounterOverride( MESSAGE_T *message ); BOOL testFPConductivitySensorTemperatureErrorCounterOverride( MESSAGE_T *message ); +BOOL testHandleConductivitySensorVersionRequest( MESSAGE_T *message ); /**@}*/ Index: firmware/App/Monitors/Conductivity.c =================================================================== diff -u -r94a98f376c6c8c3785f05f5a1b19cc1108fe336e -r43ceadd4e906f44579de2a15d1201c5e7f7024ed --- firmware/App/Monitors/Conductivity.c (.../Conductivity.c) (revision 94a98f376c6c8c3785f05f5a1b19cc1108fe336e) +++ firmware/App/Monitors/Conductivity.c (.../Conductivity.c) (revision 43ceadd4e906f44579de2a15d1201c5e7f7024ed) @@ -246,7 +246,15 @@ if ( getTestConfigStatus( TEST_CONFIG_DD_FP_ENABLE_BETA_2_0_HW ) != TRUE ) { - calculatedConductivity = getTeensyConductivityValue( sensor ); + + if ( sensor != D74_COND ) + { + calculatedConductivity = getTeensyConductivityValue( sensor ); + } + else + { + calculatedConductivity = getConductivity( sensor ); + } } else { Index: firmware/App/Monitors/Temperature.c =================================================================== diff -u -r279a41c031010740e5121ea978d8f069a4b7deb7 -r43ceadd4e906f44579de2a15d1201c5e7f7024ed --- firmware/App/Monitors/Temperature.c (.../Temperature.c) (revision 279a41c031010740e5121ea978d8f069a4b7deb7) +++ firmware/App/Monitors/Temperature.c (.../Temperature.c) (revision 43ceadd4e906f44579de2a15d1201c5e7f7024ed) @@ -535,7 +535,7 @@ data.d28CondTemp = getTeensyConductivityTemperatureValue( D27_COND ); data.d30CondTemp = getTeensyConductivityTemperatureValue( D29_COND ); data.d44CondTemp = getTeensyConductivityTemperatureValue( D43_COND ); - data.d75CondTemp = getTeensyConductivityTemperatureValue( D74_COND ); + data.d75CondTemp = getConductivityTemperature( D74_COND ); } else { Index: firmware/App/Services/AlarmMgmtSWFaults.h =================================================================== diff -u -r046bc2b62cf942b7e846fa5bff698b94238edf24 -r43ceadd4e906f44579de2a15d1201c5e7f7024ed --- firmware/App/Services/AlarmMgmtSWFaults.h (.../AlarmMgmtSWFaults.h) (revision 046bc2b62cf942b7e846fa5bff698b94238edf24) +++ firmware/App/Services/AlarmMgmtSWFaults.h (.../AlarmMgmtSWFaults.h) (revision 43ceadd4e906f44579de2a15d1201c5e7f7024ed) @@ -153,6 +153,7 @@ SW_FAULT_ID_BICARB_CHAMBER_FILL_INVALID_EXEC_STATE = 122, SW_FAULT_ID_DRY_BICART_DRAIN_INVALID_EXEC_STATE = 123, SW_FAULT_ID_INVALID_RINSE_PUMP = 124, + SW_FAULT_ID_CONDUCTIVITY_SENSOR_CAL_CHECK = 125, NUM_OF_SW_FAULT_IDS } DD_SW_FAULT_ID_T; Index: firmware/App/Services/Messaging.c =================================================================== diff -u -r299ad7907c4edc6d128e7681573b72f065b8d21e -r43ceadd4e906f44579de2a15d1201c5e7f7024ed --- firmware/App/Services/Messaging.c (.../Messaging.c) (revision 299ad7907c4edc6d128e7681573b72f065b8d21e) +++ firmware/App/Services/Messaging.c (.../Messaging.c) (revision 43ceadd4e906f44579de2a15d1201c5e7f7024ed) @@ -129,7 +129,6 @@ { MSG_ID_DD_PRESSURE_SENSOR_PUBLISH_INTERVAL_OVERRIDE_REQUEST, &testDDPressureSensorDataPublishIntervalOverride }, { MSG_ID_DD_PRESSURE_SENSOR_FILTER_READINGS_OVERRIDE_REQUEST, &testDDPressureSensorFilteredReadingsOverride }, { MSG_ID_DD_PRESSURE_SENSOR_FILTER_TEMPERATURE_OVERRIDE_REQUEST, &testDDPressureSensorFilteredTemperatureReadingsOverride }, - { MSG_ID_DD_CONDUCTIVITY_SENSOR_PUBLISH_INTERVAL_OVERRIDE_REQUEST, &testDDConductivitySensorDataPublishIntervalOverride }, { MSG_ID_FP_CONDUCTIVITY_PUBLISH_INTERVAL_OVERRIDE_REQUEST, &testFPConductivitySensorDataPublishIntervalOverride }, { MSG_ID_DD_CONDUCTIVITY_SENSOR_READINGS_OVERRIDE_REQUEST, &testConductivitySensorReadingsOverride }, @@ -143,7 +142,6 @@ { MSG_ID_DD_CONDUCTIVITY_SENSOR_CONDUCTIVITY_ERROR_COUNTER_OVERRIDE_REQUEST, &testConductivitySensorConductivityErrorCounterOverride }, { MSG_ID_FP_CONDUCTIVITY_SENSOR_CONDUCTIVITY_READ_COUNT_OVERRIDE_REQUEST, &testConductivitySensorConductivityReadCounterOverride }, { MSG_ID_FP_CONDUCTIVITY_SENSOR_CONDUCTIVITY_ERROR_COUNT_OVERRIDE_REQUEST, &testConductivitySensorConductivityErrorCounterOverride }, - { MSG_ID_DD_CONCENTRATE_PUMP_PUBLISH_INTERVAL_OVERRIDE_REQUEST, &testConcentratePumpDataPublishIntervalOverride }, { MSG_ID_DD_CONCENTRATE_PUMP_TARGET_SPEED_OVERRIDE_REQUEST, &testConcentratePumpTargetSpeedOverride }, { MSG_ID_DD_CONCENTRATE_PUMP_MEASURED_SPEED_OVERRIDE_REQUEST, &testConcentratePumpMeasuredSpeedOverride }, @@ -279,6 +277,8 @@ { MSG_ID_FP_DEF_STATUS_REQUEST, &testGetFPDefeaturedStatus }, { MSG_ID_FP_SET_OPERATION_SUB_MODE_REQUEST, &testSetFPOperationSubMode }, { MSG_ID_FP_BOOST_PUMP_INSTALL_STATUS_REQUEST, &testGetFPBoostPumpInstallStatus }, + { MSG_ID_DD_CONDUCTIVITY_SENSOR_VERSION_REQUEST, &testHandleConductivitySensorVersionRequest }, + { MSG_ID_FP_CONDUCTIVITY_SENSOR_VERSION_REQUEST, &testHandleConductivitySensorVersionRequest }, }; /// Calculation for number of entries in the incoming message function handler look-up table.