Skip to content

Commit c8d5c19

Browse files
thinkyheadPragma8123
authored andcommitted
📝 Thermistor info updates (MarlinFirmware#26202)
1 parent 22f6861 commit c8d5c19

File tree

4 files changed

+161
-150
lines changed

4 files changed

+161
-150
lines changed

Marlin/Configuration.h

+2
Original file line numberDiff line numberDiff line change
@@ -477,6 +477,7 @@
477477
* 13 : 100kΩ Hisens up to 300°C - for "Simple ONE" & "All In ONE" hotend - beta 3950, 1%
478478
* 14 : 100kΩ (R25), 4092K (beta25), 4.7kΩ pull-up, bed thermistor as used in Ender-5 S1
479479
* 15 : 100kΩ Calibrated for JGAurora A5 hotend
480+
* 17 : 100kΩ Dagoma NTC white thermistor
480481
* 18 : 200kΩ ATC Semitec 204GT-2 Dagoma.Fr - MKS_Base_DKU001327
481482
* 22 : 100kΩ GTM32 Pro vB - hotend - 4.7kΩ pullup to 3.3V and 220Ω to analog input
482483
* 23 : 100kΩ GTM32 Pro vB - bed - 4.7kΩ pullup to 3.3v and 220Ω to analog input
@@ -488,6 +489,7 @@
488489
* 68 : PT100 Smplifier board from Dyze Design
489490
* 70 : 100kΩ bq Hephestos 2
490491
* 75 : 100kΩ Generic Silicon Heat Pad with NTC100K MGB18-104F39050L32
492+
* 666 : 200kΩ Einstart S custom thermistor with 10k pullup.
491493
* 2000 : 100kΩ Ultimachine Rambo TDK NTCG104LH104KT1 NTC100K motherboard Thermistor
492494
*
493495
* ================================================================

Marlin/src/lcd/menu/menu_info.cpp

+26-53
Original file line numberDiff line numberDiff line change
@@ -100,113 +100,86 @@ void menu_info_thermistors() {
100100

101101
START_SCREEN();
102102

103+
#define THERM_ITEMS(LBL,HTR,WAT) \
104+
STATIC_ITEM_F(F(LBL ": " THERMISTOR_NAME), SS_INVERT); \
105+
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HTR##_MINTEMP), SS_FULL); \
106+
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HTR##_MAXTEMP), SS_FULL); \
107+
STATIC_ITEM(TERN(WAT, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL) \
108+
103109
#if HAS_EXTRUDERS
104110
#define THERMISTOR_ID TEMP_SENSOR_0
105111
#include "../thermistornames.h"
106-
STATIC_ITEM_F(F(STR_E0 ": " THERMISTOR_NAME), SS_INVERT);
107-
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_0_MINTEMP), SS_FULL);
108-
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_0_MAXTEMP), SS_FULL);
109-
STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL);
112+
#undef THERMISTOR_ID
113+
THERM_ITEMS(STR_E0, HEATER_0, WATCH_HOTENDS);
110114
#endif
111115

112116
#if TEMP_SENSOR_1 != 0
113-
#undef THERMISTOR_ID
114117
#define THERMISTOR_ID TEMP_SENSOR_1
115118
#include "../thermistornames.h"
116-
STATIC_ITEM_F(F(STR_E1 ": " THERMISTOR_NAME), SS_INVERT);
117-
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_1_MINTEMP), SS_FULL);
118-
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_1_MAXTEMP), SS_FULL);
119-
STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL);
119+
THERM_ITEMS(STR_E1, HEATER_1, WATCH_HOTENDS);
120120
#endif
121121

122122
#if TEMP_SENSOR_2 != 0
123-
#undef THERMISTOR_ID
124123
#define THERMISTOR_ID TEMP_SENSOR_2
125124
#include "../thermistornames.h"
126-
STATIC_ITEM_F(F(STR_E2 ": " THERMISTOR_NAME), SS_INVERT);
127-
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_2_MINTEMP), SS_FULL);
128-
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_2_MAXTEMP), SS_FULL);
129-
STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL);
125+
#undef THERMISTOR_ID
126+
THERM_ITEMS(STR_E2, HEATER_2, WATCH_HOTENDS);
130127
#endif
131128

132129
#if TEMP_SENSOR_3 != 0
133-
#undef THERMISTOR_ID
134130
#define THERMISTOR_ID TEMP_SENSOR_3
135131
#include "../thermistornames.h"
136-
STATIC_ITEM_F(F(STR_E3 ": " THERMISTOR_NAME), SS_INVERT);
137-
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_3_MINTEMP), SS_FULL);
138-
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_3_MAXTEMP), SS_FULL);
139-
STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL);
132+
#undef THERMISTOR_ID
133+
THERM_ITEMS(STR_E3, HEATER_3, WATCH_HOTENDS);
140134
#endif
141135

