← Open Viewer
GCodexG-Code Guide › M140 Command
M140

M140 — Set Bed Temperature (Non-Blocking)

Category: Temperature  ·  Applies to: 3D Printer, Marlin, Klipper  ·  Updated: May 2026

What is M140?

M140 sets the target heated bed temperature and returns immediately without waiting. It is the non-blocking bed temperature command — use M190 when you need to wait for the bed to reach temperature.

Syntax

M140 [S]

Parameters

ParameterDescription
STarget bed temperature in Celsius. S0 turns off the bed heater.

Examples

M140 S60
↑ Start heating bed to 60°C (PLA) — does NOT wait
M140 S100
↑ Start heating to 100°C for ABS — does NOT wait
M140 S0
↑ Turn off heated bed

Important Notes

  • Always start M140 before M104 or M109 — the bed takes longer to heat than the hotend.
  • PLA: 50–65°C bed. PETG: 70–85°C. ABS: 100–110°C. TPU: 30–60°C.
  • A glass bed takes longer to heat uniformly — add a 2–3 minute dwell (G4) after M190 for best adhesion.
  • M140 S0 in end scripts saves electricity and prevents warping of printed parts as they cool slowly on a warm bed.

Common Mistakes

  • Setting M140 after M109 — hotend is already at temperature and waiting while bed is still cold.
  • Not using a heated bed with ABS — severe warping and layer delamination will occur.
  • Printing immediately after M190 confirms temperature — glass beds need time to equilibrate.

Frequently Asked Questions

Q: What temperature should the bed be for PLA?
PLA typically adheres best at 50–65°C. A common starting point is 60°C. Some matte or rough PLA blends work fine at 50°C, while silk or dual-color PLAs may need 65°C. Too hot causes the first layer to stay soft and deform under the nozzle.
Q: Why does my bed temperature fluctuate?
Bed temperature fluctuation is usually caused by poorly tuned bed PID settings. Run M303 E-1 S60 C8 to auto-tune bed PID, then apply the values with M304 and save with M500. Also check that the bed heater is properly rated for your power supply (typical: 200W at 24V).