Machine Input Shaping (#11202)

* Base IS Machine

* Toggle line

* Rebase

* Intento 1

* Wiki IS

* Flavorized

* Tooltips

* Calibration using the same list

* max

* Reorder JD validation

* Refactor set input shaping

* Calibrations IS

* Default values

* Axis

* Orca comments

* Rename input_shaping_enable to input_shaping_emit

Refactor all references of the input shaping configuration option from 'input_shaping_enable' to 'input_shaping_emit' across the codebase. This improves clarity by better reflecting the option's purpose of controlling whether input shaping commands are emitted in the generated G-code.

Restore DONT EMIT FOR KLIPPER

* Refactor input shaping option toggling logic

Simplifies and consolidates the logic for toggling input shaping related options in TabPrinter::toggle_options(). Uses a loop to handle enabling/disabling lines based on GCode flavor compatibility, and refines the conditions for toggling individual options.

* Improve input shaping option toggling logic in TabPrinter

* GrayOut Emit to gcode limits for klipper

* Typo

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Typo

* Skip Y input-shaper when type is Disable

If marlin2 and disabled it will be already disabled at X.

* IS expert

Co-Authored-By: SoftFever <softfeverever@gmail.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
This commit is contained in:
Ian Bassi
2026-05-11 08:38:40 -03:00
committed by GitHub
parent c8be7fb708
commit ec424fb674
10 changed files with 427 additions and 67 deletions

View File

@@ -362,6 +362,22 @@ enum PrinterStructure {
psDelta
};
enum class InputShaperType : unsigned char {
Default = 0,
MZV,
ZV,
ZVD,
ZVDD,
ZVDDD,
EI,
EI2,
TwoHumpEI,
EI3,
ThreeHumpEI,
DAA,
Disable
};
// BBS
enum ZHopType {
zhtAuto = 0,
@@ -525,6 +541,7 @@ CONFIG_OPTION_ENUM_DECLARE_STATIC_MAPS(BrimType)
CONFIG_OPTION_ENUM_DECLARE_STATIC_MAPS(TimelapseType)
CONFIG_OPTION_ENUM_DECLARE_STATIC_MAPS(BedType)
CONFIG_OPTION_ENUM_DECLARE_STATIC_MAPS(SkirtType)
CONFIG_OPTION_ENUM_DECLARE_STATIC_MAPS(InputShaperType)
CONFIG_OPTION_ENUM_DECLARE_STATIC_MAPS(DraftShield)
CONFIG_OPTION_ENUM_DECLARE_STATIC_MAPS(ForwardCompatibilitySubstitutionRule)
CONFIG_OPTION_ENUM_DECLARE_STATIC_MAPS(GCodeThumbnailsFormat)
@@ -1259,6 +1276,14 @@ PRINT_CONFIG_CLASS_DEFINE(
((ConfigOptionBool, resonance_avoidance))
((ConfigOptionFloat, min_resonance_avoidance_speed))
((ConfigOptionFloat, max_resonance_avoidance_speed))
//Orca: Input shaping
((ConfigOptionBool, input_shaping_emit))
((ConfigOptionEnum<InputShaperType>, input_shaping_type))
((ConfigOptionFloat, input_shaping_freq_x))
((ConfigOptionFloat, input_shaping_freq_y))
((ConfigOptionFloat, input_shaping_damp_x))
((ConfigOptionFloat, input_shaping_damp_y))
)
// This object is mapped to Perl as Slic3r::Config::GCode.