142136
#if TEMP_SENSOR_4 != 0
143-
#undef THERMISTOR_ID
144137
#define THERMISTOR_ID TEMP_SENSOR_4
145138
#include "../thermistornames.h"
146-
STATIC_ITEM_F(F(STR_E4 ": " THERMISTOR_NAME), SS_INVERT);
147-
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_4_MINTEMP), SS_FULL);
148-
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_4_MAXTEMP), SS_FULL);
149-
STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL);
139+
#undef THERMISTOR_ID
140+
THERM_ITEMS(STR_E4, HEATER_4, WATCH_HOTENDS);
150141
#endif
151142

152143
#if TEMP_SENSOR_5 != 0
153-
#undef THERMISTOR_ID
154144
#define THERMISTOR_ID TEMP_SENSOR_5
155145
#include "../thermistornames.h"
156-
STATIC_ITEM_F(F(STR_E5 ": " THERMISTOR_NAME), SS_INVERT);
157-
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_5_MINTEMP), SS_FULL);
158-
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_5_MAXTEMP), SS_FULL);
159-
STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL);
146+
#undef THERMISTOR_ID
147+
THERM_ITEMS(STR_E5, HEATER_5, WATCH_HOTENDS);
160148
#endif
161149

162150
#if TEMP_SENSOR_6 != 0
163-
#undef THERMISTOR_ID
164151
#define THERMISTOR_ID TEMP_SENSOR_6
165152
#include "../thermistornames.h"
166-
STATIC_ITEM_F(F(STR_E6 ": " THERMISTOR_NAME), SS_INVERT);
167-
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_6_MINTEMP), SS_FULL);
168-
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_6_MAXTEMP), SS_FULL);
169-
STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL);
153+
#undef THERMISTOR_ID
154+
THERM_ITEMS(STR_E6, HEATER_6, WATCH_HOTENDS);
170155
#endif
171156

