77# acceleration profiles that can reduce machine vibration and
88# improve surface finish.
99#
10- # IMPORTANT: S-curve planning is OPTIONAL and DISABLED by default .
10+ # IMPORTANT: S-curve planning is OPTIONAL.
1111# Traditional trapezoidal acceleration is used when:
1212# - PLANNER_TYPE = 0, OR
13- # - MAX_LINEAR_JERK = 0 (or not specified)
13+ # - MAX_LINEAR_JERK = 0
14+ #
15+ # NOTE: If MAX_LINEAR_JERK is not specified, it defaults to 1e9 (1 billion),
16+ # which effectively disables jerk limiting while still using S-curve calculations.
17+ # This produces motion similar to trapezoidal but not identical.
1418#
1519# ========================================================
1620[EMC]
@@ -64,6 +68,8 @@ PLANNER_TYPE = 1
6468# Units: machine-units/second^3 (e.g., mm/s^3 or inch/s^3)
6569#
6670# Setting this to 0 disables S-curve planning regardless of PLANNER_TYPE
71+ # If not specified, defaults to 1e9 (effectively no jerk limiting)
72+ # Maximum allowed value is 1e9 (values above are automatically clamped)
6773#
6874# Recommended starting values (adjust based on your machine):
6975# - Light/rigid machines: 1000-10000
@@ -75,16 +81,7 @@ PLANNER_TYPE = 1
7581#
7682# NOTE: This parameter can be changed at RUNTIME via HAL pin:
7783# ini.traj_max_jerk (allows tuning on-the-fly)
78- MAX_LINEAR_JERK = 1000.0
79-
80- # DEFAULT_LINEAR_JERK: Default jerk for programmed feed moves
81- # Units: machine-units/second^3
82- # Should be <= MAX_LINEAR_JERK
83- # Default: 0.0
84- #
85- # NOTE: This parameter can be changed at RUNTIME via HAL pin:
86- # ini.traj_default_jerk
87- DEFAULT_LINEAR_JERK = 500.0
84+ MAX_LINEAR_JERK = 10000.0
8885
8986# --------------------------------------------------------
9087# Standard TRAJ parameters (still required with S-curve)
@@ -141,91 +138,147 @@ HOME_SEQUENCE = 0
141138#
142139# This should match or be higher than the trajectory jerk
143140# to avoid limiting coordinated motion.
144- MAX_JERK = 1000 .0
141+ MAX_JERK = 10000 .0
145142
146143# MIN_LIMIT = -200.0 #disabled to give more space for testing g-codes
147144# MAX_LIMIT = 200.0 #disabled to give more space for testing g-codes
148145
146+ # ========================================================
147+ # HOMING CONFIGURATION FOR S-CURVE
148+ # ========================================================
149+ # WARNING: When using S-curve motion (PLANNER_TYPE=1), you MUST set
150+ # HOME_SEARCH_VEL and HOME_LATCH_VEL significantly SLOWER than you
151+ # would with trapezoidal motion planning.
152+ #
153+ # S-curve motion requires MORE DISTANCE to decelerate due to the
154+ # jerk-limited acceleration profile. If homing velocities are too
155+ # high, the axis may overshoot and hit hard limits or sensor limits.
156+ #
157+ # RECOMMENDED: Start with 50% or less of the velocities you would
158+ # use with trapezoidal planning, then increase cautiously.
159+ #
160+ # Example homing configuration (adjust for your machine):
161+ # HOME_SEARCH_VEL = 5.0 # Velocity for initial limit switch search
162+ # HOME_LATCH_VEL = 1.0 # Velocity for precise homing (slower)
163+ # HOME_OFFSET = 0.0 # Distance from switch to home position
164+ # HOME_USE_INDEX = NO # Use encoder index pulse for homing
165+ # HOME_IGNORE_LIMITS = NO # Ignore limit switches during homing move
166+ # ========================================================
167+
149168[JOINT_1]
150169TYPE = LINEAR
151170HOME = 0.0
152171MAX_VELOCITY = 300.0
153172MAX_ACCELERATION = 1000.0
154- MAX_JERK = 1000 .0
173+ MAX_JERK = 10000 .0
155174# MIN_LIMIT = -200.0 #disabled to give more space for testing g-codes
156175# MAX_LIMIT = 200.0 #disabled to give more space for testing g-codes
157176HOME_SEQUENCE = 0
158177
178+ # WARNING: S-curve homing requires SLOWER velocities than trapezoidal!
179+ # See JOINT_0 for detailed homing configuration examples.
180+ # HOME_SEARCH_VEL = 5.0
181+ # HOME_LATCH_VEL = 1.0
182+
159183[JOINT_2]
160184TYPE = LINEAR
161185HOME = 0.0
162186MAX_VELOCITY = 200.0
163187MAX_ACCELERATION = 800.0
164- MAX_JERK = 800 .0
188+ MAX_JERK = 10000 .0
165189# MIN_LIMIT = -100.0 #disabled to give more space for testing g-codes
166190# MAX_LIMIT = 100.0 #disabled to give more space for testing g-codes
167191HOME_SEQUENCE = 0
168192
193+ # WARNING: S-curve homing requires SLOWER velocities than trapezoidal!
194+ # See JOINT_0 for detailed homing configuration examples.
195+ # HOME_SEARCH_VEL = 4.0
196+ # HOME_LATCH_VEL = 0.8
197+
169198[JOINT_3]
170199TYPE = ANGULAR
171200HOME = 0.0
172201MAX_VELOCITY = 180.0
173202MAX_ACCELERATION = 600.0
174- MAX_JERK = 600 .0
203+ MAX_JERK = 10000 .0
175204# MIN_LIMIT = -360.0
176205# MAX_LIMIT = 360.0
177206HOME_SEQUENCE = 0
178207
208+ # WARNING: S-curve homing requires SLOWER velocities than trapezoidal!
209+ # HOME_SEARCH_VEL = 3.0
210+ # HOME_LATCH_VEL = 0.6
211+
179212[JOINT_4]
180213TYPE = ANGULAR
181214HOME = 0.0
182215MAX_VELOCITY = 180.0
183216MAX_ACCELERATION = 600.0
184- MAX_JERK = 600 .0
217+ MAX_JERK = 10000 .0
185218# MIN_LIMIT = -360.0
186219# MAX_LIMIT = 360.0
187220HOME_SEQUENCE = 0
188221
222+ # WARNING: S-curve homing requires SLOWER velocities than trapezoidal!
223+ # HOME_SEARCH_VEL = 3.0
224+ # HOME_LATCH_VEL = 0.6
225+
189226[JOINT_5]
190227TYPE = ANGULAR
191228HOME = 0.0
192229MAX_VELOCITY = 180.0
193230MAX_ACCELERATION = 600.0
194- MAX_JERK = 600 .0
231+ MAX_JERK = 10000 .0
195232# MIN_LIMIT = -360.0
196233# MAX_LIMIT = 360.0
197234HOME_SEQUENCE = 0
198235
236+ # WARNING: S-curve homing requires SLOWER velocities than trapezoidal!
237+ # HOME_SEARCH_VEL = 3.0
238+ # HOME_LATCH_VEL = 0.6
239+
199240[JOINT_6]
200241TYPE = LINEAR
201242HOME = 0.0
202243MAX_VELOCITY = 300.0
203244MAX_ACCELERATION = 1000.0
204- MAX_JERK = 1000 .0
245+ MAX_JERK = 10000 .0
205246# MIN_LIMIT = -200.0
206247# MAX_LIMIT = 200.0
207248HOME_SEQUENCE = 0
208249
250+ # WARNING: S-curve homing requires SLOWER velocities than trapezoidal!
251+ # HOME_SEARCH_VEL = 5.0
252+ # HOME_LATCH_VEL = 1.0
253+
209254[JOINT_7]
210255TYPE = LINEAR
211256HOME = 0.0
212257MAX_VELOCITY = 300.0
213258MAX_ACCELERATION = 1000.0
214- MAX_JERK = 1000 .0
259+ MAX_JERK = 10000 .0
215260# MIN_LIMIT = -200.0
216261# MAX_LIMIT = 200.0
217262HOME_SEQUENCE = 0
218263
264+ # WARNING: S-curve homing requires SLOWER velocities than trapezoidal!
265+ # HOME_SEARCH_VEL = 5.0
266+ # HOME_LATCH_VEL = 1.0
267+
219268[JOINT_8]
220269TYPE = LINEAR
221270HOME = 0.0
222271MAX_VELOCITY = 200.0
223272MAX_ACCELERATION = 800.0
224- MAX_JERK = 800 .0
273+ MAX_JERK = 10000 .0
225274# MIN_LIMIT = -100.0
226275# MAX_LIMIT = 100.0
227276HOME_SEQUENCE = 0
228277
278+ # WARNING: S-curve homing requires SLOWER velocities than trapezoidal!
279+ # HOME_SEARCH_VEL = 4.0
280+ # HOME_LATCH_VEL = 0.8
281+
229282# ========================================================
230283# AXIS CONFIGURATION
231284# ========================================================
@@ -239,63 +292,63 @@ MAX_ACCELERATION = 1000.0
239292# MAX_JERK: Maximum jerk for coordinated motion on this axis
240293# Units: machine-units/second^3
241294# Default: 0.0 (disabled)
242- MAX_JERK = 1000 .0
295+ MAX_JERK = 10000 .0
243296
244297[AXIS_Y]
245298# MIN_LIMIT = -200.0 #disabled to give more space for testing g-codes
246299# MAX_LIMIT = 200.0 #disabled to give more space for testing g-codes
247300MAX_VELOCITY = 300.0
248301MAX_ACCELERATION = 1000.0
249- MAX_JERK = 1000 .0
302+ MAX_JERK = 10000 .0
250303
251304[AXIS_Z]
252305# MIN_LIMIT = -100.0 #disabled to give more space for testing g-codes
253306# MAX_LIMIT = 100.0 #disabled to give more space for testing g-codes
254307MAX_VELOCITY = 200.0
255308MAX_ACCELERATION = 800.0
256- MAX_JERK = 800 .0
309+ MAX_JERK = 10000 .0
257310
258311[AXIS_A]
259312# MIN_LIMIT = -360.0
260313# MAX_LIMIT = 360.0
261314MAX_VELOCITY = 180.0
262315MAX_ACCELERATION = 600.0
263- MAX_JERK = 600 .0
316+ MAX_JERK = 10000 .0
264317
265318[AXIS_B]
266319# MIN_LIMIT = -360.0
267320# MAX_LIMIT = 360.0
268321MAX_VELOCITY = 180.0
269322MAX_ACCELERATION = 600.0
270- MAX_JERK = 600 .0
323+ MAX_JERK = 10000 .0
271324
272325[AXIS_C]
273326# MIN_LIMIT = -360.0
274327# MAX_LIMIT = 360.0
275328MAX_VELOCITY = 180.0
276329MAX_ACCELERATION = 600.0
277- MAX_JERK = 600 .0
330+ MAX_JERK = 10000 .0
278331
279332[AXIS_U]
280333# MIN_LIMIT = -200.0
281334# MAX_LIMIT = 200.0
282335MAX_VELOCITY = 300.0
283336MAX_ACCELERATION = 1000.0
284- MAX_JERK = 1000 .0
337+ MAX_JERK = 10000 .0
285338
286339[AXIS_V]
287340# MIN_LIMIT = -200.0
288341# MAX_LIMIT = 200.0
289342MAX_VELOCITY = 300.0
290343MAX_ACCELERATION = 1000.0
291- MAX_JERK = 1000 .0
344+ MAX_JERK = 10000 .0
292345
293346[AXIS_W]
294347# MIN_LIMIT = -100.0
295348# MAX_LIMIT = 100.0
296349MAX_VELOCITY = 200.0
297350MAX_ACCELERATION = 800.0
298- MAX_JERK = 800 .0
351+ MAX_JERK = 10000 .0
299352
300353# ========================================================
301354# TUNING GUIDELINES
0 commit comments