For now (!) don't synchronize in M204 and M205

See if this has any deleterious effect on motion planning by slicers that inser their own jerk and acceleration controls. The problem I see is that these settings can take effect on blocks already in the planner, and the only way around this would be to shadow these settings in planner blocks and use the shadowed settings in the planner.
2.0.x
Scott Lahteine 6 years ago
parent a3923424c7
commit da17f8ad37

@ -97,7 +97,7 @@ void GcodeSuite::M204() {
SERIAL_ECHOLNPAIR(" T", planner.settings.travel_acceleration); SERIAL_ECHOLNPAIR(" T", planner.settings.travel_acceleration);
} }
else { else {
planner.synchronize(); //planner.synchronize();
// 'S' for legacy compatibility. Should NOT BE USED for new development // 'S' for legacy compatibility. Should NOT BE USED for new development
if (parser.seenval('S')) planner.settings.travel_acceleration = planner.settings.acceleration = parser.value_linear_units(); if (parser.seenval('S')) planner.settings.travel_acceleration = planner.settings.acceleration = parser.value_linear_units();
if (parser.seenval('P')) planner.settings.acceleration = parser.value_linear_units(); if (parser.seenval('P')) planner.settings.acceleration = parser.value_linear_units();
@ -131,7 +131,7 @@ void GcodeSuite::M205() {
#endif #endif
if (!parser.seen("BST" J_PARAM XYZE_PARAM)) return; if (!parser.seen("BST" J_PARAM XYZE_PARAM)) return;
planner.synchronize(); //planner.synchronize();
if (parser.seen('B')) planner.settings.min_segment_time_us = parser.value_ulong(); if (parser.seen('B')) planner.settings.min_segment_time_us = parser.value_ulong();
if (parser.seen('S')) planner.settings.min_feedrate_mm_s = parser.value_linear_units(); if (parser.seen('S')) planner.settings.min_feedrate_mm_s = parser.value_linear_units();
if (parser.seen('T')) planner.settings.min_travel_feedrate_mm_s = parser.value_linear_units(); if (parser.seen('T')) planner.settings.min_travel_feedrate_mm_s = parser.value_linear_units();

Loading…
Cancel
Save