-
-
Notifications
You must be signed in to change notification settings - Fork 19.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add OPTIMIZED_MESH_STORAGE option (for UBL) #20371
Conversation
…umber of z steps instead of the value. This will store the values as an int16_t, which takes only half as much EEPROM space.
This seems like a positive change. I have a few thoughts which may or may not be issues...
I'm not asking for you to change anything right now, these are just items to think about. |
I can't speak for all hardware, so I suspect there are some environments where this wouldn't work. For typical hardware, it should be sufficient, but people use Marlin on all sorts of custom machines.
Loads of an an old
There's currently no good way to do this. There is a proposal for an envelope format for individual EEPROM settings, which would provide a mechanism for doing so. You could guess that the data looks more like float32 than int16 (particularly by looking at multiple points, and the differences between them), but it would only be a guess. I think that wouldn't be worth it overall, since reinterpretation like this could lead to some very hard to diagnose behavior. |
Your responses match what I was thinking. UBL meshes don’t get cleared with eeprom version upgrades, it would be good to have a mechanism to invalidate them if key settings change. That seems out of scope in the PR though. I was just trying to think through the side-effects of using something like this as a default. |
Storing the mesh values in steps is actually kind of arbitrary. It may be simpler to just store the offsets in 1000ths of a millimeter ( |
Shouldn't this reduce the firmware size? Because it increased it from 244940 bytes to 245164 bytes when |
This is by design. It is very common for a person (and especially a developer) to change firmware versions. The Mesh data was deliberately moved out of the normal configuration data so it could be preserved across firmware upgrades. It is a real pain to get a mesh built and fine tuned and have it disappear just because the firmware version changed. |
I understand. I wasn't suggesting that they always be invalidated, only if something significant changed that made the stored values no longer valid. For example, switching between storing floats vs. uint16_t, or changing the boundaries of the mesh. |
This reduces the amount stored in the EEPROM, but involves extra code, so it increases the firmware size. |
I stored steps, since this is the resolution of the printer. There's no point in storing a value that is more precise, since we can't position things more precisely. The downside of this choice is that if you alter your stepper (and rebuild your firmware), you end up with invalid measurements. |
How should I interpret "to save EEPROM space"? Marlin/Marlin/Configuration_adv.h Line 1743 in 1fc0dcd
Apologies if I'm misunderstanding it, but if the compiled firmware is larger than without it, then how it is saving EEPROM space? |
@qwewer0 on a micro controller the program goes into flash storage, the variables go into ram. These are reported at compile time So eeprom storage is reduced, by you can't see it at compile time. |
* USB Media Host followup Restore HAS_SHARED_MEDIA * SMUFF (MMU2 clone) support (MarlinFirmware#19912) * [cron] Bump distribution date (2020-11-19) * Fix broken #include (MarlinFirmware#20193) * Use RTD for MAX31865 reading (MarlinFirmware#20188) * Abort print on media removal (MarlinFirmware#20200) * Fix Filament Change menu item labels (MarlinFirmware#20201) * Remaining Time followup (MarlinFirmware#20199) * Fix GTR NeoPixel pin with FYSETC Mini12864 (MarlinFirmware#20203) * Reduce RAM usage for TFT Color UI on SGen-L V2 (MarlinFirmware#20209) * Add Thermistor 20-21 notes (MarlinFirmware#19246) * MKS WiFi preliminary changes * More MKS WiFi * MKS WiFi strings * Fix Z label * Windows LPC Upload for non-admins (MarlinFirmware#20208) Co-authored-by: Victor Mateus Oliveira <[email protected]> Co-authored-by: Scott Lahteine <[email protected]> * Fix DAC setDrvPct (MarlinFirmware#20205) * [cron] Bump distribution date (2020-11-20) * Longer LK Pro / Alfawise PRO board (MarlinFirmware#20185) * Missing header to use suicide() on LVGL UI (MarlinFirmware#20214) * SINGLE_TOUCH_NAVIGATION Follow Up (MarlinFirmware#20213) * Printrboard labels * [cron] Bump distribution date (2020-11-21) * Fix backward Filament (Presence) Sensor pulls (MarlinFirmware#20228) Co-authored-by: Kurt Haenen <[email protected]> Co-authored-by: Scott Lahteine <[email protected]> * Fix bad SET_FAST_PWM_FREQ calls (MarlinFirmware#20227) * Superscript substitution (MarlinFirmware#20219) Co-authored-by: Scott Lahteine <[email protected]> * Power-Loss cleanup * BTN_ENC_EN for many boards (MarlinFirmware#19890) Enables CHECK_ENCODER_ACTIVE_SIGNAL for many more boards. Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Jason Smith <[email protected]> * Skip unnecessary (costly) SW Stepper Enable (MarlinFirmware#20218) Co-authored-by: Jason Smith <[email protected]> Co-authored-by: Scott Lahteine <[email protected]> * Fix Load Filament wait (MarlinFirmware#20243) * Proper pullup/pulldown configurability (MarlinFirmware#20242) Co-authored-by: Scott Lahteine <[email protected]> * [cron] Bump distribution date (2020-11-22) * Clear menu history for browse media on insert (MarlinFirmware#20236) Co-authored-by: Scott Lahteine <[email protected]> * Put "$3" on all tests * Move core conditionals earlier * Hide docker droppings * [cron] Bump distribution date (2020-11-23) * Fix UBL manual mesh adjust behavior (MarlinFirmware#20248) * Allow Status Message without LCD (MarlinFirmware#20246) * Fix dummy thermistors for Bed, Chamber, Probe (MarlinFirmware#20247) * Fix Z4 in ENABLE/DISABLE_AXIS_Z (MarlinFirmware#20256) This was accidentally broken in PR MarlinFirmware#20218 * [cron] Bump distribution date (2020-11-24) * LCD position in current units (MarlinFirmware#20145) * Set "lcd_move_e" index to fix the label (MarlinFirmware#20263) * Allow cold Filament Load/Unload with M302 P1 (MarlinFirmware#20262) Co-authored-by: Scott Lahteine <[email protected]> * No Z_MULTI_ENDSTOPS when HOMING_Z_WITH_PROBE (MarlinFirmware#20254) * Consistent Probe XY offset type * Cosmetic G29 ABL tweak * [cron] Bump distribution date (2020-11-25) * Update TOUCH_UI_LULZBOT_BIO wrappers * add missing header to use HAS_SD_HOST_DRIVE (MarlinFirmware#20270) * Fix COLOR_UI without TOUCH_SCREEN_CALIBRATION (MarlinFirmware#20269) * [cron] Bump distribution date (2020-11-26) * Probe Offset Wizard improvements (MarlinFirmware#20239) * Reduce warnings, extern "C" cleanup (MarlinFirmware#20279) * Retire HAL for STM32F4 / F7 (MarlinFirmware#20153) * Tweak some pin errors * MKS Robin E3 / E3D v1.1 (MarlinFirmware#20216) * Finish HAL/STM32 cpp wrappers * No auto debug for EEPROM_CHITCHAT * Optimize emergency parser check * Level Corners with Probe option (MarlinFirmware#20241) * [WIP] Fix Probe::offset_xy (MarlinFirmware#20290) Co-authored-by: Jason Smith <[email protected]> * [cron] Bump distribution date (2020-11-27) * M808 Repeat Markers (MarlinFirmware#20084) * FIX TMC menu message (MarlinFirmware#20294) * Fix BTT GTR 1.0 endstop/DIAG pins (MarlinFirmware#20296) * Fix G2/G3 arcs > 180° (MarlinFirmware#20292) * Group related homing options (MarlinFirmware#20283) Co-authored-by: Scott Lahteine <[email protected]> * Fix M73 LCD code typo (MarlinFirmware#20300) * [cron] Bump distribution date (2020-11-28) * [cron] Bump distribution date (2020-11-29) * Arc Direction followup for circles (MarlinFirmware#20314) * SKR E3 Turbo Controller Fan (MarlinFirmware#20320) * Fix STM32F1 'freeMemory()' warnings (MarlinFirmware#20319) * Leveling Fade Height default setting (MarlinFirmware#20316) * [cron] Bump distribution date (2020-11-30) * Adjust axis homed / trusted methods (MarlinFirmware#20323) * General cleanup * Increase E3V2 DWIN steps/mm range to 999.9 (MarlinFirmware#20324) * [cron] Bump distribution date (2020-12-01) * Prevent Watchdog reset writing Creality 4.x EEPROM (MarlinFirmware#20328) * Fix E3V2 Control Menu when returning from Info (MarlinFirmware#20338) * Tweak to EEPROM safe delay * [cron] Bump distribution date (2020-12-02) * Level Bed Corners is a sub-menu * Update to STM32 v10, optimize build (MarlinFirmware#20325) * Help hosts when password-locked (MarlinFirmware#20348) * Fix E3V2 DWIN Jerk Menu (MarlinFirmware#20352) * Fix E3V2 DWIN build without CLASSIC_JERK * Fix jerk edits applying to wrong index * Permit SD EEPROM emulation on E3V2 (MarlinFirmware#20353) * [cron] Bump distribution date (2020-12-03) * Fix circle arc condition (MarlinFirmware#20322) * Fix up start, monitor baud (MarlinFirmware#20326) * Consolidate common pin includes * Require minimum PlatformIO version (MarlinFirmware#20361) Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Jason Smith <[email protected]> * [cron] Bump distribution date (2020-12-04) * Fix MESH_BED_LEVELING w/o SEGMENT_LEVELED_MOVES (MarlinFirmware#20363) * Loosen E on pause for fila-manipulation (MarlinFirmware#20346) Co-authored-by: Scott Lahteine <[email protected]> * [cron] Bump distribution date (2020-12-05) * Don’t use near keyword as variable name (MarlinFirmware#20374) * Improved Longer3D LKx Pro board (MarlinFirmware#20372) Co-authored-by: mrv96 <[email protected]> * Fix TMC_HOME_PHASE divide by zero (MarlinFirmware#20368) * Suspend Servos for STM32+NeoPixel (MarlinFirmware#19963) * Add Creality 4.5.2 board (MarlinFirmware#20378) Co-authored-by: Jason Smith <[email protected]> * [cron] Bump distribution date (2020-12-06) * Fix FYSETC S6 I2C EEPROM size (MarlinFirmware#20340) Both V1.2 and V2.0 boards have a 24LC16, which is a 2kB EEPROM. Co-authored-by: PingWin <[email protected]> Co-authored-by: Jason Smith <[email protected]> * Creality 4.5.2 format and fix * Use 'nearby' for 'near' * ExtUI homing / leveling additions * Move G29 3-point startup earlier * Fix STM32F1 SERIAL_GET_TX_BUFFER_FREE * G28 tweaks * G28 followup * Avoid invalid memory optimizations (MarlinFirmware#20389) When building for AVR, merge-all-constants can incorrectly combine constants stored in flash with constants stored in RAM. These have different access requirements, leading to undefined behavior during execution. Co-authored-by: ellensp <[email protected]> * [cron] Bump distribution date (2020-12-07) * Fix fileExists, use openFailed * Watch idle() depth over 5 * More LPC P-string macros * Fix auto#.g file handling, add NO_SD_AUTOSTART (MarlinFirmware#20071) * Shorten Filament Load/Unload Strings to Fit on Graphical Displays (MarlinFirmware#20369) Co-authored-by: ellensp <[email protected]> Co-authored-by: Victor Mateus Oliveira <[email protected]> * Allow BTT EXP-MOT be used with Displays that needs only EXP 1 (MarlinFirmware#20396) Co-authored-by: ellensp <[email protected]> Co-authored-by: Victor Mateus Oliveira <[email protected]> * [cron] Bump distribution date (2020-12-08) * SPI TFT for STM32F4 boards (MarlinFirmware#20384) * fix pinsDebug for F1 boards * add MKS Robin PRO V2 board - development board * tft spi working with F4 boards * pins formating * sanity check for TFT on supported cores in STM32 * Fix tabs/spaces in pins file Co-authored-by: Jason Smith <[email protected]> * [cron] Bump distribution date (2020-12-09) * Style, spacing, typo cleanup for recent changes * Clarify Delta & SCARA config location (MarlinFirmware#20403) * Allow positive Z nozzle to probe offset (MarlinFirmware#20344) * Allow a positive value for z offset from nozzle to probe without sanity checks * Simplify menu_probe_offset.cpp (HOMING_Z_WITH_PROBE) * Add some more explanation to Configuration Files * Raise after probe_at_point as if homed Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Jason Smith <[email protected]> * Fix Spindle/Laser Control menu (MarlinFirmware#20347) * Fixes and additions to FTDI EVE Touch UI (MarlinFirmware#20393) - Fixed name conflict with "SUBSCRIPT_TWO" - Fixed rendering bugs in "Leveling Menu" - Only show "Bed Mesh Screen" when UBL is enabled - Removed CocoaPress code from generic "Main Menu" - Removed CocoaPress code from LulzBot Bio "Status" screen - Moved generic "Move Axis" functionality into a base class - Added CocoaPress custom screens: - Status Screen - Unload Cartridge - Load Chocolate - Main Menu - Advanced Settings - XYZ Move (based on "Move Axis" base class) - Extrusion Move (based on "Move Axis" base class) - CocoaPress tweaks to "Temperature" screen - Fix FTDI EVE Touch UI compilation errors when not using leveling. * Move ExtUI ABL mesh edit, limit to bilinear (MarlinFirmware#20381) * Move ExtUI call Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Victor Mateus Oliveira <[email protected]> Co-authored-by: Sebastiaan Dammann <[email protected]> * MKS Robin Pins fixes for STM32 and STM32F1 (MarlinFirmware#20404) Co-authored-by: Scott Lahteine <[email protected]> * [cron] Bump distribution date (2020-12-10) * Clarify "not Interrupt-capable" error message (MarlinFirmware#20419) * Fix UBL Debug Messages (MarlinFirmware#20423) Co-authored-by: ellensp <[email protected]> * [cron] Bump distribution date (2020-12-11) * Z_SENSORLESS sanity checks (MarlinFirmware#20421) Co-authored-by: Jason Smith <[email protected]> * Probe offset wizard fixes (MarlinFirmware#20414) * STOW probe, reverting incorrect earlier change from MarlinFirmware#20344 * Adjust soft endstop disables, to ensure travel below bed functions properly Co-authored-by: FanDjango <[email protected]> * SENSORLESS_PROBING sanity check followup (MarlinFirmware#20438) * [cron] Bump distribution date (2020-12-12) * Better animated boot screen * Fix SDCARD_SORT_ALPHA on Ender 3 V2 (MarlinFirmware#20443) * Add HAS_PIN_27_BOARD for CREALITY_V4 (MarlinFirmware#20446) Co-authored-by: ellensp <[email protected]> * Improve ASSISTED_TRAMMING_WIZARD probe stowing (MarlinFirmware#20437) * When BLTOUCH_HS_MODE enabled, stow pin before user interaction * For all probes, ensure probe stows at end of wizard * [cron] Bump distribution date (2020-12-13) * Probe Offset Wizard followupBack to PROBE_PT_RAISE/separate STOW, make "PROBING" msg appear (MarlinFirmware#20439) * Go back to always use PROBE_PT_RAISE with a discrete stow. This ensures a raise above the bed, while stowing prior to exiting the wizard. * Fix issue preventing text while moving to X/Y position Co-authored-by: FanDjango <[email protected]> * Adjust planner debugging * SHORT_MANUAL_Z_MOVE => FINE_MANUAL_MOVE * [cron] Bump distribution date (2020-12-14) * LPC176x framework update (MarlinFirmware#20469) * [cron] Bump distribution date (2020-12-15) * Fix formatting * Preheat before leveling * Always enable leveling after G28 * Trust that script -x flags will always be set (MarlinFirmware#20453) * Fix M1001 auto-check logic (MarlinFirmware#20456) * Auto-check followup * Please install the EditorConfig plugin * Fix RESTORE_LEVELING_AFTER_G28 (MarlinFirmware#20471) * Creality v4.5.3 (CR-6 SE, CR-6 MAX) (MarlinFirmware#20468) * Update some pins errors * Update some LCD includes * Trust STM32 gcc versions * [cron] Bump distribution date (2020-12-16) * Update Italian language (MarlinFirmware#20480) * Update Hungarian language Co-Authored-By: Zs.Antal <[email protected]> * Update French language (MarlinFirmware#20472) * [cron] Bump distribution date (2020-12-17) * Use homing_feedrate function * Homing feedrates as XYZ array (MarlinFirmware#20426) Co-authored-by: Scott Lahteine <[email protected]> * Fix ZoneStar LCD 2004 buttons (MarlinFirmware#20489) * Make M220 B / R a standard feature (MarlinFirmware#20355) * Balance CI tests (MarlinFirmware#20485) * Fix and optimize MightyBoard (MarlinFirmware#20493) * [cron] Bump distribution date (2020-12-18) * MKS Robin Nano V3 and STM32F4x0Vx Variant (MarlinFirmware#20430) * DOGM: Slow down touchscreen calibration (MarlinFirmware#20454) * [cron] Bump distribution date (2020-12-19) * Rename QUIET_PROBING * Tweaks for pins_BTT_SKR_common.h * [cron] Bump distribution date (2020-12-20) * Let boards set Default TMC Slave Addresses (MarlinFirmware#20498) Co-authored-by: Scott Lahteine <[email protected]> * Minimum temp options for Probing and G12 Nozzle Clean (MarlinFirmware#20383) Co-authored-by: Jason Smith <[email protected]> Co-authored-by: Scott Lahteine <[email protected]> * Probe Tare, Probe Activation Switch (MarlinFirmware#20379) Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Victor Mateus Oliveira <[email protected]> Co-authored-by: Jason Smith <[email protected]> * Fix Creality EEPROM watchdog freq. (MarlinFirmware#20510) * Migrate Hispeedv1 (QQS-Pro) to HAL/STM32 (MarlinFirmware#20354) * Languages cleanup * Update Russian and Ukrainian languages (MarlinFirmware#20508) * Fix PIO typo * [cron] Bump distribution date (2020-12-21) * Get E3V2 DWIN `MACHINE_SIZE` from config (MarlinFirmware#20526) * Apply HOME_AFTER_DEACTIVATE for 'G28 O' (MarlinFirmware#20525) * Clean up some pins * Add BTT SKR CR6 board (MarlinFirmware#20522) * Fix G34 compile with bed leveling disabled (MarlinFirmware#20537) * Fix some Russian (MarlinFirmware#20529) * Robin pins followup * Tweak FTDI spacing * Add Tune -> Advanced Settings to FTDI EVE (MarlinFirmware#20532) * [cron] Bump distribution date (2020-12-22) * 12-bit ADC resolution for STM32 (MarlinFirmware#20519) * FTDI EVE custom user menus (MarlinFirmware#20518) * Improve STM32 timer conflict messages (MarlinFirmware#20544) * Fix UBL mesh inset Z position (MarlinFirmware#20538) * Overrides to prevent STM32 timer conflicts (MarlinFirmware#20545) * Improve Touch Calibration screen (MarlinFirmware#20524) * Creality v4.3.1 (Ender 6) board (MarlinFirmware#20512) * Anet ET4 / ET4P and Anet TFT28 / TFT35 (MarlinFirmware#20280) * STM32F1xx support for TFTGLCD (MarlinFirmware#20515) * Unify FYSETC F6 1.3 / 1.4 (MarlinFirmware#20507) Co-authored-by: Scott Lahteine <[email protected]> * Fix G28 leveling state, UBL compile (MarlinFirmware#20499) * Support RGBW on PCA9632 (MarlinFirmware#20455) Co-authored-by: Scott Lahteine <[email protected]> * [cron] Bump distribution date (2020-12-23) * Refactor 'Level Corners with Probe' (MarlinFirmware#20460) Co-authored-by: Scott Lahteine <[email protected]> * Improve plan_arc circle detection (MarlinFirmware#20440) Co-authored-by: Scott Lahteine <[email protected]> * FTDI EVE: Cyrillic font, some minor fixes (MarlinFirmware#20517) * Enhanced Italian language (MarlinFirmware#20551) * Probe Activation Switch followup (MarlinFirmware#20550) * Support ANET_FULL_GRAPHICS_LCD_ALT_WIRING on BTT SKR 1.4 (MarlinFirmware#20427) * Apply ENABLED in ExiUI / FTDI * Remaining Time for FTDI EVE, bp for ExtUI (MarlinFirmware#20549) Co-authored-by: Scott Lahteine <[email protected]> * Add OPTIMIZED_MESH_STORAGE option (for UBL) (MarlinFirmware#20371) Co-authored-by: Scott Lahteine <[email protected]> * [cron] Bump distribution date (2020-12-24) * Move BTT_SKR_CR6 * LVGL and Classic UI for STM32 (MarlinFirmware#20552) * Add "End Repeat Loops" menu item * Fix DOGM status message scrolling (MarlinFirmware#20557) * Fix ST7920 timing for Rumba32, Fysetc S6 (MarlinFirmware#20556) * Fix, clean up FTDI EVE Touch UI (MarlinFirmware#20466) Co-Authored-By: Marcio T. <[email protected]> * Apply NO_MOTION_BEFORE_HOMING to joystick motion (MarlinFirmware#20462) Co-authored-by: Scott Lahteine <[email protected]> * Cutter Power in percent format (MarlinFirmware#20410) Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Jason Smith <[email protected]> Co-authored-by: Luu Lac <[email protected]> * [cron] Bump distribution date (2020-12-25) * [cron] Bump distribution date (2020-12-26) * [cron] Bump distribution date (2020-12-27) * Fix SPINDLE_LASER_FREQUENCY (MarlinFirmware#20509) * Fix some comments * Remove CREALITY_TOUCH * Add probe_switch_activated * Init tare pin once * [cron] Bump distribution date (2020-12-28) * Validate defined probe points (MarlinFirmware#20572) * General cleanup * Allow define HOMING_FEEDRATE_(XY|Z) * Remove URL scheme * Small / Large Boot Screen option for TFT_COLOR_UI (MarlinFirmware#20578) * Better defaults, compatibility for SDIO + STM32 (MarlinFirmware#20570) * Fix Menu Mixer for Color UI (MarlinFirmware#20566) * Use ADC_RESOLUTION 12 for all STM32 (MarlinFirmware#20562) * Fix LVGL_UI G-code preview (MarlinFirmware#20564) * Fix Change Filament menu actions (MarlinFirmware#20565) Co-authored-by: Scott Lahteine <[email protected]> * Menu item index followup Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Giuliano Zaro <[email protected]> Co-authored-by: bosd <[email protected]> Co-authored-by: JoAnn Manges <[email protected]> Co-authored-by: Victor Oliveira <[email protected]> Co-authored-by: ellensp <[email protected]> Co-authored-by: Maciej Rutkowski <[email protected]> Co-authored-by: Till <[email protected]> Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Vitaliy <[email protected]> Co-authored-by: Orel <[email protected]> Co-authored-by: Ajtak <[email protected]> Co-authored-by: Kurt Haenen <[email protected]> Co-authored-by: Kurt Haenen <[email protected]> Co-authored-by: Simone Primarosa <[email protected]> Co-authored-by: Gurmeet Athwal <[email protected]> Co-authored-by: Jason Smith <[email protected]> Co-authored-by: qwewer0 <[email protected]> Co-authored-by: rdhoggattjr <[email protected]> Co-authored-by: pseudex <[email protected]> Co-authored-by: swissnorp <[email protected]> Co-authored-by: mks-viva <[email protected]> Co-authored-by: wmariz <[email protected]> Co-authored-by: Štěpán Dalecký <[email protected]> Co-authored-by: BsCmOD <[email protected]> Co-authored-by: yysh12 <[email protected]> Co-authored-by: Sergey1560 <[email protected]> Co-authored-by: Thomas Niccolo Reyes <[email protected]> Co-authored-by: Alexander D. Kanevskiy <[email protected]> Co-authored-by: Mathias Rasmussen <[email protected]> Co-authored-by: Luu Lac <[email protected]> Co-authored-by: Belin Fieldson <[email protected]> Co-authored-by: Tanguy Pruvot <[email protected]> Co-authored-by: mrv96 <[email protected]> Co-authored-by: InsanityAutomation <[email protected]> Co-authored-by: LinFor <[email protected]> Co-authored-by: PingWin <[email protected]> Co-authored-by: ellensp <[email protected]> Co-authored-by: Keith Bennett <[email protected]> Co-authored-by: Mike La Spina <[email protected]> Co-authored-by: Marcio T <[email protected]> Co-authored-by: Sebastiaan Dammann <[email protected]> Co-authored-by: ellensp <[email protected]> Co-authored-by: elasticdotventures <[email protected]> Co-authored-by: FanDjango <[email protected]> Co-authored-by: FanDjango <[email protected]> Co-authored-by: leodoener <[email protected]> Co-authored-by: Chris Pepper <[email protected]> Co-authored-by: kisslorand <[email protected]> Co-authored-by: Zs.Antal <[email protected]> Co-authored-by: rafaljot <[email protected]> Co-authored-by: nb-rapidia <[email protected]> Co-authored-by: grauerfuchs <[email protected]> Co-authored-by: Foxies <[email protected]> Co-authored-by: Serhiy-K <[email protected]> Co-authored-by: Dick Streefland <[email protected]> Co-authored-by: cr20-123 <[email protected]> Co-authored-by: X-Ryl669 <[email protected]> Co-authored-by: Sean McGroty <[email protected]> Co-authored-by: Jan Krajdl <[email protected]> Co-authored-by: Darren Peter <[email protected]> Co-authored-by: ubik2 <[email protected]> Co-authored-by: Vi B-P <[email protected]> Co-authored-by: Ashammaru <[email protected]>
Hello, |
* MKS WiFi preliminary changes * More MKS WiFi * MKS WiFi strings * Fix Z label * Windows LPC Upload for non-admins (MarlinFirmware#20208) Co-authored-by: Victor Mateus Oliveira <[email protected]> Co-authored-by: Scott Lahteine <[email protected]> * Fix DAC setDrvPct (MarlinFirmware#20205) * [cron] Bump distribution date (2020-11-20) * Longer LK Pro / Alfawise PRO board (MarlinFirmware#20185) * Missing header to use suicide() on LVGL UI (MarlinFirmware#20214) * SINGLE_TOUCH_NAVIGATION Follow Up (MarlinFirmware#20213) * Printrboard labels * [cron] Bump distribution date (2020-11-21) * Fix backward Filament (Presence) Sensor pulls (MarlinFirmware#20228) Co-authored-by: Kurt Haenen <[email protected]> Co-authored-by: Scott Lahteine <[email protected]> * Fix bad SET_FAST_PWM_FREQ calls (MarlinFirmware#20227) * Superscript substitution (MarlinFirmware#20219) Co-authored-by: Scott Lahteine <[email protected]> * Power-Loss cleanup * BTN_ENC_EN for many boards (MarlinFirmware#19890) Enables CHECK_ENCODER_ACTIVE_SIGNAL for many more boards. Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Jason Smith <[email protected]> * Skip unnecessary (costly) SW Stepper Enable (MarlinFirmware#20218) Co-authored-by: Jason Smith <[email protected]> Co-authored-by: Scott Lahteine <[email protected]> * Fix Load Filament wait (MarlinFirmware#20243) * Proper pullup/pulldown configurability (MarlinFirmware#20242) Co-authored-by: Scott Lahteine <[email protected]> * [cron] Bump distribution date (2020-11-22) * Clear menu history for browse media on insert (MarlinFirmware#20236) Co-authored-by: Scott Lahteine <[email protected]> * Put "$3" on all tests * Move core conditionals earlier * Hide docker droppings * [cron] Bump distribution date (2020-11-23) * Fix UBL manual mesh adjust behavior (MarlinFirmware#20248) * Allow Status Message without LCD (MarlinFirmware#20246) * Fix dummy thermistors for Bed, Chamber, Probe (MarlinFirmware#20247) * Fix Z4 in ENABLE/DISABLE_AXIS_Z (MarlinFirmware#20256) This was accidentally broken in PR MarlinFirmware#20218 * [cron] Bump distribution date (2020-11-24) * LCD position in current units (MarlinFirmware#20145) * Set "lcd_move_e" index to fix the label (MarlinFirmware#20263) * Allow cold Filament Load/Unload with M302 P1 (MarlinFirmware#20262) Co-authored-by: Scott Lahteine <[email protected]> * No Z_MULTI_ENDSTOPS when HOMING_Z_WITH_PROBE (MarlinFirmware#20254) * Consistent Probe XY offset type * Cosmetic G29 ABL tweak * [cron] Bump distribution date (2020-11-25) * Update TOUCH_UI_LULZBOT_BIO wrappers * add missing header to use HAS_SD_HOST_DRIVE (MarlinFirmware#20270) * Fix COLOR_UI without TOUCH_SCREEN_CALIBRATION (MarlinFirmware#20269) * [cron] Bump distribution date (2020-11-26) * Probe Offset Wizard improvements (MarlinFirmware#20239) * Reduce warnings, extern "C" cleanup (MarlinFirmware#20279) * Retire HAL for STM32F4 / F7 (MarlinFirmware#20153) * Tweak some pin errors * MKS Robin E3 / E3D v1.1 (MarlinFirmware#20216) * Finish HAL/STM32 cpp wrappers * No auto debug for EEPROM_CHITCHAT * Optimize emergency parser check * Level Corners with Probe option (MarlinFirmware#20241) * [WIP] Fix Probe::offset_xy (MarlinFirmware#20290) Co-authored-by: Jason Smith <[email protected]> * [cron] Bump distribution date (2020-11-27) * M808 Repeat Markers (MarlinFirmware#20084) * FIX TMC menu message (MarlinFirmware#20294) * Fix BTT GTR 1.0 endstop/DIAG pins (MarlinFirmware#20296) * Fix G2/G3 arcs > 180° (MarlinFirmware#20292) * Group related homing options (MarlinFirmware#20283) Co-authored-by: Scott Lahteine <[email protected]> * Fix M73 LCD code typo (MarlinFirmware#20300) * [cron] Bump distribution date (2020-11-28) * [cron] Bump distribution date (2020-11-29) * Arc Direction followup for circles (MarlinFirmware#20314) * SKR E3 Turbo Controller Fan (MarlinFirmware#20320) * Fix STM32F1 'freeMemory()' warnings (MarlinFirmware#20319) * Leveling Fade Height default setting (MarlinFirmware#20316) * [cron] Bump distribution date (2020-11-30) * Adjust axis homed / trusted methods (MarlinFirmware#20323) * General cleanup * Increase E3V2 DWIN steps/mm range to 999.9 (MarlinFirmware#20324) * [cron] Bump distribution date (2020-12-01) * Prevent Watchdog reset writing Creality 4.x EEPROM (MarlinFirmware#20328) * Fix E3V2 Control Menu when returning from Info (MarlinFirmware#20338) * Tweak to EEPROM safe delay * [cron] Bump distribution date (2020-12-02) * Level Bed Corners is a sub-menu * Update to STM32 v10, optimize build (MarlinFirmware#20325) * Help hosts when password-locked (MarlinFirmware#20348) * Fix E3V2 DWIN Jerk Menu (MarlinFirmware#20352) * Fix E3V2 DWIN build without CLASSIC_JERK * Fix jerk edits applying to wrong index * Permit SD EEPROM emulation on E3V2 (MarlinFirmware#20353) * [cron] Bump distribution date (2020-12-03) * Fix circle arc condition (MarlinFirmware#20322) * Fix up start, monitor baud (MarlinFirmware#20326) * Consolidate common pin includes * Require minimum PlatformIO version (MarlinFirmware#20361) Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Jason Smith <[email protected]> * [cron] Bump distribution date (2020-12-04) * Fix MESH_BED_LEVELING w/o SEGMENT_LEVELED_MOVES (MarlinFirmware#20363) * Loosen E on pause for fila-manipulation (MarlinFirmware#20346) Co-authored-by: Scott Lahteine <[email protected]> * [cron] Bump distribution date (2020-12-05) * Don’t use near keyword as variable name (MarlinFirmware#20374) * Improved Longer3D LKx Pro board (MarlinFirmware#20372) Co-authored-by: mrv96 <[email protected]> * Fix TMC_HOME_PHASE divide by zero (MarlinFirmware#20368) * Suspend Servos for STM32+NeoPixel (MarlinFirmware#19963) * Add Creality 4.5.2 board (MarlinFirmware#20378) Co-authored-by: Jason Smith <[email protected]> * [cron] Bump distribution date (2020-12-06) * Fix FYSETC S6 I2C EEPROM size (MarlinFirmware#20340) Both V1.2 and V2.0 boards have a 24LC16, which is a 2kB EEPROM. Co-authored-by: PingWin <[email protected]> Co-authored-by: Jason Smith <[email protected]> * Creality 4.5.2 format and fix * Use 'nearby' for 'near' * ExtUI homing / leveling additions * Move G29 3-point startup earlier * Fix STM32F1 SERIAL_GET_TX_BUFFER_FREE * G28 tweaks * G28 followup * Avoid invalid memory optimizations (MarlinFirmware#20389) When building for AVR, merge-all-constants can incorrectly combine constants stored in flash with constants stored in RAM. These have different access requirements, leading to undefined behavior during execution. Co-authored-by: ellensp <[email protected]> * [cron] Bump distribution date (2020-12-07) * Fix fileExists, use openFailed * Watch idle() depth over 5 * More LPC P-string macros * Fix auto#.g file handling, add NO_SD_AUTOSTART (MarlinFirmware#20071) * Shorten Filament Load/Unload Strings to Fit on Graphical Displays (MarlinFirmware#20369) Co-authored-by: ellensp <[email protected]> Co-authored-by: Victor Mateus Oliveira <[email protected]> * Allow BTT EXP-MOT be used with Displays that needs only EXP 1 (MarlinFirmware#20396) Co-authored-by: ellensp <[email protected]> Co-authored-by: Victor Mateus Oliveira <[email protected]> * [cron] Bump distribution date (2020-12-08) * SPI TFT for STM32F4 boards (MarlinFirmware#20384) * fix pinsDebug for F1 boards * add MKS Robin PRO V2 board - development board * tft spi working with F4 boards * pins formating * sanity check for TFT on supported cores in STM32 * Fix tabs/spaces in pins file Co-authored-by: Jason Smith <[email protected]> * [cron] Bump distribution date (2020-12-09) * Style, spacing, typo cleanup for recent changes * Clarify Delta & SCARA config location (MarlinFirmware#20403) * Allow positive Z nozzle to probe offset (MarlinFirmware#20344) * Allow a positive value for z offset from nozzle to probe without sanity checks * Simplify menu_probe_offset.cpp (HOMING_Z_WITH_PROBE) * Add some more explanation to Configuration Files * Raise after probe_at_point as if homed Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Jason Smith <[email protected]> * Fix Spindle/Laser Control menu (MarlinFirmware#20347) * Fixes and additions to FTDI EVE Touch UI (MarlinFirmware#20393) - Fixed name conflict with "SUBSCRIPT_TWO" - Fixed rendering bugs in "Leveling Menu" - Only show "Bed Mesh Screen" when UBL is enabled - Removed CocoaPress code from generic "Main Menu" - Removed CocoaPress code from LulzBot Bio "Status" screen - Moved generic "Move Axis" functionality into a base class - Added CocoaPress custom screens: - Status Screen - Unload Cartridge - Load Chocolate - Main Menu - Advanced Settings - XYZ Move (based on "Move Axis" base class) - Extrusion Move (based on "Move Axis" base class) - CocoaPress tweaks to "Temperature" screen - Fix FTDI EVE Touch UI compilation errors when not using leveling. * Move ExtUI ABL mesh edit, limit to bilinear (MarlinFirmware#20381) * Move ExtUI call Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Victor Mateus Oliveira <[email protected]> Co-authored-by: Sebastiaan Dammann <[email protected]> * MKS Robin Pins fixes for STM32 and STM32F1 (MarlinFirmware#20404) Co-authored-by: Scott Lahteine <[email protected]> * [cron] Bump distribution date (2020-12-10) * Clarify "not Interrupt-capable" error message (MarlinFirmware#20419) * Fix UBL Debug Messages (MarlinFirmware#20423) Co-authored-by: ellensp <[email protected]> * [cron] Bump distribution date (2020-12-11) * Z_SENSORLESS sanity checks (MarlinFirmware#20421) Co-authored-by: Jason Smith <[email protected]> * Probe offset wizard fixes (MarlinFirmware#20414) * STOW probe, reverting incorrect earlier change from MarlinFirmware#20344 * Adjust soft endstop disables, to ensure travel below bed functions properly Co-authored-by: FanDjango <[email protected]> * SENSORLESS_PROBING sanity check followup (MarlinFirmware#20438) * [cron] Bump distribution date (2020-12-12) * Better animated boot screen * Fix SDCARD_SORT_ALPHA on Ender 3 V2 (MarlinFirmware#20443) * Add HAS_PIN_27_BOARD for CREALITY_V4 (MarlinFirmware#20446) Co-authored-by: ellensp <[email protected]> * Improve ASSISTED_TRAMMING_WIZARD probe stowing (MarlinFirmware#20437) * When BLTOUCH_HS_MODE enabled, stow pin before user interaction * For all probes, ensure probe stows at end of wizard * [cron] Bump distribution date (2020-12-13) * Probe Offset Wizard followupBack to PROBE_PT_RAISE/separate STOW, make "PROBING" msg appear (MarlinFirmware#20439) * Go back to always use PROBE_PT_RAISE with a discrete stow. This ensures a raise above the bed, while stowing prior to exiting the wizard. * Fix issue preventing text while moving to X/Y position Co-authored-by: FanDjango <[email protected]> * Adjust planner debugging * SHORT_MANUAL_Z_MOVE => FINE_MANUAL_MOVE * [cron] Bump distribution date (2020-12-14) * LPC176x framework update (MarlinFirmware#20469) * [cron] Bump distribution date (2020-12-15) * Fix formatting * Preheat before leveling * Always enable leveling after G28 * Trust that script -x flags will always be set (MarlinFirmware#20453) * Fix M1001 auto-check logic (MarlinFirmware#20456) * Auto-check followup * Please install the EditorConfig plugin * Fix RESTORE_LEVELING_AFTER_G28 (MarlinFirmware#20471) * Creality v4.5.3 (CR-6 SE, CR-6 MAX) (MarlinFirmware#20468) * Update some pins errors * Update some LCD includes * Trust STM32 gcc versions * [cron] Bump distribution date (2020-12-16) * Update Italian language (MarlinFirmware#20480) * Update Hungarian language Co-Authored-By: Zs.Antal <[email protected]> * Update French language (MarlinFirmware#20472) * [cron] Bump distribution date (2020-12-17) * Use homing_feedrate function * Homing feedrates as XYZ array (MarlinFirmware#20426) Co-authored-by: Scott Lahteine <[email protected]> * Fix ZoneStar LCD 2004 buttons (MarlinFirmware#20489) * Make M220 B / R a standard feature (MarlinFirmware#20355) * Balance CI tests (MarlinFirmware#20485) * Fix and optimize MightyBoard (MarlinFirmware#20493) * [cron] Bump distribution date (2020-12-18) * MKS Robin Nano V3 and STM32F4x0Vx Variant (MarlinFirmware#20430) * DOGM: Slow down touchscreen calibration (MarlinFirmware#20454) * [cron] Bump distribution date (2020-12-19) * Rename QUIET_PROBING * Tweaks for pins_BTT_SKR_common.h * [cron] Bump distribution date (2020-12-20) * Let boards set Default TMC Slave Addresses (MarlinFirmware#20498) Co-authored-by: Scott Lahteine <[email protected]> * Minimum temp options for Probing and G12 Nozzle Clean (MarlinFirmware#20383) Co-authored-by: Jason Smith <[email protected]> Co-authored-by: Scott Lahteine <[email protected]> * Probe Tare, Probe Activation Switch (MarlinFirmware#20379) Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Victor Mateus Oliveira <[email protected]> Co-authored-by: Jason Smith <[email protected]> * Fix Creality EEPROM watchdog freq. (MarlinFirmware#20510) * Migrate Hispeedv1 (QQS-Pro) to HAL/STM32 (MarlinFirmware#20354) * Languages cleanup * Update Russian and Ukrainian languages (MarlinFirmware#20508) * Fix PIO typo * [cron] Bump distribution date (2020-12-21) * Get E3V2 DWIN `MACHINE_SIZE` from config (MarlinFirmware#20526) * Apply HOME_AFTER_DEACTIVATE for 'G28 O' (MarlinFirmware#20525) * Clean up some pins * Add BTT SKR CR6 board (MarlinFirmware#20522) * Fix G34 compile with bed leveling disabled (MarlinFirmware#20537) * Fix some Russian (MarlinFirmware#20529) * Robin pins followup * Tweak FTDI spacing * Add Tune -> Advanced Settings to FTDI EVE (MarlinFirmware#20532) * [cron] Bump distribution date (2020-12-22) * 12-bit ADC resolution for STM32 (MarlinFirmware#20519) * FTDI EVE custom user menus (MarlinFirmware#20518) * Improve STM32 timer conflict messages (MarlinFirmware#20544) * Fix UBL mesh inset Z position (MarlinFirmware#20538) * Overrides to prevent STM32 timer conflicts (MarlinFirmware#20545) * Improve Touch Calibration screen (MarlinFirmware#20524) * Creality v4.3.1 (Ender 6) board (MarlinFirmware#20512) * Anet ET4 / ET4P and Anet TFT28 / TFT35 (MarlinFirmware#20280) * STM32F1xx support for TFTGLCD (MarlinFirmware#20515) * Unify FYSETC F6 1.3 / 1.4 (MarlinFirmware#20507) Co-authored-by: Scott Lahteine <[email protected]> * Fix G28 leveling state, UBL compile (MarlinFirmware#20499) * Support RGBW on PCA9632 (MarlinFirmware#20455) Co-authored-by: Scott Lahteine <[email protected]> * [cron] Bump distribution date (2020-12-23) * Refactor 'Level Corners with Probe' (MarlinFirmware#20460) Co-authored-by: Scott Lahteine <[email protected]> * Improve plan_arc circle detection (MarlinFirmware#20440) Co-authored-by: Scott Lahteine <[email protected]> * FTDI EVE: Cyrillic font, some minor fixes (MarlinFirmware#20517) * Enhanced Italian language (MarlinFirmware#20551) * Probe Activation Switch followup (MarlinFirmware#20550) * Support ANET_FULL_GRAPHICS_LCD_ALT_WIRING on BTT SKR 1.4 (MarlinFirmware#20427) * Apply ENABLED in ExiUI / FTDI * Remaining Time for FTDI EVE, bp for ExtUI (MarlinFirmware#20549) Co-authored-by: Scott Lahteine <[email protected]> * Add OPTIMIZED_MESH_STORAGE option (for UBL) (MarlinFirmware#20371) Co-authored-by: Scott Lahteine <[email protected]> * [cron] Bump distribution date (2020-12-24) * Move BTT_SKR_CR6 * LVGL and Classic UI for STM32 (MarlinFirmware#20552) * Add "End Repeat Loops" menu item * Fix DOGM status message scrolling (MarlinFirmware#20557) * Fix ST7920 timing for Rumba32, Fysetc S6 (MarlinFirmware#20556) * Fix, clean up FTDI EVE Touch UI (MarlinFirmware#20466) Co-Authored-By: Marcio T. <[email protected]> * Apply NO_MOTION_BEFORE_HOMING to joystick motion (MarlinFirmware#20462) Co-authored-by: Scott Lahteine <[email protected]> * Cutter Power in percent format (MarlinFirmware#20410) Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Jason Smith <[email protected]> Co-authored-by: Luu Lac <[email protected]> * [cron] Bump distribution date (2020-12-25) * [cron] Bump distribution date (2020-12-26) * [cron] Bump distribution date (2020-12-27) * Fix SPINDLE_LASER_FREQUENCY (MarlinFirmware#20509) * Fix some comments * Remove CREALITY_TOUCH * Add probe_switch_activated * Init tare pin once * [cron] Bump distribution date (2020-12-28) * Validate defined probe points (MarlinFirmware#20572) * General cleanup * Allow define HOMING_FEEDRATE_(XY|Z) * Remove URL scheme * Small / Large Boot Screen option for TFT_COLOR_UI (MarlinFirmware#20578) * Better defaults, compatibility for SDIO + STM32 (MarlinFirmware#20570) * Fix Menu Mixer for Color UI (MarlinFirmware#20566) * Use ADC_RESOLUTION 12 for all STM32 (MarlinFirmware#20562) * Fix LVGL_UI G-code preview (MarlinFirmware#20564) * Fix Change Filament menu actions (MarlinFirmware#20565) Co-authored-by: Scott Lahteine <[email protected]> * Menu item index followup * [cron] Bump distribution date (2020-12-29) * Apply SHOW_BOOTSCREEN to TFT_COLOR_UI (MarlinFirmware#20586) * LVGL G-code preview. Legacy MKS WiFi Cura plugin compatibility (MarlinFirmware#20589) * Clarify sanity-check for custom status bitmap (MarlinFirmware#20588) * Pins, comment cleanup * USB FD via native USB Host + MSC (MarlinFirmware#20571) * Support 4.3" (480x272) Color UI display (MarlinFirmware#20334) * [cron] Bump distribution date (2020-12-30) Co-authored-by: Scott Lahteine <[email protected]> Co-authored-by: Vitaliy <[email protected]> Co-authored-by: Victor Mateus Oliveira <[email protected]> Co-authored-by: Orel <[email protected]> Co-authored-by: thinkyhead <[email protected]> Co-authored-by: Ajtak <[email protected]> Co-authored-by: Kurt Haenen <[email protected]> Co-authored-by: Kurt Haenen <[email protected]> Co-authored-by: Simone Primarosa <[email protected]> Co-authored-by: Gurmeet Athwal <[email protected]> Co-authored-by: Jason Smith <[email protected]> Co-authored-by: qwewer0 <[email protected]> Co-authored-by: rdhoggattjr <[email protected]> Co-authored-by: ellensp <[email protected]> Co-authored-by: pseudex <[email protected]> Co-authored-by: swissnorp <[email protected]> Co-authored-by: mks-viva <[email protected]> Co-authored-by: wmariz <[email protected]> Co-authored-by: Štěpán Dalecký <[email protected]> Co-authored-by: BsCmOD <[email protected]> Co-authored-by: yysh12 <[email protected]> Co-authored-by: Sergey1560 <[email protected]> Co-authored-by: Thomas Niccolo Reyes <[email protected]> Co-authored-by: Alexander D. Kanevskiy <[email protected]> Co-authored-by: Mathias Rasmussen <[email protected]> Co-authored-by: Luu Lac <[email protected]> Co-authored-by: Belin Fieldson <[email protected]> Co-authored-by: Tanguy Pruvot <[email protected]> Co-authored-by: mrv96 <[email protected]> Co-authored-by: InsanityAutomation <[email protected]> Co-authored-by: LinFor <[email protected]> Co-authored-by: PingWin <[email protected]> Co-authored-by: ellensp <[email protected]> Co-authored-by: Keith Bennett <[email protected]> Co-authored-by: Mike La Spina <[email protected]> Co-authored-by: Marcio T <[email protected]> Co-authored-by: Sebastiaan Dammann <[email protected]> Co-authored-by: ellensp <[email protected]> Co-authored-by: elasticdotventures <[email protected]> Co-authored-by: FanDjango <[email protected]> Co-authored-by: FanDjango <[email protected]> Co-authored-by: leodoener <[email protected]> Co-authored-by: Chris Pepper <[email protected]> Co-authored-by: kisslorand <[email protected]> Co-authored-by: JoAnn Manges <[email protected]> Co-authored-by: Giuliano Zaro <[email protected]> Co-authored-by: Zs.Antal <[email protected]> Co-authored-by: rafaljot <[email protected]> Co-authored-by: nb-rapidia <[email protected]> Co-authored-by: grauerfuchs <[email protected]> Co-authored-by: Foxies <[email protected]> Co-authored-by: Serhiy-K <[email protected]> Co-authored-by: Dick Streefland <[email protected]> Co-authored-by: cr20-123 <[email protected]> Co-authored-by: X-Ryl669 <[email protected]> Co-authored-by: Sean McGroty <[email protected]> Co-authored-by: Jan Krajdl <[email protected]> Co-authored-by: Darren Peter <[email protected]> Co-authored-by: ubik2 <[email protected]> Co-authored-by: Vi B-P <[email protected]> Co-authored-by: Ashammaru <[email protected]>
Co-authored-by: Scott Lahteine <[email protected]>
I think I would argue we should store all the mesh data in the same format and using as much of the common infrastructure as possible. A long time ago we put the mesh data for all the leveling systems in the same place and switched everything to use the same #defines to specify size. If you have the energy to get the other bed leveling systems to use this... I'll help get it merged. |
Co-authored-by: Scott Lahteine <[email protected]>
Co-authored-by: Scott Lahteine <[email protected]>
Co-authored-by: Scott Lahteine <[email protected]>
Co-authored-by: Scott Lahteine <[email protected]>
Co-authored-by: Scott Lahteine <[email protected]>
Co-authored-by: Scott Lahteine <[email protected]>
Description
Adds a configuration option to AUTO_BED_LEVELING_UBL that will cause the step values to be stored instead of the raw z values.
Before saving the values, they are converted into an array of z_step_values, and we store those instead. When we load a configuration, we convert them back into z_values.
I think the granularity of the z_step_values is the most precision you can take advantage of, so the extra range of a float isn't needed. On the other extreme, even with a steps_per_unit of 4000 on Z, you still have room for +/- 8mm in the int16_t.
After enabling this option, the existing stored values (stored without the option) will not be correct, and you will need to probe again and save the results. Similarly, after disabling it, those stored values created with it enabled will not be correct. This is similar to other changes, like the number of grid points, which also invalidate the stored data.
Benefits
For some machines, like the Ender 3, you only have 2k of EEPROM, and with the 10x10 grid, each saved bed takes 400 bytes, since the z value is a float. The same configuration storing int16_t values takes 200 bytes, which lets me store the results for different beds.
Configurations
I left the feature turned off, since I think that's the appropriate default. Users running low on EEPROM can enable it if needed, by uncommenting the option in Configuration_adv.h
Related Issues