Skip to main content

Temperature, Heating, and Extrusion Errors

This page compiles errors related to temperature sensors, heaters, heat beds, extrusion, and filament runout detection. For temperature protection errors, first verify the hardware and temperature curves; do not bypass the issue by disabling protection.

Error 'XXX mcu' shutdown: ADC out of range

Error Message: ADC out of range, abnormal temperature detection.

Loading...

Cause: Klipper detects a temperature outside the configured range, commonly caused by open or short circuits in the thermistor, wiring errors, incorrect thermistor model configuration, or pin configuration errors.

Note

Temporarily relaxing min_temp and max_temp is for troubleshooting only and should not be a permanent configuration. After confirming the issue, restore safe ranges to avoid disabling temperature protection.

Troubleshooting steps:

Power Off

Before checking thermistors, heater cartridges, heat beds, fuses, SSRs, MOSFETs, or power-related wiring, completely power off the printer and disconnect the power supply. Allow the hot end and heat bed to cool. Do not disassemble the power supply, touch exposed power terminals, or inspect high-voltage heat bed wiring.

  1. Power off and wait for cooling. Check if the thermistor is securely plugged in and if the wiring is broken or shorted.
  2. Verify that the thermistor model and pin configuration match the actual hardware.
  3. If necessary, temporarily relax the temperature range to confirm reading changes, e.g., lower min_temp and raise max_temp.
  4. Once wiring or configuration issues are found and resolved, immediately restore the original safe temperature limits.
  5. Save and restart Klipper.

Related configuration reference: Heating.

Heater not heating at expected rate

Error Message: The heater is not heating up at the expected rate. The log may show Heater extruder not heating at expected rate or Heater heater_bed not heating at expected rate.

Loading...

Common causes:

  • Abnormal output from the heater cartridge, heat bed, SSR, or MOSFET.
  • Poor contact of the thermistor, partially broken wire, or fluctuating readings.
  • Fans blowing directly onto the hot end, heat bed, or heating area, causing slow heating.
  • Insufficient heat bed power or low max_power limit.
  • Inappropriate PID parameters causing large fluctuations near the target temperature.

Solutions:

Power Off

Before checking heaters, thermistors, heat beds, fuses, SSRs, MOSFETs, or power-related wiring, completely power off the printer and disconnect the power supply. Allow the hot end and heat bed to cool. Do not disassemble the power supply, touch exposed terminals, or inspect high-voltage heat bed wiring.

  1. Power off and wait for cooling. Check that the heater and thermistor wiring are secure.
  2. Observe the temperature curve to see if heating is continuous and if there are abnormal fluctuations.
  3. Check if any fans are blowing directly onto the hot end or heat bed.
  4. For issues with SSRs, MOSFETs, power supply capacity, or high-voltage heat beds, general users should prioritize troubleshooting by replacing complete modules, checking web temperature curves, and contacting customer support. Do not disassemble or perform electrical tests.
  5. Once hardware is confirmed normal, re-run PID calibration.
  6. If the issue is simply slow heating due to a large heat bed or special structure, refer to verify_heater optimization.

Related configuration reference: Heating, M109 optimization.

Abnormal Temperature Reading (Displaying 0°C or Continuous Fluctuations)

Error Message: Temperature displayed as 0°C, a negative number, or continuous large fluctuations (±10°C or more).

Common causes:

  • Broken thermistor wire (shows 0 or very low value).
  • Shorted thermistor (shows very high value or triggers ADC out of range).
  • sensor_type configuration does not match the actual thermistor model.
  • PT100 sensor missing the pullup_resistor configuration.
  • Thermocouple signal interference requiring filter_length or thermocouple_max_error configuration.
  • ADC noise interference.

Solutions:

  1. Run QUERY_ADC SENSOR=extruder_temp to see the raw ADC reading.
  2. Run M105 to see the current temperature reading.
  3. Verify that sensor_type matches the hardware. Common types are NTC 100K beta 3950, PT100, MAX31865, etc.
  4. For PT100 sensors, check sensor_pin, rtd_reference_r, and rtd_num_of_wires.
  5. For thermocouples, check thermocouple_max_error. For significant ADC noise, check filter_length.

