|
@@ -176,10 +176,13 @@ uint16_t max_display_update_time = 0;
|
176
|
176
|
void lcd_move_menu();
|
177
|
177
|
void lcd_control_menu();
|
178
|
178
|
void lcd_control_temperature_menu();
|
179
|
|
- void lcd_control_temperature_preheat_material1_settings_menu();
|
180
|
|
- void lcd_control_temperature_preheat_material2_settings_menu();
|
181
|
179
|
void lcd_control_motion_menu();
|
182
|
180
|
|
|
181
|
+ #if DISABLED(SLIM_LCD_MENUS)
|
|
182
|
+ void lcd_control_temperature_preheat_material1_settings_menu();
|
|
183
|
+ void lcd_control_temperature_preheat_material2_settings_menu();
|
|
184
|
+ #endif
|
|
185
|
+
|
183
|
186
|
#if DISABLED(NO_VOLUMETRICS)
|
184
|
187
|
void lcd_control_filament_menu();
|
185
|
188
|
#endif
|
|
@@ -2627,7 +2630,7 @@ void kill_screen(const char* lcd_msg) {
|
2627
|
2630
|
lcd_bed_leveling
|
2628
|
2631
|
#endif
|
2629
|
2632
|
);
|
2630
|
|
- #elif PLANNER_LEVELING && DISABLED(PROBE_MANUALLY)
|
|
2633
|
+ #elif PLANNER_LEVELING && DISABLED(PROBE_MANUALLY) && DISABLED(SLIM_LCD_MENUS)
|
2631
|
2634
|
MENU_ITEM(gcode, MSG_BED_LEVELING, PSTR("G28\nG29"));
|
2632
|
2635
|
#endif
|
2633
|
2636
|
|
|
@@ -2636,7 +2639,7 @@ void kill_screen(const char* lcd_msg) {
|
2636
|
2639
|
MENU_ITEM(function, MSG_LEVEL_CORNERS, _lcd_level_bed_corners);
|
2637
|
2640
|
#endif
|
2638
|
2641
|
|
2639
|
|
- #if HAS_M206_COMMAND
|
|
2642
|
+ #if HAS_M206_COMMAND && DISABLED(SLIM_LCD_MENUS)
|
2640
|
2643
|
//
|
2641
|
2644
|
// Set Home Offsets
|
2642
|
2645
|
//
|
|
@@ -3250,8 +3253,10 @@ void kill_screen(const char* lcd_msg) {
|
3250
|
3253
|
MENU_ITEM(function, MSG_STORE_EEPROM, lcd_store_settings);
|
3251
|
3254
|
MENU_ITEM(function, MSG_LOAD_EEPROM, lcd_load_settings);
|
3252
|
3255
|
#endif
|
|
3256
|
+
|
3253
|
3257
|
MENU_ITEM(function, MSG_RESTORE_FAILSAFE, lcd_factory_settings);
|
3254
|
|
- #if ENABLED(EEPROM_SETTINGS)
|
|
3258
|
+
|
|
3259
|
+ #if ENABLED(EEPROM_SETTINGS) && DISABLED(SLIM_LCD_MENUS)
|
3255
|
3260
|
MENU_ITEM(submenu, MSG_INIT_EEPROM, lcd_init_eeprom_confirm);
|
3256
|
3261
|
#endif
|
3257
|
3262
|
|
|
@@ -3463,228 +3468,234 @@ void kill_screen(const char* lcd_msg) {
|
3463
|
3468
|
|
3464
|
3469
|
#endif // PIDTEMP
|
3465
|
3470
|
|
3466
|
|
- //
|
3467
|
|
- // Preheat Material 1 conf
|
3468
|
|
- //
|
3469
|
|
- MENU_ITEM(submenu, MSG_PREHEAT_1_SETTINGS, lcd_control_temperature_preheat_material1_settings_menu);
|
3470
|
|
-
|
3471
|
|
- //
|
3472
|
|
- // Preheat Material 2 conf
|
3473
|
|
- //
|
3474
|
|
- MENU_ITEM(submenu, MSG_PREHEAT_2_SETTINGS, lcd_control_temperature_preheat_material2_settings_menu);
|
3475
|
|
- END_MENU();
|
3476
|
|
- }
|
|
3471
|
+ #if DISABLED(SLIM_LCD_MENUS)
|
|
3472
|
+ //
|
|
3473
|
+ // Preheat Material 1 conf
|
|
3474
|
+ //
|
|
3475
|
+ MENU_ITEM(submenu, MSG_PREHEAT_1_SETTINGS, lcd_control_temperature_preheat_material1_settings_menu);
|
3477
|
3476
|
|
3478
|
|
- void _lcd_control_temperature_preheat_settings_menu(uint8_t material) {
|
3479
|
|
- #if HOTENDS > 4
|
3480
|
|
- #define MINTEMP_ALL MIN5(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP, HEATER_3_MINTEMP, HEATER_4_MINTEMP)
|
3481
|
|
- #define MAXTEMP_ALL MAX5(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP, HEATER_4_MAXTEMP)
|
3482
|
|
- #elif HOTENDS > 3
|
3483
|
|
- #define MINTEMP_ALL MIN4(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP, HEATER_3_MINTEMP)
|
3484
|
|
- #define MAXTEMP_ALL MAX4(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP)
|
3485
|
|
- #elif HOTENDS > 2
|
3486
|
|
- #define MINTEMP_ALL MIN3(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP)
|
3487
|
|
- #define MAXTEMP_ALL MAX3(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP)
|
3488
|
|
- #elif HOTENDS > 1
|
3489
|
|
- #define MINTEMP_ALL min(HEATER_0_MINTEMP, HEATER_1_MINTEMP)
|
3490
|
|
- #define MAXTEMP_ALL max(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP)
|
3491
|
|
- #else
|
3492
|
|
- #define MINTEMP_ALL HEATER_0_MINTEMP
|
3493
|
|
- #define MAXTEMP_ALL HEATER_0_MAXTEMP
|
3494
|
|
- #endif
|
3495
|
|
- START_MENU();
|
3496
|
|
- MENU_BACK(MSG_TEMPERATURE);
|
3497
|
|
- MENU_ITEM_EDIT(int3, MSG_FAN_SPEED, &lcd_preheat_fan_speed[material], 0, 255);
|
3498
|
|
- #if TEMP_SENSOR_0 != 0
|
3499
|
|
- MENU_ITEM_EDIT(int3, MSG_NOZZLE, &lcd_preheat_hotend_temp[material], MINTEMP_ALL, MAXTEMP_ALL - 15);
|
3500
|
|
- #endif
|
3501
|
|
- #if TEMP_SENSOR_BED != 0
|
3502
|
|
- MENU_ITEM_EDIT(int3, MSG_BED, &lcd_preheat_bed_temp[material], BED_MINTEMP, BED_MAXTEMP - 15);
|
3503
|
|
- #endif
|
3504
|
|
- #if ENABLED(EEPROM_SETTINGS)
|
3505
|
|
- MENU_ITEM(function, MSG_STORE_EEPROM, lcd_store_settings);
|
|
3477
|
+ //
|
|
3478
|
+ // Preheat Material 2 conf
|
|
3479
|
+ //
|
|
3480
|
+ MENU_ITEM(submenu, MSG_PREHEAT_2_SETTINGS, lcd_control_temperature_preheat_material2_settings_menu);
|
3506
|
3481
|
#endif
|
|
3482
|
+
|
3507
|
3483
|
END_MENU();
|
3508
|
3484
|
}
|
3509
|
3485
|
|
3510
|
|
- /**
|
3511
|
|
- *
|
3512
|
|
- * "Temperature" > "Preheat Material 1 conf" submenu
|
3513
|
|
- *
|
3514
|
|
- */
|
3515
|
|
- void lcd_control_temperature_preheat_material1_settings_menu() { _lcd_control_temperature_preheat_settings_menu(0); }
|
3516
|
|
-
|
3517
|
|
- /**
|
3518
|
|
- *
|
3519
|
|
- * "Temperature" > "Preheat Material 2 conf" submenu
|
3520
|
|
- *
|
3521
|
|
- */
|
3522
|
|
- void lcd_control_temperature_preheat_material2_settings_menu() { _lcd_control_temperature_preheat_settings_menu(1); }
|
3523
|
|
-
|
3524
|
|
-
|
3525
|
|
- /**
|
3526
|
|
- *
|
3527
|
|
- * "Control" > "Motion" submenu
|
3528
|
|
- *
|
3529
|
|
- */
|
3530
|
|
-
|
3531
|
|
- void _reset_acceleration_rates() { planner.reset_acceleration_rates(); }
|
3532
|
|
- #if ENABLED(DISTINCT_E_FACTORS)
|
3533
|
|
- void _reset_e_acceleration_rate(const uint8_t e) { if (e == active_extruder) _reset_acceleration_rates(); }
|
3534
|
|
- void _reset_e0_acceleration_rate() { _reset_e_acceleration_rate(0); }
|
3535
|
|
- void _reset_e1_acceleration_rate() { _reset_e_acceleration_rate(1); }
|
3536
|
|
- #if E_STEPPERS > 2
|
3537
|
|
- void _reset_e2_acceleration_rate() { _reset_e_acceleration_rate(2); }
|
3538
|
|
- #if E_STEPPERS > 3
|
3539
|
|
- void _reset_e3_acceleration_rate() { _reset_e_acceleration_rate(3); }
|
3540
|
|
- #if E_STEPPERS > 4
|
3541
|
|
- void _reset_e4_acceleration_rate() { _reset_e_acceleration_rate(4); }
|
3542
|
|
- #endif // E_STEPPERS > 4
|
3543
|
|
- #endif // E_STEPPERS > 3
|
3544
|
|
- #endif // E_STEPPERS > 2
|
3545
|
|
- #endif
|
3546
|
|
-
|
3547
|
|
- void _planner_refresh_positioning() { planner.refresh_positioning(); }
|
3548
|
|
- #if ENABLED(DISTINCT_E_FACTORS)
|
3549
|
|
- void _planner_refresh_e_positioning(const uint8_t e) {
|
3550
|
|
- if (e == active_extruder)
|
3551
|
|
- _planner_refresh_positioning();
|
3552
|
|
- else
|
3553
|
|
- planner.steps_to_mm[E_AXIS + e] = 1.0 / planner.axis_steps_per_mm[E_AXIS + e];
|
3554
|
|
- }
|
3555
|
|
- void _planner_refresh_e0_positioning() { _planner_refresh_e_positioning(0); }
|
3556
|
|
- void _planner_refresh_e1_positioning() { _planner_refresh_e_positioning(1); }
|
3557
|
|
- #if E_STEPPERS > 2
|
3558
|
|
- void _planner_refresh_e2_positioning() { _planner_refresh_e_positioning(2); }
|
3559
|
|
- #if E_STEPPERS > 3
|
3560
|
|
- void _planner_refresh_e3_positioning() { _planner_refresh_e_positioning(3); }
|
3561
|
|
- #if E_STEPPERS > 4
|
3562
|
|
- void _planner_refresh_e4_positioning() { _planner_refresh_e_positioning(4); }
|
3563
|
|
- #endif // E_STEPPERS > 4
|
3564
|
|
- #endif // E_STEPPERS > 3
|
3565
|
|
- #endif // E_STEPPERS > 2
|
3566
|
|
- #endif
|
|
3486
|
+ #if DISABLED(SLIM_LCD_MENUS)
|
|
3487
|
+
|
|
3488
|
+ void _lcd_control_temperature_preheat_settings_menu(uint8_t material) {
|
|
3489
|
+ #if HOTENDS > 4
|
|
3490
|
+ #define MINTEMP_ALL MIN5(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP, HEATER_3_MINTEMP, HEATER_4_MINTEMP)
|
|
3491
|
+ #define MAXTEMP_ALL MAX5(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP, HEATER_4_MAXTEMP)
|
|
3492
|
+ #elif HOTENDS > 3
|
|
3493
|
+ #define MINTEMP_ALL MIN4(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP, HEATER_3_MINTEMP)
|
|
3494
|
+ #define MAXTEMP_ALL MAX4(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP, HEATER_3_MAXTEMP)
|
|
3495
|
+ #elif HOTENDS > 2
|
|
3496
|
+ #define MINTEMP_ALL MIN3(HEATER_0_MINTEMP, HEATER_1_MINTEMP, HEATER_2_MINTEMP)
|
|
3497
|
+ #define MAXTEMP_ALL MAX3(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP, HEATER_2_MAXTEMP)
|
|
3498
|
+ #elif HOTENDS > 1
|
|
3499
|
+ #define MINTEMP_ALL min(HEATER_0_MINTEMP, HEATER_1_MINTEMP)
|
|
3500
|
+ #define MAXTEMP_ALL max(HEATER_0_MAXTEMP, HEATER_1_MAXTEMP)
|
|
3501
|
+ #else
|
|
3502
|
+ #define MINTEMP_ALL HEATER_0_MINTEMP
|
|
3503
|
+ #define MAXTEMP_ALL HEATER_0_MAXTEMP
|
|
3504
|
+ #endif
|
|
3505
|
+ START_MENU();
|
|
3506
|
+ MENU_BACK(MSG_TEMPERATURE);
|
|
3507
|
+ MENU_ITEM_EDIT(int3, MSG_FAN_SPEED, &lcd_preheat_fan_speed[material], 0, 255);
|
|
3508
|
+ #if TEMP_SENSOR_0 != 0
|
|
3509
|
+ MENU_ITEM_EDIT(int3, MSG_NOZZLE, &lcd_preheat_hotend_temp[material], MINTEMP_ALL, MAXTEMP_ALL - 15);
|
|
3510
|
+ #endif
|
|
3511
|
+ #if TEMP_SENSOR_BED != 0
|
|
3512
|
+ MENU_ITEM_EDIT(int3, MSG_BED, &lcd_preheat_bed_temp[material], BED_MINTEMP, BED_MAXTEMP - 15);
|
|
3513
|
+ #endif
|
|
3514
|
+ #if ENABLED(EEPROM_SETTINGS)
|
|
3515
|
+ MENU_ITEM(function, MSG_STORE_EEPROM, lcd_store_settings);
|
|
3516
|
+ #endif
|
|
3517
|
+ END_MENU();
|
|
3518
|
+ }
|
3567
|
3519
|
|
3568
|
|
- // M203 / M205 Velocity options
|
3569
|
|
- void lcd_control_motion_velocity_menu() {
|
3570
|
|
- START_MENU();
|
3571
|
|
- MENU_BACK(MSG_MOTION);
|
|
3520
|
+ /**
|
|
3521
|
+ *
|
|
3522
|
+ * "Temperature" > "Preheat Material 1 conf" submenu
|
|
3523
|
+ *
|
|
3524
|
+ */
|
|
3525
|
+ void lcd_control_temperature_preheat_material1_settings_menu() { _lcd_control_temperature_preheat_settings_menu(0); }
|
3572
|
3526
|
|
3573
|
|
- // M203 Max Feedrate
|
3574
|
|
- MENU_ITEM_EDIT(float3, MSG_VMAX MSG_X, &planner.max_feedrate_mm_s[X_AXIS], 1, 999);
|
3575
|
|
- MENU_ITEM_EDIT(float3, MSG_VMAX MSG_Y, &planner.max_feedrate_mm_s[Y_AXIS], 1, 999);
|
3576
|
|
- MENU_ITEM_EDIT(float3, MSG_VMAX MSG_Z, &planner.max_feedrate_mm_s[Z_AXIS], 1, 999);
|
|
3527
|
+ /**
|
|
3528
|
+ *
|
|
3529
|
+ * "Temperature" > "Preheat Material 2 conf" submenu
|
|
3530
|
+ *
|
|
3531
|
+ */
|
|
3532
|
+ void lcd_control_temperature_preheat_material2_settings_menu() { _lcd_control_temperature_preheat_settings_menu(1); }
|
3577
|
3533
|
|
|
3534
|
+ void _reset_acceleration_rates() { planner.reset_acceleration_rates(); }
|
3578
|
3535
|
#if ENABLED(DISTINCT_E_FACTORS)
|
3579
|
|
- MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E, &planner.max_feedrate_mm_s[E_AXIS + active_extruder], 1, 999);
|
3580
|
|
- MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E1, &planner.max_feedrate_mm_s[E_AXIS], 1, 999);
|
3581
|
|
- MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E2, &planner.max_feedrate_mm_s[E_AXIS + 1], 1, 999);
|
|
3536
|
+ void _reset_e_acceleration_rate(const uint8_t e) { if (e == active_extruder) _reset_acceleration_rates(); }
|
|
3537
|
+ void _reset_e0_acceleration_rate() { _reset_e_acceleration_rate(0); }
|
|
3538
|
+ void _reset_e1_acceleration_rate() { _reset_e_acceleration_rate(1); }
|
3582
|
3539
|
#if E_STEPPERS > 2
|
3583
|
|
- MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E3, &planner.max_feedrate_mm_s[E_AXIS + 2], 1, 999);
|
|
3540
|
+ void _reset_e2_acceleration_rate() { _reset_e_acceleration_rate(2); }
|
3584
|
3541
|
#if E_STEPPERS > 3
|
3585
|
|
- MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E4, &planner.max_feedrate_mm_s[E_AXIS + 3], 1, 999);
|
|
3542
|
+ void _reset_e3_acceleration_rate() { _reset_e_acceleration_rate(3); }
|
3586
|
3543
|
#if E_STEPPERS > 4
|
3587
|
|
- MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E5, &planner.max_feedrate_mm_s[E_AXIS + 4], 1, 999);
|
|
3544
|
+ void _reset_e4_acceleration_rate() { _reset_e_acceleration_rate(4); }
|
3588
|
3545
|
#endif // E_STEPPERS > 4
|
3589
|
3546
|
#endif // E_STEPPERS > 3
|
3590
|
3547
|
#endif // E_STEPPERS > 2
|
3591
|
|
- #else
|
3592
|
|
- MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E, &planner.max_feedrate_mm_s[E_AXIS], 1, 999);
|
3593
|
3548
|
#endif
|
3594
|
3549
|
|
3595
|
|
- // M205 S Min Feedrate
|
3596
|
|
- MENU_ITEM_EDIT(float3, MSG_VMIN, &planner.min_feedrate_mm_s, 0, 999);
|
3597
|
|
-
|
3598
|
|
- // M205 T Min Travel Feedrate
|
3599
|
|
- MENU_ITEM_EDIT(float3, MSG_VTRAV_MIN, &planner.min_travel_feedrate_mm_s, 0, 999);
|
3600
|
|
-
|
3601
|
|
- END_MENU();
|
3602
|
|
- }
|
3603
|
|
-
|
3604
|
|
- // M201 / M204 Accelerations
|
3605
|
|
- void lcd_control_motion_acceleration_menu() {
|
3606
|
|
- START_MENU();
|
3607
|
|
- MENU_BACK(MSG_MOTION);
|
3608
|
|
-
|
3609
|
|
- // M204 P Acceleration
|
3610
|
|
- MENU_ITEM_EDIT(float5, MSG_ACC, &planner.acceleration, 10, 99000);
|
3611
|
|
-
|
3612
|
|
- // M204 R Retract Acceleration
|
3613
|
|
- MENU_ITEM_EDIT(float5, MSG_A_RETRACT, &planner.retract_acceleration, 100, 99000);
|
3614
|
|
-
|
3615
|
|
- // M204 T Travel Acceleration
|
3616
|
|
- MENU_ITEM_EDIT(float5, MSG_A_TRAVEL, &planner.travel_acceleration, 100, 99000);
|
3617
|
|
-
|
3618
|
|
- // M201 settings
|
3619
|
|
- MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_X, &planner.max_acceleration_mm_per_s2[X_AXIS], 100, 99000, _reset_acceleration_rates);
|
3620
|
|
- MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_Y, &planner.max_acceleration_mm_per_s2[Y_AXIS], 100, 99000, _reset_acceleration_rates);
|
3621
|
|
- MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_Z, &planner.max_acceleration_mm_per_s2[Z_AXIS], 10, 99000, _reset_acceleration_rates);
|
3622
|
|
-
|
|
3550
|
+ void _planner_refresh_positioning() { planner.refresh_positioning(); }
|
3623
|
3551
|
#if ENABLED(DISTINCT_E_FACTORS)
|
3624
|
|
- MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E, &planner.max_acceleration_mm_per_s2[E_AXIS + active_extruder], 100, 99000, _reset_acceleration_rates);
|
3625
|
|
- MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E1, &planner.max_acceleration_mm_per_s2[E_AXIS], 100, 99000, _reset_e0_acceleration_rate);
|
3626
|
|
- MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E2, &planner.max_acceleration_mm_per_s2[E_AXIS + 1], 100, 99000, _reset_e1_acceleration_rate);
|
|
3552
|
+ void _planner_refresh_e_positioning(const uint8_t e) {
|
|
3553
|
+ if (e == active_extruder)
|
|
3554
|
+ _planner_refresh_positioning();
|
|
3555
|
+ else
|
|
3556
|
+ planner.steps_to_mm[E_AXIS + e] = 1.0 / planner.axis_steps_per_mm[E_AXIS + e];
|
|
3557
|
+ }
|
|
3558
|
+ void _planner_refresh_e0_positioning() { _planner_refresh_e_positioning(0); }
|
|
3559
|
+ void _planner_refresh_e1_positioning() { _planner_refresh_e_positioning(1); }
|
3627
|
3560
|
#if E_STEPPERS > 2
|
3628
|
|
- MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E3, &planner.max_acceleration_mm_per_s2[E_AXIS + 2], 100, 99000, _reset_e2_acceleration_rate);
|
|
3561
|
+ void _planner_refresh_e2_positioning() { _planner_refresh_e_positioning(2); }
|
3629
|
3562
|
#if E_STEPPERS > 3
|
3630
|
|
- MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E4, &planner.max_acceleration_mm_per_s2[E_AXIS + 3], 100, 99000, _reset_e3_acceleration_rate);
|
|
3563
|
+ void _planner_refresh_e3_positioning() { _planner_refresh_e_positioning(3); }
|
3631
|
3564
|
#if E_STEPPERS > 4
|
3632
|
|
- MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E5, &planner.max_acceleration_mm_per_s2[E_AXIS + 4], 100, 99000, _reset_e4_acceleration_rate);
|
|
3565
|
+ void _planner_refresh_e4_positioning() { _planner_refresh_e_positioning(4); }
|
3633
|
3566
|
#endif // E_STEPPERS > 4
|
3634
|
3567
|
#endif // E_STEPPERS > 3
|
3635
|
3568
|
#endif // E_STEPPERS > 2
|
3636
|
|
- #else
|
3637
|
|
- MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E, &planner.max_acceleration_mm_per_s2[E_AXIS], 100, 99000, _reset_acceleration_rates);
|
3638
|
3569
|
#endif
|
3639
|
3570
|
|
3640
|
|
- END_MENU();
|
3641
|
|
- }
|
|
3571
|
+ // M203 / M205 Velocity options
|
|
3572
|
+ void lcd_control_motion_velocity_menu() {
|
|
3573
|
+ START_MENU();
|
|
3574
|
+ MENU_BACK(MSG_MOTION);
|
|
3575
|
+
|
|
3576
|
+ // M203 Max Feedrate
|
|
3577
|
+ MENU_ITEM_EDIT(float3, MSG_VMAX MSG_X, &planner.max_feedrate_mm_s[X_AXIS], 1, 999);
|
|
3578
|
+ MENU_ITEM_EDIT(float3, MSG_VMAX MSG_Y, &planner.max_feedrate_mm_s[Y_AXIS], 1, 999);
|
|
3579
|
+ MENU_ITEM_EDIT(float3, MSG_VMAX MSG_Z, &planner.max_feedrate_mm_s[Z_AXIS], 1, 999);
|
|
3580
|
+
|
|
3581
|
+ #if ENABLED(DISTINCT_E_FACTORS)
|
|
3582
|
+ MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E, &planner.max_feedrate_mm_s[E_AXIS + active_extruder], 1, 999);
|
|
3583
|
+ MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E1, &planner.max_feedrate_mm_s[E_AXIS], 1, 999);
|
|
3584
|
+ MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E2, &planner.max_feedrate_mm_s[E_AXIS + 1], 1, 999);
|
|
3585
|
+ #if E_STEPPERS > 2
|
|
3586
|
+ MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E3, &planner.max_feedrate_mm_s[E_AXIS + 2], 1, 999);
|
|
3587
|
+ #if E_STEPPERS > 3
|
|
3588
|
+ MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E4, &planner.max_feedrate_mm_s[E_AXIS + 3], 1, 999);
|
|
3589
|
+ #if E_STEPPERS > 4
|
|
3590
|
+ MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E5, &planner.max_feedrate_mm_s[E_AXIS + 4], 1, 999);
|
|
3591
|
+ #endif // E_STEPPERS > 4
|
|
3592
|
+ #endif // E_STEPPERS > 3
|
|
3593
|
+ #endif // E_STEPPERS > 2
|
|
3594
|
+ #else
|
|
3595
|
+ MENU_ITEM_EDIT(float3, MSG_VMAX MSG_E, &planner.max_feedrate_mm_s[E_AXIS], 1, 999);
|
|
3596
|
+ #endif
|
3642
|
3597
|
|
3643
|
|
- // M205 Jerk
|
3644
|
|
- void lcd_control_motion_jerk_menu() {
|
3645
|
|
- START_MENU();
|
3646
|
|
- MENU_BACK(MSG_MOTION);
|
|
3598
|
+ // M205 S Min Feedrate
|
|
3599
|
+ MENU_ITEM_EDIT(float3, MSG_VMIN, &planner.min_feedrate_mm_s, 0, 999);
|
3647
|
3600
|
|
3648
|
|
- MENU_ITEM_EDIT(float3, MSG_VX_JERK, &planner.max_jerk[X_AXIS], 1, 990);
|
3649
|
|
- MENU_ITEM_EDIT(float3, MSG_VY_JERK, &planner.max_jerk[Y_AXIS], 1, 990);
|
3650
|
|
- #if ENABLED(DELTA)
|
3651
|
|
- MENU_ITEM_EDIT(float3, MSG_VZ_JERK, &planner.max_jerk[Z_AXIS], 1, 990);
|
3652
|
|
- #else
|
3653
|
|
- MENU_ITEM_EDIT(float52, MSG_VZ_JERK, &planner.max_jerk[Z_AXIS], 0.1, 990);
|
3654
|
|
- #endif
|
3655
|
|
- MENU_ITEM_EDIT(float3, MSG_VE_JERK, &planner.max_jerk[E_AXIS], 1, 990);
|
|
3601
|
+ // M205 T Min Travel Feedrate
|
|
3602
|
+ MENU_ITEM_EDIT(float3, MSG_VTRAV_MIN, &planner.min_travel_feedrate_mm_s, 0, 999);
|
3656
|
3603
|
|
3657
|
|
- END_MENU();
|
3658
|
|
- }
|
|
3604
|
+ END_MENU();
|
|
3605
|
+ }
|
3659
|
3606
|
|
3660
|
|
- // M92 Steps-per-mm
|
3661
|
|
- void lcd_control_motion_steps_per_mm_menu() {
|
3662
|
|
- START_MENU();
|
3663
|
|
- MENU_BACK(MSG_MOTION);
|
|
3607
|
+ // M201 / M204 Accelerations
|
|
3608
|
+ void lcd_control_motion_acceleration_menu() {
|
|
3609
|
+ START_MENU();
|
|
3610
|
+ MENU_BACK(MSG_MOTION);
|
|
3611
|
+
|
|
3612
|
+ // M204 P Acceleration
|
|
3613
|
+ MENU_ITEM_EDIT(float5, MSG_ACC, &planner.acceleration, 10, 99000);
|
|
3614
|
+
|
|
3615
|
+ // M204 R Retract Acceleration
|
|
3616
|
+ MENU_ITEM_EDIT(float5, MSG_A_RETRACT, &planner.retract_acceleration, 100, 99000);
|
|
3617
|
+
|
|
3618
|
+ // M204 T Travel Acceleration
|
|
3619
|
+ MENU_ITEM_EDIT(float5, MSG_A_TRAVEL, &planner.travel_acceleration, 100, 99000);
|
|
3620
|
+
|
|
3621
|
+ // M201 settings
|
|
3622
|
+ MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_X, &planner.max_acceleration_mm_per_s2[X_AXIS], 100, 99000, _reset_acceleration_rates);
|
|
3623
|
+ MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_Y, &planner.max_acceleration_mm_per_s2[Y_AXIS], 100, 99000, _reset_acceleration_rates);
|
|
3624
|
+ MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_Z, &planner.max_acceleration_mm_per_s2[Z_AXIS], 10, 99000, _reset_acceleration_rates);
|
|
3625
|
+
|
|
3626
|
+ #if ENABLED(DISTINCT_E_FACTORS)
|
|
3627
|
+ MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E, &planner.max_acceleration_mm_per_s2[E_AXIS + active_extruder], 100, 99000, _reset_acceleration_rates);
|
|
3628
|
+ MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E1, &planner.max_acceleration_mm_per_s2[E_AXIS], 100, 99000, _reset_e0_acceleration_rate);
|
|
3629
|
+ MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E2, &planner.max_acceleration_mm_per_s2[E_AXIS + 1], 100, 99000, _reset_e1_acceleration_rate);
|
|
3630
|
+ #if E_STEPPERS > 2
|
|
3631
|
+ MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E3, &planner.max_acceleration_mm_per_s2[E_AXIS + 2], 100, 99000, _reset_e2_acceleration_rate);
|
|
3632
|
+ #if E_STEPPERS > 3
|
|
3633
|
+ MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E4, &planner.max_acceleration_mm_per_s2[E_AXIS + 3], 100, 99000, _reset_e3_acceleration_rate);
|
|
3634
|
+ #if E_STEPPERS > 4
|
|
3635
|
+ MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E5, &planner.max_acceleration_mm_per_s2[E_AXIS + 4], 100, 99000, _reset_e4_acceleration_rate);
|
|
3636
|
+ #endif // E_STEPPERS > 4
|
|
3637
|
+ #endif // E_STEPPERS > 3
|
|
3638
|
+ #endif // E_STEPPERS > 2
|
|
3639
|
+ #else
|
|
3640
|
+ MENU_ITEM_EDIT_CALLBACK(long5, MSG_AMAX MSG_E, &planner.max_acceleration_mm_per_s2[E_AXIS], 100, 99000, _reset_acceleration_rates);
|
|
3641
|
+ #endif
|
3664
|
3642
|
|
3665
|
|
- MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_XSTEPS, &planner.axis_steps_per_mm[X_AXIS], 5, 9999, _planner_refresh_positioning);
|
3666
|
|
- MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_YSTEPS, &planner.axis_steps_per_mm[Y_AXIS], 5, 9999, _planner_refresh_positioning);
|
3667
|
|
- MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_ZSTEPS, &planner.axis_steps_per_mm[Z_AXIS], 5, 9999, _planner_refresh_positioning);
|
|
3643
|
+ END_MENU();
|
|
3644
|
+ }
|
3668
|
3645
|
|
3669
|
|
- #if ENABLED(DISTINCT_E_FACTORS)
|
3670
|
|
- MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_ESTEPS, &planner.axis_steps_per_mm[E_AXIS + active_extruder], 5, 9999, _planner_refresh_positioning);
|
3671
|
|
- MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E1STEPS, &planner.axis_steps_per_mm[E_AXIS], 5, 9999, _planner_refresh_e0_positioning);
|
3672
|
|
- MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E2STEPS, &planner.axis_steps_per_mm[E_AXIS + 1], 5, 9999, _planner_refresh_e1_positioning);
|
3673
|
|
- #if E_STEPPERS > 2
|
3674
|
|
- MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E3STEPS, &planner.axis_steps_per_mm[E_AXIS + 2], 5, 9999, _planner_refresh_e2_positioning);
|
3675
|
|
- #if E_STEPPERS > 3
|
3676
|
|
- MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E4STEPS, &planner.axis_steps_per_mm[E_AXIS + 3], 5, 9999, _planner_refresh_e3_positioning);
|
3677
|
|
- #if E_STEPPERS > 4
|
3678
|
|
- MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E5STEPS, &planner.axis_steps_per_mm[E_AXIS + 4], 5, 9999, _planner_refresh_e4_positioning);
|
3679
|
|
- #endif // E_STEPPERS > 4
|
3680
|
|
- #endif // E_STEPPERS > 3
|
3681
|
|
- #endif // E_STEPPERS > 2
|
3682
|
|
- #else
|
3683
|
|
- MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_ESTEPS, &planner.axis_steps_per_mm[E_AXIS], 5, 9999, _planner_refresh_positioning);
|
3684
|
|
- #endif
|
|
3646
|
+ // M205 Jerk
|
|
3647
|
+ void lcd_control_motion_jerk_menu() {
|
|
3648
|
+ START_MENU();
|
|
3649
|
+ MENU_BACK(MSG_MOTION);
|
3685
|
3650
|
|
3686
|
|
- END_MENU();
|
3687
|
|
- }
|
|
3651
|
+ MENU_ITEM_EDIT(float3, MSG_VX_JERK, &planner.max_jerk[X_AXIS], 1, 990);
|
|
3652
|
+ MENU_ITEM_EDIT(float3, MSG_VY_JERK, &planner.max_jerk[Y_AXIS], 1, 990);
|
|
3653
|
+ #if ENABLED(DELTA)
|
|
3654
|
+ MENU_ITEM_EDIT(float3, MSG_VZ_JERK, &planner.max_jerk[Z_AXIS], 1, 990);
|
|
3655
|
+ #else
|
|
3656
|
+ MENU_ITEM_EDIT(float52, MSG_VZ_JERK, &planner.max_jerk[Z_AXIS], 0.1, 990);
|
|
3657
|
+ #endif
|
|
3658
|
+ MENU_ITEM_EDIT(float3, MSG_VE_JERK, &planner.max_jerk[E_AXIS], 1, 990);
|
|
3659
|
+
|
|
3660
|
+ END_MENU();
|
|
3661
|
+ }
|
|
3662
|
+
|
|
3663
|
+ // M92 Steps-per-mm
|
|
3664
|
+ void lcd_control_motion_steps_per_mm_menu() {
|
|
3665
|
+ START_MENU();
|
|
3666
|
+ MENU_BACK(MSG_MOTION);
|
|
3667
|
+
|
|
3668
|
+ MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_XSTEPS, &planner.axis_steps_per_mm[X_AXIS], 5, 9999, _planner_refresh_positioning);
|
|
3669
|
+ MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_YSTEPS, &planner.axis_steps_per_mm[Y_AXIS], 5, 9999, _planner_refresh_positioning);
|
|
3670
|
+ MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_ZSTEPS, &planner.axis_steps_per_mm[Z_AXIS], 5, 9999, _planner_refresh_positioning);
|
|
3671
|
+
|
|
3672
|
+ #if ENABLED(DISTINCT_E_FACTORS)
|
|
3673
|
+ MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_ESTEPS, &planner.axis_steps_per_mm[E_AXIS + active_extruder], 5, 9999, _planner_refresh_positioning);
|
|
3674
|
+ MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E1STEPS, &planner.axis_steps_per_mm[E_AXIS], 5, 9999, _planner_refresh_e0_positioning);
|
|
3675
|
+ MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E2STEPS, &planner.axis_steps_per_mm[E_AXIS + 1], 5, 9999, _planner_refresh_e1_positioning);
|
|
3676
|
+ #if E_STEPPERS > 2
|
|
3677
|
+ MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E3STEPS, &planner.axis_steps_per_mm[E_AXIS + 2], 5, 9999, _planner_refresh_e2_positioning);
|
|
3678
|
+ #if E_STEPPERS > 3
|
|
3679
|
+ MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E4STEPS, &planner.axis_steps_per_mm[E_AXIS + 3], 5, 9999, _planner_refresh_e3_positioning);
|
|
3680
|
+ #if E_STEPPERS > 4
|
|
3681
|
+ MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_E5STEPS, &planner.axis_steps_per_mm[E_AXIS + 4], 5, 9999, _planner_refresh_e4_positioning);
|
|
3682
|
+ #endif // E_STEPPERS > 4
|
|
3683
|
+ #endif // E_STEPPERS > 3
|
|
3684
|
+ #endif // E_STEPPERS > 2
|
|
3685
|
+ #else
|
|
3686
|
+ MENU_MULTIPLIER_ITEM_EDIT_CALLBACK(float62, MSG_ESTEPS, &planner.axis_steps_per_mm[E_AXIS], 5, 9999, _planner_refresh_positioning);
|
|
3687
|
+ #endif
|
|
3688
|
+
|
|
3689
|
+ END_MENU();
|
|
3690
|
+ }
|
|
3691
|
+
|
|
3692
|
+ #endif // !SLIM_LCD_MENUS
|
|
3693
|
+
|
|
3694
|
+ /**
|
|
3695
|
+ *
|
|
3696
|
+ * "Control" > "Motion" submenu
|
|
3697
|
+ *
|
|
3698
|
+ */
|
3688
|
3699
|
|
3689
|
3700
|
void lcd_control_motion_menu() {
|
3690
|
3701
|
START_MENU();
|
|
@@ -3696,17 +3707,21 @@ void kill_screen(const char* lcd_msg) {
|
3696
|
3707
|
MENU_ITEM_EDIT(float32, MSG_ZPROBE_ZOFFSET, &zprobe_zoffset, Z_PROBE_OFFSET_RANGE_MIN, Z_PROBE_OFFSET_RANGE_MAX);
|
3697
|
3708
|
#endif
|
3698
|
3709
|
|
3699
|
|
- // M203 / M205 - Feedrate items
|
3700
|
|
- MENU_ITEM(submenu, MSG_VELOCITY, lcd_control_motion_velocity_menu);
|
|
3710
|
+ #if DISABLED(SLIM_LCD_MENUS)
|
|
3711
|
+
|
|
3712
|
+ // M203 / M205 - Feedrate items
|
|
3713
|
+ MENU_ITEM(submenu, MSG_VELOCITY, lcd_control_motion_velocity_menu);
|
|
3714
|
+
|
|
3715
|
+ // M201 - Acceleration items
|
|
3716
|
+ MENU_ITEM(submenu, MSG_ACCELERATION, lcd_control_motion_acceleration_menu);
|
3701
|
3717
|
|
3702
|
|
- // M201 - Acceleration items
|
3703
|
|
- MENU_ITEM(submenu, MSG_ACCELERATION, lcd_control_motion_acceleration_menu);
|
|
3718
|
+ // M205 - Max Jerk
|
|
3719
|
+ MENU_ITEM(submenu, MSG_JERK, lcd_control_motion_jerk_menu);
|
3704
|
3720
|
|
3705
|
|
- // M205 - Max Jerk
|
3706
|
|
- MENU_ITEM(submenu, MSG_JERK, lcd_control_motion_jerk_menu);
|
|
3721
|
+ // M92 - Steps Per mm
|
|
3722
|
+ MENU_ITEM(submenu, MSG_STEPS_PER_MM, lcd_control_motion_steps_per_mm_menu);
|
3707
|
3723
|
|
3708
|
|
- // M92 - Steps Per mm
|
3709
|
|
- MENU_ITEM(submenu, MSG_STEPS_PER_MM, lcd_control_motion_steps_per_mm_menu);
|
|
3724
|
+ #endif // !SLIM_LCD_MENUS
|
3710
|
3725
|
|
3711
|
3726
|
// M540 S - Abort on endstop hit when SD printing
|
3712
|
3727
|
#if ENABLED(ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED)
|