172157
#if TEMP_SENSOR_7 != 0
173-
#undef THERMISTOR_ID
174158
#define THERMISTOR_ID TEMP_SENSOR_7
175159
#include "../thermistornames.h"
176-
STATIC_ITEM_F(F(STR_E7 ": " THERMISTOR_NAME), SS_INVERT);
177-
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(HEATER_7_MINTEMP), SS_FULL);
178-
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(HEATER_7_MAXTEMP), SS_FULL);
179-
STATIC_ITEM(TERN(WATCH_HOTENDS, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL);
160+
#undef THERMISTOR_ID
161+
THERM_ITEMS(STR_E7, HEATER_7, WATCH_HOTENDS);
180162
#endif
181163

182164
#if HAS_HEATED_BED
183165
#undef THERMISTOR_ID
184166
#define THERMISTOR_ID TEMP_SENSOR_BED
185167
#include "../thermistornames.h"
186-
STATIC_ITEM_F(F("BED: " THERMISTOR_NAME), SS_INVERT);
187-
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(BED_MINTEMP), SS_FULL);
188-
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(BED_MAXTEMP), SS_FULL);
189-
STATIC_ITEM(TERN(WATCH_BED, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL);
168+
THERM_ITEMS("BED", BED, WATCH_BED);
190169
#endif
191170

192171
#if HAS_HEATED_CHAMBER
193-
#undef THERMISTOR_ID
194172
#define THERMISTOR_ID TEMP_SENSOR_CHAMBER
195173
#include "../thermistornames.h"
196-
STATIC_ITEM_F(F("CHAM: " THERMISTOR_NAME), SS_INVERT);
197-
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(CHAMBER_MINTEMP), SS_FULL);
198-
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(CHAMBER_MAXTEMP), SS_FULL);
199-
STATIC_ITEM(TERN(WATCH_CHAMBER, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL);
174+
#undef THERMISTOR_ID
175+
THERM_ITEMS("CHAM", CHAMBER, WATCH_CHAMBER);
200176
#endif
201177

202178
#if HAS_COOLER
203-
#undef THERMISTOR_ID
204179
#define THERMISTOR_ID TEMP_SENSOR_COOLER
205180
#include "../thermistornames.h"
206-
STATIC_ITEM_F(F("COOL: " THERMISTOR_NAME), SS_INVERT);
207-
PSTRING_ITEM(MSG_INFO_MIN_TEMP, STRINGIFY(COOLER_MINTEMP), SS_FULL);
208-
PSTRING_ITEM(MSG_INFO_MAX_TEMP, STRINGIFY(COOLER_MAXTEMP), SS_FULL);
209-
STATIC_ITEM(TERN(WATCH_COOLER, MSG_INFO_RUNAWAY_ON, MSG_INFO_RUNAWAY_OFF), SS_FULL);
181+
#undef THERMISTOR_ID
182+
THERM_ITEMS("COOL", COOLER, WATCH_COOLER);
210183
#endif
211184

212185
END_SCREEN();

Marlin/src/lcd/thermistornames.h

+34-22
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,17 @@
3535
#if THERMISTOR_ID == 1000
3636
#define THERMISTOR_NAME "User Parameters"
3737

38-
// Thermcouples
38+
// SPI RTD/Thermocouple Boards
3939
#elif THERMISTOR_ID == -5
4040
#define THERMISTOR_NAME "MAX31865"
41-
#elif THERMISTOR_ID == -4
42-
#define THERMISTOR_NAME "AD8495"
4341
#elif THERMISTOR_ID == -3
4442
#define THERMISTOR_NAME "MAX31855"
4543
#elif THERMISTOR_ID == -2
4644
#define THERMISTOR_NAME "MAX6675"
45+
46+
// Analog Thermocouple Boards
47+
#elif THERMISTOR_ID == -4
48+
#define THERMISTOR_NAME "AD8495"
4749
#elif THERMISTOR_ID == -1
4850
#define THERMISTOR_NAME "AD595"
4951

@@ -94,44 +96,54 @@
9496
#define THERMISTOR_NAME "E3104FXT (alt)"
9597
#elif THERMISTOR_ID == 13
9698
#define THERMISTOR_NAME "Hisens 3950"
99+
#elif THERMISTOR_ID == 14
100+
#define THERMISTOR_NAME "100k Ender-5 S1"
97101
#elif THERMISTOR_ID == 15
98102
#define THERMISTOR_NAME "100k JGAurora A5"
103+
#elif THERMISTOR_ID == 17
104+
#define THERMISTOR_NAME "100k Dagoma NTC"
99105
#elif THERMISTOR_ID == 18
100106
#define THERMISTOR_NAME "ATC Semitec 204GT-2"
101-
#elif THERMISTOR_ID == 20
102-
#define THERMISTOR_NAME "Pt100 UltiMB 5v"
103-
#elif THERMISTOR_ID == 21
104-
#define THERMISTOR_NAME "Pt100 UltiMB 3.3v"
105-
#elif THERMISTOR_ID == 201
106-
#define THERMISTOR_NAME "Pt100 OverLord"
107107
#elif THERMISTOR_ID == 60
108108
#define THERMISTOR_NAME "Makers Tool"
109109
#elif THERMISTOR_ID == 70
110110
#define THERMISTOR_NAME "Hephestos 2"
111111
#elif THERMISTOR_ID == 75
112112
#define THERMISTOR_NAME "MGB18"
113-
#elif THERMISTOR_ID == 99
114-
#define THERMISTOR_NAME "100k with 10k pull-up"
115113

116-
// Modified thermistors
117-
#elif THERMISTOR_ID == 30
118-
#define THERMISTOR_NAME "Kis3d EN AW NTC100K/3950"
114+
// Analog Thermistors - 1kΩ pullup
119115
#elif THERMISTOR_ID == 51
120116
#define THERMISTOR_NAME "EPCOS 1K"
121117
#elif THERMISTOR_ID == 52
122118
#define THERMISTOR_NAME "ATC204GT-2 1K"
123119
#elif THERMISTOR_ID == 55
124120
#define THERMISTOR_NAME "ATC104GT-2 1K"
125-
#elif THERMISTOR_ID == 1047
126-
#define THERMISTOR_NAME "PT1000 4K7"
127-
#elif THERMISTOR_ID == 1022
128-
#define THERMISTOR_NAME "PT1000 2K2"
129-
#elif THERMISTOR_ID == 1010
130-
#define THERMISTOR_NAME "PT1000 1K"
131-
#elif THERMISTOR_ID == 147
132-
#define THERMISTOR_NAME "Pt100 4K7"
121+
122+
// Analog Thermistors - 10kΩ pullup - Atypical
123+
#elif THERMISTOR_ID == 99
124+
#define THERMISTOR_NAME "100k with 10k pull-up"
125+
126+
// Analog RTDs (Pt100/Pt1000)
133127
#elif THERMISTOR_ID == 110
134128
#define THERMISTOR_NAME "Pt100 1K"
129+
#elif THERMISTOR_ID == 147
130+
#define THERMISTOR_NAME "Pt100 4K7"
131+
#elif THERMISTOR_ID == 1010
132+
#define THERMISTOR_NAME "PT1000 1K"
133+
#elif THERMISTOR_ID == 1022
134+
#define THERMISTOR_NAME "PT1000 2K2"
135+
#elif THERMISTOR_ID == 1047
136+
#define THERMISTOR_NAME "PT1000 4K7"
137+
#elif THERMISTOR_ID == 20
138+
#define THERMISTOR_NAME "Pt100 UltiMB 5v"
139+
#elif THERMISTOR_ID == 21
140+
#define THERMISTOR_NAME "Pt100 UltiMB 3.3v"
141+
#elif THERMISTOR_ID == 201
142+
#define THERMISTOR_NAME "Pt100 OverLord"
143+
144+
// Modified thermistors
145+
#elif THERMISTOR_ID == 30
146+
#define THERMISTOR_NAME "Kis3d EN AW NTC100K/3950"
135147
#elif THERMISTOR_ID == 666
136148
#define THERMISTOR_NAME "Einstart S"
137149
#elif THERMISTOR_ID == 2000

0 commit comments

Comments
 (0)