| 722 | #endif |
| 723 | |
| 724 | void MarlinSettings::postprocess() { |
| 725 | xyze_pos_t oldpos = current_position; |
| 726 | |
| 727 | // steps per s2 needs to be updated to agree with units per s2 |
| 728 | planner.refresh_acceleration_rates(); |
| 729 | |
| 730 | // Make sure delta kinematics are updated before refreshing the |
| 731 | // planner position so the stepper counts will be set correctly. |
| 732 | TERN_(DELTA, recalc_delta_settings()); |
| 733 | |
| 734 | TERN_(PIDTEMP, thermalManager.updatePID()); |
| 735 | |
| 736 | #if DISABLED(NO_VOLUMETRICS) |
| 737 | planner.calculate_volumetric_multipliers(); |
| 738 | #elif EXTRUDERS |
| 739 | for (uint8_t i = COUNT(planner.e_factor); i--;) |
| 740 | planner.refresh_e_factor(i); |
| 741 | #endif |
| 742 | |
| 743 | // Software endstops depend on home_offset |
| 744 | LOOP_NUM_AXES(i) update_software_endstops((AxisEnum)i); |
| 745 | |
| 746 | TERN_(ENABLE_LEVELING_FADE_HEIGHT, set_z_fade_height(new_z_fade_height, false)); // false = no report |
| 747 | |
| 748 | TERN_(AUTO_BED_LEVELING_BILINEAR, bedlevel.refresh_bed_level()); |
| 749 | |
| 750 | TERN_(HAS_MOTOR_CURRENT_PWM, stepper.refresh_motor_power()); |
| 751 | |
| 752 | TERN_(FWRETRACT, fwretract.refresh_autoretract()); |
| 753 | |
| 754 | TERN_(HAS_LINEAR_E_JERK, planner.recalculate_max_e_jerk()); |
| 755 | |
| 756 | TERN_(CASELIGHT_USES_BRIGHTNESS, caselight.update_brightness()); |
| 757 | |
| 758 | TERN_(EXTENSIBLE_UI, ExtUI::onPostprocessSettings()); |
| 759 | |
| 760 | // Refresh mm_per_step with the reciprocal of axis_steps_per_mm |
| 761 | // and init stepper.count[], planner.position[] with current_position |
| 762 | planner.refresh_positioning(); |
| 763 | |
| 764 | // Various factors can change the current position |
| 765 | if (oldpos != current_position) |
| 766 | report_current_position(); |
| 767 | |
| 768 | // Moved as last update due to interference with NeoPixel init |
| 769 | TERN_(HAS_LCD_CONTRAST, ui.refresh_contrast()); |
| 770 | TERN_(HAS_LCD_BRIGHTNESS, ui.refresh_brightness()); |
| 771 | TERN_(HAS_BACKLIGHT_TIMEOUT, ui.refresh_backlight_timeout()); |
| 772 | TERN_(HAS_DISPLAY_SLEEP, ui.refresh_screen_timeout()); |
| 773 | } |
| 774 | |
| 775 | #if ALL(PRINTCOUNTER, EEPROM_SETTINGS) |
| 776 | #include "printcounter.h" |
nothing calls this directly
no test coverage detected