Related configuration reference: Heating.

MCU shutdown: Verify heater extruder/heater_bed

Error Message: MCU 'mcu' shutdown: Verify heater extruder or Verify heater heater_bed.

Cause: Klipper's built-in verify_heater safety check detects that the heater's temperature change does not meet expectations. This could be due to abnormal heater output, unreliable thermistor readings, SSR response delays, or a large heat bed's heating curve not matching the default detection parameters.

Note

Do not bypass the error by directly disabling the verify_heater function or setting its thresholds to extremely unreasonable values. This removes Klipper's final safety check for heaters and thermistors.

Common scenarios:

  • Large heat bed + SSR: SSR switching response, heat bed thermal mass, and default heating_gain are mismatched.
  • After replacing the heater cartridge, heat bed, or thermistor, the new hardware's thermal characteristics are incompatible with the old PID and validation parameters.
  • Fans blowing directly onto the hot end, causing temperature fluctuations from ambient airflow to exceed the max_error range.
  • Poor contact or loose installation of the thermistor, causing intermittent reading fluctuations.
  • Unstable power supply voltage or insufficient power supply capacity.

Troubleshooting methods:

Power Off

Before checking heaters, thermistors, SSRs, MOSFETs, fuses, or power-related wiring, completely power off the printer and disconnect the power supply. Allow the hot end and heat bed to cool. Do not disassemble the power supply, touch exposed terminals, or inspect high-voltage heat bed wiring.

  1. First, power off and check if the thermistor is securely plugged in and the heater wiring is solid.
  2. Observe the temperature curve in klippy.log before the shutdown. If the curve rises steadily without fluctuations, the parameters are likely too sensitive. If the reading jumps, drops to zero, or spikes rapidly, prioritize resolving hardware issues.
  3. Check the [verify_heater extruder] or [verify_heater heater_bed] configuration section.
  4. After confirming hardware is normal, re-run PID calibration and observe if the error still triggers falsely.
  5. For more detailed parameter explanations and tuning examples, refer to verify_heater optimization.

HOST temperature above maximum temperature

Error Message: HOST temperature xx above maximum temperature or MCU temperature not supported on xxx.

Common causes:

  • The host computer's CPU temperature is too high, exceeding max_temp in [temperature_host].
  • The mainboard MCU's built-in temperature sensor is not supported by the current firmware/chip.
  • Insufficient cooling for the host computer, such as a sealed enclosure, stopped fan, or high ambient temperature.

Solutions:

  1. Check the host computer's heatsink, fan, and case ventilation.
  2. Use vcgencmd measure_temp, sensors, or system monitoring to check CPU temperature.
  3. If only the threshold is set too low, adjust [temperature_host] max_temp appropriately, but do not disable temperature protection.
  4. If the error is MCU temperature not supported, delete or comment out the [temperature_mcu] configuration for the unsupported MCU.

Related configuration reference: Fan reference configuration.

Requested temperature out of range

Error Message: Requested temperature (285.0) out of range (0.0:130.0), Requested temperature (-5.0) out of range (0.0:300.0), Unknown temperature sensor 'xxx', Sensor 'xxx' temperature xxx not in range, Unable to open temperature file 'xxx'.

Common causes:

  • A macro passes the nozzle temperature to the heat bed, or the heat bed temperature to the nozzle, causing the target temperature to exceed the respective heater's range.
  • Inconsistent variable names between the slicer and Klipper macro parameters, resulting in the macro receiving empty values, default values, or incorrect calculation results.
  • Unreasonable min_temp / max_temp settings in [extruder], [heater_bed], or [temperature_sensor].
  • TEMPERATURE_WAIT, SET_HEATER_TEMPERATURE, or temperature-controlled fan commands using a non-existent sensor name.
  • The system temperature file pointed to by [temperature_host] does not exist or is not supported by the current system.

Solutions:

  1. Check the temperature range in the error message to determine if the nozzle, heat bed, mainboard temperature, or host temperature is out of range.
  2. Check the startup macro and slicer parameters to ensure variable names like BED, BED_TEMP, HOTEND, and EXTRUDER_TEMP correspond correctly.
  3. Set reasonable default values for temperature parameters in macros and use |float conversion.
  4. Do not significantly raise max_temp to bypass the error; first confirm the parameters and sensor configuration are correct.
  5. If the error is Unknown temperature sensor, check if the sensor name in the command matches the configuration section name.

