Skip to content

Commit 0c772bd

Browse files
committed
✨ M494 FT_MOTION
1 parent a07b7d1 commit 0c772bd

File tree

1 file changed

+100
-0
lines changed

1 file changed

+100
-0
lines changed

_gcode/M494.md

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
---
2+
tag: m0494
3+
title: FT Motion Trajectory Smoothing
4+
brief: Set / get the Fixed Time Motion parameters for Trajectory and Smoothing.
5+
author: thinkyhead
6+
7+
group: motion
8+
requires: FT_MOTION
9+
since: 2.1.3
10+
eeprom: true
11+
12+
codes: [ M494 ]
13+
related: [ M493 ]
14+
15+
parameters:
16+
17+
- tag: T
18+
optional: true
19+
description: Set trajectory generator type
20+
values:
21+
- tag: 0
22+
description: TRAPEZOIDAL
23+
- tag: 1
24+
description: POLY5
25+
- tag: 2
26+
description: POLY6
27+
28+
- tag: O
29+
optional: true
30+
description: |
31+
Set acceleration overshoot for POLY6 (only used when `T=2`).
32+
Allowed range: 1.25 – 1.875.
33+
values:
34+
- type: float
35+
tag: overshoot
36+
37+
- tag: X
38+
optional: true
39+
description: Set smoothing time for the X axis
40+
values:
41+
- type: float
42+
tag: seconds
43+
44+
- tag: Y
45+
optional: true
46+
description: Set smoothing time for the Y axis
47+
values:
48+
- type: float
49+
tag: seconds
50+
51+
- tag: Z
52+
optional: true
53+
description: Set smoothing time for the Z axis
54+
values:
55+
- type: float
56+
tag: seconds
57+
58+
- tag: E
59+
optional: true
60+
description: Set smoothing time for the E axis
61+
values:
62+
- type: float
63+
tag: seconds
64+
65+
examples:
66+
- pre: |
67+
Set the trajectory generator to a 5‑th order polynomial (POLY5) and enable an
68+
acceleration overshoot of 1.50 for the subsequent POLY6 commands.
69+
code: M494 T1 O1.5
70+
71+
- pre: |
72+
Set the smoothing time for XYZ axes to 0.25s while leaving E unchanged.
73+
code: M494 X0.25 Y0.25 Z0.25
74+
75+
- pre: |
76+
Configure the system for a trapezoidal trajectory generator, with a
77+
smoothing time of 0.10s on the X axis and 0.12s on the Y axis.
78+
code: M494 T0 X0.10 Y0.12
79+
80+
- pre: |
81+
Use a 6‑th order polynomial (POLY6) with the maximum overshoot of 1.875,
82+
and set all axis smoothing times to 0.20s.
83+
code: M494 T2 O1.875 X0.20 Y0.20 Z0.20 E0.20
84+
85+
- pre: |
86+
Only change the E‑axis smoothing time to 0.15s, leaving all other
87+
parameters at their defaults.
88+
code: M494 E0.15
89+
90+
- pre: |
91+
Combine a POLY6 generator with an overshoot of 1.30 and individual
92+
smoothing times: X=0.05s, Y=0.07s, Z=0.06s, E=0.04s.
93+
code: M494 T2 O1.3 X0.05 Y0.07 Z0.06 E0.04
94+
---
95+
96+
The `M494` command provides control over the Fixed‑Time Motion trajectory generator, allowing each axis to have its own timing characteristics.
97+
98+
The `T` parameter selects between three generator modes: a simple trapezoidal profile (0), a 5th‑order polynomial (1) that smooths acceleration and deceleration, or a more advanced 6th‑order polynomial (2) that includes an optional acceleration overshoot (`O`) to compensate for system inertia. When `T=2`, the overshoot value may be set between 1.25 and 1.875, giving the printer an additional degree of freedom to maintain speed while preventing jerk.
99+
100+
You can set smoothing times for each of the four motion axes (`X`, `Y`, `Z`, and extruder `E`). These parameters are expressed in seconds and determine how quickly the axis velocity can change, effectively acting as a low‑pass filter on acceleration commands. By adjusting these values the operator can balance responsiveness against mechanical wear, achieving smooth, precise motion for complex prints or high‑speed runs. The command’s optional nature means that any subset of parameters may be specified, with unspecified values left at the firmware defaults.

0 commit comments

Comments
 (0)