This code was working, but now all I get is 0.00 for temperature :~ and I am confused about what happened
For these two routines, output is:
x2: 296.78, ReadTemperatureCal: 0.00°C
x3: 0.00 <<---- why is this zero? should be 23.63°C
//---------------------------------------------------------
float ReadTemperatureCal(void) {
// reads calibration factor from EEPROM; float max. -10.0 - +10.0 degree offset range
float Cal;
Cal= EEPROMreadFloat(CAL_EEADDR); // read cal factor
if ((Cal > 10.0) || (Cal < -10.0)) { // if garbage in fresh EEPROM
Cal=0.0; //set to zero
EEPROMwriteFloat(CAL_EEADDR, Cal); // save it;
Serial.println("Reset Cal Factor to 0.0");
}
Serial.print("ReadTemperatureCal: "); Serial.print(Cal,2); Serial.print(0xB0,BYTE); Serial.println("C");
return Cal;
}
//-----------------------------------------------------------
double Thermistor(int RawADC) {
double Temp;
// The coefficients below for 10K @ 25C thermistor from Radio Shack 271-110
//----------------------------------------------------------------
Temp = log(((30720000/RawADC) - 30000)); //30k pulldown
// S-H coefficients
Temp = 1 / (0.00090145879873 + (0.00024921185913 * Temp) + (0.00000020123928 * Temp * Temp * Temp));
Serial.print("x2: "); Serial.print(Temp,2); Serial.print(", ");
Temp = Temp - 273.15 - ReadTemperatureCal(); // Convert Kelvin to Celcius
Serial.print("x3: "); Serial.println(Temp,2);
return Temp;
}
//-----------------------------------------------------------