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
| Parameter | Description |
|---|---|
| S | Target 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).
GCodex