Allow MAX31865 resistance values configuration (#19695)

This commit is contained in:
Jason Smith 2020-10-11 22:40:39 -07:00 committed by Scott Lahteine
parent d2863466ac
commit fdcd28a0ec
3 changed files with 12 additions and 2 deletions

View File

@ -432,6 +432,12 @@
#define DUMMY_THERMISTOR_998_VALUE 25 #define DUMMY_THERMISTOR_998_VALUE 25
#define DUMMY_THERMISTOR_999_VALUE 100 #define DUMMY_THERMISTOR_999_VALUE 100
// Resistor values when using a MAX31865 (sensor -5)
// Sensor value is typically 100 (PT100) or 1000 (PT1000)
// Calibration value is typically 430 ohm for AdaFruit PT100 modules and 4300 ohm for AdaFruit PT1000 modules.
//#define MAX31865_SENSOR_OHMS 100
//#define MAX31865_CALIBRATION_OHMS 430
// Use temp sensor 1 as a redundant sensor with sensor 0. If the readings // Use temp sensor 1 as a redundant sensor with sensor 0. If the readings
// from the two sensors differ too much the print will be aborted. // from the two sensors differ too much the print will be aborted.
//#define TEMP_SENSOR_1_AS_REDUNDANT //#define TEMP_SENSOR_1_AS_REDUNDANT

View File

@ -1845,6 +1845,10 @@ static_assert(hbm[Z_AXIS] >= 0, "HOMING_BUMP_MM.Z must be greater than or equal
#error "TEMP_SENSOR_1 is required with TEMP_SENSOR_1_AS_REDUNDANT." #error "TEMP_SENSOR_1 is required with TEMP_SENSOR_1_AS_REDUNDANT."
#endif #endif
#if ENABLED(MAX6675_IS_MAX31865) && (!defined(MAX31865_SENSOR_OHMS) || !defined(MAX31865_CALIBRATION_OHMS))
#error "MAX31865_SENSOR_OHMS and MAX31865_CALIBRATION_OHMS must be set in Configuration.h when using a MAX31865 temperature sensor."
#endif
/** /**
* Test Heater, Temp Sensor, and Extruder Pins * Test Heater, Temp Sensor, and Extruder Pins
*/ */

View File

@ -1461,7 +1461,7 @@ void Temperature::manage_heater() {
#elif ENABLED(HEATER_0_USES_MAX6675) #elif ENABLED(HEATER_0_USES_MAX6675)
return ( return (
#if ENABLED(MAX6675_IS_MAX31865) #if ENABLED(MAX6675_IS_MAX31865)
max31865.temperature(100, 400) // 100 ohms = PT100 resistance. 400 ohms = calibration resistor max31865.temperature(MAX31865_SENSOR_OHMS, MAX31865_CALIBRATION_OHMS)
#else #else
raw * 0.25 raw * 0.25
#endif #endif
@ -2236,7 +2236,7 @@ void Temperature::disable_all_heaters() {
next_max6675_ms[hindex] = ms + MAX6675_HEAT_INTERVAL; next_max6675_ms[hindex] = ms + MAX6675_HEAT_INTERVAL;
#if ENABLED(MAX6675_IS_MAX31865) #if ENABLED(MAX6675_IS_MAX31865)
max6675_temp = int(max31865.temperature(100, 400)); // 100 ohms = PT100 resistance. 400 ohms = calibration resistor max6675_temp = int(max31865.temperature(MAX31865_SENSOR_OHMS, MAX31865_CALIBRATION_OHMS));
#endif #endif
// //