Browse Source

Junction Deviation limit (0.01 to 0.3)

Scott Lahteine 7 years ago
parent
commit
20a5db03bb
2 changed files with 10 additions and 2 deletions
  1. 9
    1
      Marlin/src/gcode/config/M200-M205.cpp
  2. 1
    1
      Marlin/src/lcd/ultralcd.cpp

+ 9
- 1
Marlin/src/gcode/config/M200-M205.cpp View File

132
   if (parser.seen('S')) planner.min_feedrate_mm_s = parser.value_linear_units();
132
   if (parser.seen('S')) planner.min_feedrate_mm_s = parser.value_linear_units();
133
   if (parser.seen('T')) planner.min_travel_feedrate_mm_s = parser.value_linear_units();
133
   if (parser.seen('T')) planner.min_travel_feedrate_mm_s = parser.value_linear_units();
134
   #if ENABLED(JUNCTION_DEVIATION)
134
   #if ENABLED(JUNCTION_DEVIATION)
135
-    if (parser.seen('J')) planner.junction_deviation_mm = parser.value_linear_units();
135
+    if (parser.seen('J')) {
136
+      const float junc_dev = parser.value_linear_units();
137
+      if (WITHIN(junc_dev, 0.01, 0.3))
138
+        planner.junction_deviation_mm = junc_dev;
139
+      else {
140
+        SERIAL_ERROR_START();
141
+        SERIAL_ERRORLNPGM("?J out of range (0.01 to 0.3)");
142
+      }
143
+    }
136
   #else
144
   #else
137
     if (parser.seen('X')) planner.max_jerk[X_AXIS] = parser.value_linear_units();
145
     if (parser.seen('X')) planner.max_jerk[X_AXIS] = parser.value_linear_units();
138
     if (parser.seen('Y')) planner.max_jerk[Y_AXIS] = parser.value_linear_units();
146
     if (parser.seen('Y')) planner.max_jerk[Y_AXIS] = parser.value_linear_units();

+ 1
- 1
Marlin/src/lcd/ultralcd.cpp View File

3754
       MENU_BACK(MSG_MOTION);
3754
       MENU_BACK(MSG_MOTION);
3755
 
3755
 
3756
       #if ENABLED(JUNCTION_DEVIATION)
3756
       #if ENABLED(JUNCTION_DEVIATION)
3757
-        MENU_ITEM_EDIT(float3, MSG_JUNCTION_DEVIATION, &planner.junction_deviation_mm, 0, 5);
3757
+        MENU_ITEM_EDIT(float3, MSG_JUNCTION_DEVIATION, &planner.junction_deviation_mm, 0.01, 0.3);
3758
       #else
3758
       #else
3759
         MENU_ITEM_EDIT(float3, MSG_VA_JERK, &planner.max_jerk[A_AXIS], 1, 990);
3759
         MENU_ITEM_EDIT(float3, MSG_VA_JERK, &planner.max_jerk[A_AXIS], 1, 990);
3760
         MENU_ITEM_EDIT(float3, MSG_VB_JERK, &planner.max_jerk[B_AXIS], 1, 990);
3760
         MENU_ITEM_EDIT(float3, MSG_VB_JERK, &planner.max_jerk[B_AXIS], 1, 990);

Loading…
Cancel
Save