Browse Source

Allow MAX31865 resistance values configuration (#19695)

Jason Smith 4 years ago
parent
commit
f4ff6a673f
3 changed files with 12 additions and 2 deletions
  1. 6
    0
      Marlin/Configuration.h
  2. 4
    0
      Marlin/src/inc/SanityCheck.h
  3. 2
    2
      Marlin/src/module/temperature.cpp

+ 6
- 0
Marlin/Configuration.h View File

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

+ 4
- 0
Marlin/src/inc/SanityCheck.h View File

1845
   #error "TEMP_SENSOR_1 is required with TEMP_SENSOR_1_AS_REDUNDANT."
1845
   #error "TEMP_SENSOR_1 is required with TEMP_SENSOR_1_AS_REDUNDANT."
1846
 #endif
1846
 #endif
1847
 
1847
 
1848
+#if ENABLED(MAX6675_IS_MAX31865) && (!defined(MAX31865_SENSOR_OHMS) || !defined(MAX31865_CALIBRATION_OHMS))
1849
+  #error "MAX31865_SENSOR_OHMS and MAX31865_CALIBRATION_OHMS must be set in Configuration.h when using a MAX31865 temperature sensor."
1850
+#endif
1851
+
1848
 /**
1852
 /**
1849
  * Test Heater, Temp Sensor, and Extruder Pins
1853
  * Test Heater, Temp Sensor, and Extruder Pins
1850
  */
1854
  */

+ 2
- 2
Marlin/src/module/temperature.cpp View File

1461
         #elif ENABLED(HEATER_0_USES_MAX6675)
1461
         #elif ENABLED(HEATER_0_USES_MAX6675)
1462
           return (
1462
           return (
1463
             #if ENABLED(MAX6675_IS_MAX31865)
1463
             #if ENABLED(MAX6675_IS_MAX31865)
1464
-              max31865.temperature(100, 400)  // 100 ohms = PT100 resistance. 400 ohms = calibration resistor
1464
+              max31865.temperature(MAX31865_SENSOR_OHMS, MAX31865_CALIBRATION_OHMS)
1465
             #else
1465
             #else
1466
               raw * 0.25
1466
               raw * 0.25
1467
             #endif
1467
             #endif
2236
     next_max6675_ms[hindex] = ms + MAX6675_HEAT_INTERVAL;
2236
     next_max6675_ms[hindex] = ms + MAX6675_HEAT_INTERVAL;
2237
 
2237
 
2238
     #if ENABLED(MAX6675_IS_MAX31865)
2238
     #if ENABLED(MAX6675_IS_MAX31865)
2239
-      max6675_temp = int(max31865.temperature(100, 400)); // 100 ohms = PT100 resistance. 400 ohms = calibration resistor
2239
+      max6675_temp = int(max31865.temperature(MAX31865_SENSOR_OHMS, MAX31865_CALIBRATION_OHMS));
2240
     #endif
2240
     #endif
2241
 
2241
 
2242
     //
2242
     //

Loading…
Cancel
Save