Ender 3 Marlin - Incorrect temperature

I've updated to Marlin 2.0.7 when I set up a BLTouch (I've edited configuration.h based on my board model; MKS Robin E3) and now it seems the temperature does not match the display.

Before the update, I was printing with PLA filament at 205 °C and bed at 60 °C without issue. After the update, my prints are full of stringing, so I decided to lower the temperature until 180 °C and now it's fine (everything above 185 °C is stringing). I've tried tuning PID but it wasn't better.

So I assume my printer sees 205 °C but the real nozzle temp is higher.

• You might want to get a not for humans infrared thermometer to measure temperatures. Note: the forehead thermometers have fudge factors to approximate body temperature. Jan 27, 2021 at 16:12
• I added an answer for case if this is just incorrect thermistor types set in Marlin. Use this guide if you forgot to reconfigure it following configuration of previous Marlin version. Jan 27, 2021 at 23:54
• Interesting case study: Ender 3 displaying wrong temperatures for hotend and bed. Jan 28, 2021 at 23:59
• Are you sure the models are sliced identically? Maybe print an older G-code file (adjusted for the BLTouch).
– 0scar
Jul 1, 2021 at 8:25

When you have updated to Marlin, you were supposed to configure it carefully. This is maybe laborious and sometimes difficult procedure, but very important. Basic guidelines are described in Configuring Marlin official guide.

I assume that you obviously did it, at least in some part to enable BLTouch. You should review the Thermal Settings section and update it with valid thermistors types for bed and hotend in Configuration.h:

#define TEMP_SENSOR_0 1
...
#define TEMP_SENSOR_BED 1


The list of available predefined settings (numerical identifiers) is just above these #define macros. The optimistic assumption is that you know that hardware details. Popular value is 1 for EPCOS 100k (older repraps) or NTC 3950 100k, but there are many examples of troubleshooting and advices on Internet. For more exotic temperature sensors you should set value 1000 and specify own details in Configuration_adv.h.

If all these settings are correct, then possibly your thermistor is faulty. There is always a chance of coincidence with some damage unrelated to last upgrades. You can follow these instructions to verify it.

• Yes, I've edited configuration.h based on my board model (mks robin E3). I've tried to use 2.0.6 marlin from mks github but I've still the same issue. Jan 28, 2021 at 17:59
• Hi, it is great that you don't give up and still look for solution. I am not sure why exactly you do try to downgrade Marlin - is this just a blind attempt, or if you have some extra data or infomation? What about thermistor details? Thermistor is not part of mainboard, but separate piece connected with 2 wires to the board. Do you know what thermistors are installed in your printer? What values are set for TEMP_SENSOR_0 and TEMP_SENSOR_BED in your Configuration.h? Jan 28, 2021 at 20:54
• Hi, it was a blind attempt just to see if I missed some paramaters by editing files by myself! I have no idea of my thermistors, I've let default config for both : 1 : 100k thermistor - best choice for EPCOS 100k (4.7k pullup) I still have the creality original board, is there a way I can see what thermistor is set on it firmware? Thanks for helping :) Jan 28, 2021 at 22:00
• No, as far as I knot there is still no possibility to export Marlin configuration (except for EEPROM contents). I tried to google for Ender 3 thermistors and checked few sites: everyone insists that 1 for both is the valid for default Ender 3 configuration. (Btw. I also found an old school G-Code M305, but I'm not sure if experimenting is safe.). I just noticed, that you did not mention anything about wrong bed temp. - is that one ok? Can you swap them for a test? --> see more details here Jan 29, 2021 at 0:28
• One thing to check: if you can deploy the original firmware, backup current EEPROM values for future reference, downgrage, but not reset EEPROM until last step. Check the following: (1) look in LCD main menu for "About Printer" (disabled by default) with "Thermistors" submenu; (2) run G-Code commands M503 and M305 without any parameters (may return something in case there were custom thermistors); then reset to factory (firmware) defaults with M502 and check again M503 and M305. (Note: M305 won't work at all if there was no custom thermistor set in config). Jan 29, 2021 at 7:54