Related configuration reference: Heating, Macros introduction.

Extrusion Issues

Extrude below minimum temp

Error Message: Nozzle temperature is below the minimum allowed for extrusion. The log may show Extrude below minimum temp or Extruder not hot enough.

Solutions:

  1. Ensure the nozzle has reached the required temperature for the filament before extruding.
  2. Check startup G-code, M600, PAUSE, RESUME, and other macros for temperature wait commands.
  3. Use M109 or Klipper's equivalent wait commands where needed.
  4. Check the thermistor and temperature curve for stable readings.
  5. It is not recommended to permanently lower min_extrude_temp to bypass this error.

Related configuration reference: M109 optimization, Macros introduction.

Extrude only move too long

Error Message: Extrude only move too long (xxmm vs xxmm).

Solutions:

  1. Check the slicer retraction distance. Do not blindly set very high values even for Bowden remote extruders.
  2. Check if macros for filament change, load, unload, or nozzle wipe have extrude/retract distances that are too long for a single move.
  3. Check if the E-axis state is correct when resuming a print to avoid treating a historical E value as a new relative extrusion distance.
  4. Check if macros correctly use M82 / M83 and G92 E0.
  5. If a long pure extrusion move is genuinely needed, increase max_extrude_only_distance in [extruder] appropriately, but do not use an excessively large value to mask macro state errors.

Related configuration reference: Extruder reference configuration, Macros introduction.

Move exceeds maximum extrusion

Error Message: Move exceeds maximum extrusion (xxmm^2 vs xxmm^2).

Solutions:

  1. Check the slicer for abnormal filament diameter, nozzle diameter, extrusion multiplier, and line width.
  2. Check if startup lines, wipe lines, filament change macros, prime towers, or purge macros are generating abnormally large E values.
  3. Check if the M82 / M83 extrusion mode and G92 E0 in startup/pause/resume macros are consistent with the slicer.
  4. Check nozzle_diameter, filament_diameter, or max_extrude_cross_section in [extruder].
  5. After changing the nozzle diameter, update the Klipper configuration, slicer nozzle size, line width, and extrusion multiplier accordingly.
  6. It is not recommended to significantly increase max_extrude_cross_section directly; first confirm the G-code and slicer parameters are correct.

Related configuration reference: Extruder reference configuration, Machine calibration.

Extrude when no extruder present / Extruder not configured

Error Message: Extrude when no extruder present, Extruder not configured, or Active extruder does not have a stepper.

Solutions:

  1. Verify that the main extruder configuration section is named [extruder].
  2. For multi-extruder or synchronized extrusion scenarios, check [extruder_stepper] and SYNC_EXTRUDER_MOTION.
  3. Check if ACTIVATE_EXTRUDER, T0/T1, or custom switching commands in macros point to valid configuration sections.

Related configuration reference: Extruder reference configuration.

Filament Runout Detection and M600 Filament Change Errors

Error Message: Filament sensor: runout detected, print interruption after M600 macro execution cannot be resumed, or the filament runout sensor is persistently triggered or untriggered.

Solutions:

Power Off

Before checking, plugging/unplugging, or replacing the filament runout sensor wiring, completely power off the printer and disconnect the power supply. Do not plug/unplug sensor modules or rearrange interface wiring while the power is on.

  1. Run QUERY_FILAMENT_SENSOR SENSOR=<sensor name>. Confirm the status is open (or not triggered) when filament is inserted and changes when filament is removed.
  2. If the status never changes, power off and check the sensor wiring, switch_pin, and pull-up configuration.
  3. If false triggers occur frequently during printing, check if the wiring is excessively bent in the cable chain or being pulled by moving axes.
  4. Check the M600 macro logic to ensure the pause, retract, lift, and resume sequences are correct.
  5. In multi-extruder scenarios, ensure that ACTIVATE_EXTRUDER and the runout detection logic affect the same extruder.

Related configuration reference: Macros introduction, Filament runout sensor reference configuration.

Loading...