Index: firmware/App/Controllers/LoadCell.c =================================================================== diff -u -rc2df1e4a1b450f5d83d2d3fc5c671e16c270e5d7 -r078bf48235ba345c57559e412438846f4d5ac9b3 --- firmware/App/Controllers/LoadCell.c (.../LoadCell.c) (revision c2df1e4a1b450f5d83d2d3fc5c671e16c270e5d7) +++ firmware/App/Controllers/LoadCell.c (.../LoadCell.c) (revision 078bf48235ba345c57559e412438846f4d5ac9b3) @@ -202,31 +202,17 @@ // Check if a new calibration is available if ( TRUE == isNewCalibrationRecordAvailable() ) { - F32 reservoir1EmptyWeightG = EMPTY_RESERVOIR_WEIGHT_GRAMS; - F32 reservoir2EmptyWeightG = EMPTY_RESERVOIR_WEIGHT_GRAMS; - getNVRecord2Driver( GET_CAL_RSRVRS_VOL_RECORD, (U08*)&reservoirsCalRecord, sizeof( DG_RESERVOIR_VOLUME_RECORD_T ), NUM_OF_CAL_DATA_RSRVRS, ALARM_ID_DG_RESERVOIRS_INVALID_CAL_RECORD ); getNVRecord2Driver( GET_CAL_LOAD_CELL_SENSORS, (U08*)&loadCellsCalRecord, sizeof( DG_LOAD_CELLS_CAL_RECORD_T ), NUM_OF_CAL_DATA_LOAD_CELLS, ALARM_ID_DG_LOAD_CELLS_INVALID_CAL_RECORD ); - if ( reservoirsCalRecord.reservoir[ CAL_DATA_RSRVR_1 ].rsrvrUnfilledWeight != 0.0F ) - { - // Use the hard coded empty reservoir weight until the cal data is available - reservoir1EmptyWeightG = ( reservoirsCalRecord.reservoir[ CAL_DATA_RSRVR_1 ].rsrvrUnfilledWeight ); - } - - if ( reservoirsCalRecord.reservoir[ CAL_DATA_RSRVR_2 ].rsrvrUnfilledWeight != 0.0F ) - { - reservoir2EmptyWeightG = ( reservoirsCalRecord.reservoir[ CAL_DATA_RSRVR_2 ].rsrvrUnfilledWeight ); - } - - // Zero the current tare values when new calibration data is available - loadcells[ LOAD_CELL_RESERVOIR_1_PRIMARY ].autoCalOffset = reservoir1EmptyWeightG; - loadcells[ LOAD_CELL_RESERVOIR_1_BACKUP ].autoCalOffset = reservoir1EmptyWeightG; - loadcells[ LOAD_CELL_RESERVOIR_2_PRIMARY ].autoCalOffset = reservoir2EmptyWeightG; - loadcells[ LOAD_CELL_RESERVOIR_2_BACKUP ].autoCalOffset = reservoir2EmptyWeightG; + // Set the current tare values when the values are received from the cal record + loadcells[ LOAD_CELL_RESERVOIR_1_PRIMARY ].autoCalOffset = reservoirsCalRecord.reservoir[ CAL_DATA_RSRVR_1 ].rsrvrUnfilledWeight; + loadcells[ LOAD_CELL_RESERVOIR_1_BACKUP ].autoCalOffset = reservoirsCalRecord.reservoir[ CAL_DATA_RSRVR_1 ].rsrvrUnfilledWeight; + loadcells[ LOAD_CELL_RESERVOIR_2_PRIMARY ].autoCalOffset = reservoirsCalRecord.reservoir[ CAL_DATA_RSRVR_2 ].rsrvrUnfilledWeight; + loadcells[ LOAD_CELL_RESERVOIR_2_BACKUP ].autoCalOffset = reservoirsCalRecord.reservoir[ CAL_DATA_RSRVR_2 ].rsrvrUnfilledWeight; } // Rolling average of last 100 raw samples in small filter