mirror of
https://github.com/MarlinFirmware/Marlin.git
synced 2025-07-11 16:18:12 +00:00
🚀 ZV Input Shaping (#24797)
This commit is contained in:
parent
f8d7090e30
commit
a460b01c87
15 changed files with 657 additions and 42 deletions
Marlin/src/lcd/menu
|
@ -31,6 +31,7 @@
|
|||
#include "menu_item.h"
|
||||
#include "../../MarlinCore.h"
|
||||
#include "../../module/planner.h"
|
||||
#include "../../module/stepper.h"
|
||||
|
||||
#if DISABLED(NO_VOLUMETRICS)
|
||||
#include "../../gcode/parser.h"
|
||||
|
@ -80,8 +81,6 @@ void menu_backlash();
|
|||
|
||||
#if HAS_MOTOR_CURRENT_PWM
|
||||
|
||||
#include "../../module/stepper.h"
|
||||
|
||||
void menu_pwm() {
|
||||
START_MENU();
|
||||
BACK_ITEM(MSG_ADVANCED_SETTINGS);
|
||||
|
@ -538,6 +537,39 @@ void menu_backlash();
|
|||
END_MENU();
|
||||
}
|
||||
|
||||
#if ENABLED(SHAPING_MENU)
|
||||
|
||||
void menu_advanced_input_shaping() {
|
||||
constexpr float min_frequency = TERN(__AVR__, float(STEPPER_TIMER_RATE) / 2 / 0x10000, 1.0f);
|
||||
|
||||
START_MENU();
|
||||
BACK_ITEM(MSG_ADVANCED_SETTINGS);
|
||||
|
||||
// M593 F Frequency
|
||||
#if HAS_SHAPING_X
|
||||
editable.decimal = stepper.get_shaping_frequency(X_AXIS);
|
||||
EDIT_ITEM_FAST(float61, MSG_SHAPING_X_FREQ, &editable.decimal, min_frequency, 200.0f, []{ stepper.set_shaping_frequency(X_AXIS, editable.decimal); });
|
||||
#endif
|
||||
#if HAS_SHAPING_Y
|
||||
editable.decimal = stepper.get_shaping_frequency(Y_AXIS);
|
||||
EDIT_ITEM_FAST(float61, MSG_SHAPING_Y_FREQ, &editable.decimal, min_frequency, 200.0f, []{ stepper.set_shaping_frequency(Y_AXIS, editable.decimal); });
|
||||
#endif
|
||||
|
||||
// M593 D Damping ratio
|
||||
#if HAS_SHAPING_X
|
||||
editable.decimal = stepper.get_shaping_damping_ratio(X_AXIS);
|
||||
EDIT_ITEM_FAST(float42_52, MSG_SHAPING_X_ZETA, &editable.decimal, 0.0f, 1.0f, []{ stepper.set_shaping_damping_ratio(X_AXIS, editable.decimal); });
|
||||
#endif
|
||||
#if HAS_SHAPING_Y
|
||||
editable.decimal = stepper.get_shaping_damping_ratio(Y_AXIS);
|
||||
EDIT_ITEM_FAST(float42_52, MSG_SHAPING_Y_ZETA, &editable.decimal, 0.0f, 1.0f, []{ stepper.set_shaping_damping_ratio(Y_AXIS, editable.decimal); });
|
||||
#endif
|
||||
|
||||
END_MENU();
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
#if HAS_CLASSIC_JERK
|
||||
|
||||
void menu_advanced_jerk() {
|
||||
|
@ -657,6 +689,11 @@ void menu_advanced_settings() {
|
|||
// M201 - Acceleration items
|
||||
SUBMENU(MSG_ACCELERATION, menu_advanced_acceleration);
|
||||
|
||||
// M593 - Acceleration items
|
||||
#if ENABLED(SHAPING_MENU)
|
||||
SUBMENU(MSG_INPUT_SHAPING, menu_advanced_input_shaping);
|
||||
#endif
|
||||
|
||||
#if HAS_CLASSIC_JERK
|
||||
// M205 - Max Jerk
|
||||
SUBMENU(MSG_JERK, menu_advanced_jerk);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue