Commit graph

279 commits

Author SHA1 Message Date
Marcio Teixeira
00fc43144a Follow up fixes to various PRs. (#13334)
- Ensure `MarlinUI:get_progress` is defined for `ExtUI`.
- Fix for `BACKLASH_SMOOTHING` with small segments.
  `BACKLASH_SMOOTHING` with extremely small segments failed to fully correct due to the correction factor being rounded down. Rounding up ensures the entire backlash will converge to zero even for small segments.
- Add pinout for the beta revision `EINSY_RETRO`.
- Update soft endstops with tool offsets (for toolchange et. al. move clamping) (#12568)
2019-03-09 14:20:37 -06:00
3dlabsio
645ca7af7a M141 Heated Chamber, Temperature rework (#12201) 2019-03-07 02:09:39 -06:00
Scott Lahteine
cfdb38eda4
Allow SERIAL_ECHOPAIR to take up to 12 pairs (#13311) 2019-03-05 06:46:19 -06:00
Vasily Evseenko
71773b128d Fix stepper use before init. Add Ultimaker2+ Extended clone config (#13284) 2019-03-02 17:29:02 -06:00
Giuliano Zaro
2616e4d4d9 Remove duplicated 'chitchat' defines (#13258) 2019-02-25 16:13:01 -06:00
Scott Lahteine
808b076000 Update some ABL/UBL conditionals 2019-02-25 16:01:42 -06:00
Scott Lahteine
e15354e387
Simplify serial port redirect (#13234) 2019-02-23 22:53:01 -06:00
Scott Lahteine
3c9a7926c2 Fix compile error with JUNCTION_DEVIATION
See #13000
2019-02-20 04:54:26 -06:00
Scott Lahteine
0feeef2604 Update copyright in headers 2019-02-12 15:30:11 -06:00
Rolf Werum
524c6c10bf MAGNETIC_PARKING_EXTRUDER (#12351) 2019-02-06 06:30:53 -06:00
Scott Lahteine
4200bd2fc1
Report on M92 with no arguments (#12833) 2019-02-04 05:24:15 -06:00
Scott Lahteine
d4d1b28a06 Fix some include paths 2019-02-04 03:57:15 -06:00
Scott Lahteine
4fa1c52688 Tweak serial output code 2019-02-03 01:09:14 -06:00
teemuatlut
e6805582a6 M569 to change stepping mode. Add new TMC section to LCD. (#12884) 2019-01-17 13:17:16 -06:00
Scott Lahteine
19fea772e5 Use E_AXIS_N where it makes sense 2019-01-11 19:42:34 -06:00
Scott Lahteine
371d9a1acf Fix line-endings, formatting, whitespace
Followup to #12770
2018-12-30 15:38:20 -06:00
Ludy
135c74017c Fix compile DEBUG_EEPROM_READWRITE error (#12746) 2018-12-30 11:37:20 -06:00
Ludy
cfc5e96b4b Move JD to Config.h (and fix jerk->eeprom bug) (#12720) 2018-12-27 15:29:39 -06:00
Scott Lahteine
e8bda62d2a Followup to servo angles patch
Fix #12594
2018-12-08 15:31:59 -06:00
Scott Lahteine
aaf862aef2
Fix angles for disabled EDITABLE_SERVO_ANGLES (#12559) 2018-11-30 12:31:42 -06:00
Scott Lahteine
c986239837
A single SERIAL_ECHO macro type (#12557) 2018-11-29 16:58:58 -06:00
Ludy
22d7fed60a Fix compile error with SD_FIRMWARE_UPDATE (#12462) 2018-11-17 21:13:36 -06:00
Scott Lahteine
d97e31db4c
Optimize Power-Loss Recovery (#12440) 2018-11-16 20:47:07 -06:00
Scott Lahteine
a0c795b097
Encapsulate common display code in a singleton (#12395)
* Encapsulate common LCD code in a singleton
* Depend more UBL code on UBL_DEVEL_DEBUGGING
  - Since most users don't need the debugging on at all times, this helps reduce the default build size for UBL by over 2K, a little closer to fitting on 128K boards.
2018-11-11 12:16:24 -06:00
Scott Lahteine
ef724edd80 Apply HAS_LCD_MENU in EEPROM code 2018-11-08 10:03:05 -06:00
InsanityAutomation
6471a75a22 Combine more tool-change variables (#12137) 2018-11-06 22:22:20 -06:00
Scott Lahteine
c04cf127f7 Fix EEPROM servo angles init, section grouping 2018-11-04 16:14:54 -06:00
Scott Lahteine
d1ff22b983 Revive SCARA's home offset (unimplemented) 2018-11-03 06:24:41 -05:00
Scott Lahteine
31c28d0dd2
Drop pgm_read_*_near and let headers choose (#12301)
- Drop `pgm_read_*_near` and let headers choose.
- Define `USE_EXECUTE_COMMANDS_IMMEDIATE` as a conditional.
- Add `process_subcommands_now` for SRAM-based commands.
2018-11-02 00:42:16 -05:00
Scott Lahteine
946cf8b453 EEPROM read code grouping 2018-10-31 16:43:46 -05:00
Scott Lahteine
d015f746cc
Fix some compile warnings (#12220) 2018-10-26 03:53:06 -05:00
Roman Moravčík
d801f85963 Correct EEPROM read/write disparities. (#12169) 2018-10-21 02:56:31 -05:00
Scott Lahteine
b641571098 Replace types.h with millis_t.h 2018-10-20 23:07:12 -05:00
InsanityAutomation
3ec3872730 Single Z raise value for all tool-changing / parking (#12090)
* Universal tool-change Z lift
* Add TOOLCHANGE_ZRAISE to example configs
* Park/unpark changes to example configs
* Implement DEBUG_DXC_MODE
2018-10-17 11:11:41 -05:00
Scott Lahteine
8bf596bd4c RETRACT_ZLIFT => RETRACT_ZRAISE 2018-10-16 16:46:40 -05:00
Karl Andersson
a40458405a Fix datasize error when FWRETRACT is disabled (#12086) 2018-10-14 02:14:34 -05:00
Scott Lahteine
951b25163e
Extend M217 with configurable park/raise (#12076) 2018-10-13 23:08:20 -05:00
Scott Lahteine
e8d2cf4fb5 EEPROM followup (tmc_stepper_current_t) 2018-10-10 17:25:45 -05:00
InsanityAutomation
d332fcb8fa Fix firmware-retract compile errors (#12061) 2018-10-10 16:46:08 -05:00
Scott Lahteine
d556dc1865
Fix and improve EEPROM storage (#12054)
* Clean up Temperature PID
* Improve EEPROM read/write/validate
* Group `SINGLENOZZLE` saved settings
* Group planner saved settings
* Group filament change saved settings
* Group skew saved settings
* Group `FWRETRACT` saved settings
2018-10-10 09:45:20 -05:00
Scott Lahteine
9b5c1a5e77 Fix EEPROM checksum bug
Addressing #12048
2018-10-10 06:14:58 -05:00
Scott Lahteine
cf5284cdf2
Add SD Firmware Update capability (#12043)
Co-Authored-By: timoxd7 <timoxd7@users.noreply.github.com>
2018-10-09 20:00:47 -05:00
InsanityAutomation
74cd6cb4fc Single nozzle filament change (#11994) 2018-10-07 17:06:14 -05:00
Scott Lahteine
d6b0fbd771
Use uint8_t for all fan speeds (#12032) 2018-10-07 15:34:41 -05:00
Scott Lahteine
e8d677620c Use NUM_SERVOS in EEPROM code
Fix #12015
2018-10-06 15:11:32 -05:00
Scott Lahteine
c40ea1f0fd Update EEPROM_VERSION
And set EEPROM_OFFSET to 0, since the historical 100 skipped bytes are never used.
2018-10-03 11:34:34 -05:00
Scott Lahteine
1358bd9319 Make MAX_EXTRUDERS always 6 2018-10-03 11:32:19 -05:00
teemuatlut
c3229e1b34 Migrate to a new TMC library (#11943) 2018-10-03 02:48:49 -05:00
Thomas Moore
3286325044 Add TMC2130 sensorless probing 2018-09-29 18:54:14 -05:00
Victor Tseng
93839e2f73 Add option to enable/disable autoretract altogether (#11904) 2018-09-28 16:52:56 -05:00
Scott Lahteine
cee34f7290
Followup for BABYSTEP_HOTEND_Z_OFFSET (#11916) 2018-09-24 21:46:56 -04:00
InsanityAutomation
1104054d73 2.0 IDEX Independent z offset and other fixes (#11862)
* Add Formbot Raptor board

Co-Authored-By: InsanityAutomation <insanityautomation@users.noreply.github.com>

* Add a second Z probe Z offset

Co-Authored-By: InsanityAutomation <insanityautomation@users.noreply.github.com>

* Modify method to utilize live adjustment of hotend z offset

Should probably move config option to babystepping and rename as it may now apply to all multiextruder systems

* Move config item and catchup other code to current method
2018-09-24 09:40:48 -05:00
Scott Lahteine
ea9eb2fc8f Fix servo angles in config-store 2018-09-21 15:41:36 -04:00
Scott Lahteine
beab9733f8 Remove extra clauses in config-store 2018-09-19 17:06:51 -05:00
Roxy-3D
0780913848 IDEX Improvements (#11848) 2018-09-17 01:06:22 -05:00
Scott Lahteine
1718eff54a Code changes supporting up to 6 extruders 2018-09-16 22:32:53 -05:00
Thomas Moore
c437bb08f1 Overhaul of the planner (#11578)
- Move FWRETRACT to the planner
- Combine leveling, skew, etc. in a single modifier method
- Have kinematic and non-kinematic moves call one planner method
2018-09-16 21:24:15 -05:00
Holger Müller
1a6f2b29b8 Add support for Triple-Z steppers/endstops 2018-09-16 00:35:58 -05:00
Scott Lahteine
8584d3697d Fix servo count define conflict
`MAX_SERVOS` => `NUM_SERVO_PLUGS`
2018-09-11 16:20:31 -05:00
Sam Lane
4f883d5971 [2.0.x] Extruder-Distinct Linear Advance K Factors (#11789) 2018-09-10 22:37:32 -05:00
Scott Lahteine
8e18e48d49
Merge pull request #11610 from Freeviv/bugfix-2.0.x
[2.0.x] Editable servo angles
2018-09-03 03:55:38 -05:00
scott0122
ada85d5585 Improve HOTEND OFFSET Z display precision to 3 (#11686) 2018-08-31 15:15:40 -05:00
Scott Lahteine
3e81745e81 Fix issues, make optional 2018-08-29 17:58:02 -05:00
Jan
aa80e448e2 Store servo angles in EEPROM 2018-08-29 17:58:02 -05:00
Scott Lahteine
d1c9517903 Followup to hotend_offset[Z] patch 2018-08-24 21:32:00 -05:00
Dave Johnson
c64199941e Compile only selected PIO environment (#11519) 2018-08-14 03:28:52 -05:00
Scott Lahteine
6a8b906318 Followup for persistent_store_api.h 2018-08-13 17:43:35 -05:00
Chris Pepper
66d2b48b59 Update PersistentStore api (#11538)
- Clean up the API to use a `static` class instance to adhere to Marlin convention
- Add `const` position data access for read/write
- Add Storage capacity to the interface
2018-08-13 17:30:25 -05:00
teemuatlut
fbcdf5eaeb Simplify stepper driver per-axis selection 2018-07-25 02:47:43 -05:00
Roxy-3D
71df1f7f57
Don't display M421 information for UBL at startup
It takes too long to display the mesh data for large mesh's at startup.   We should consider ways to speed this up.
Perhaps it makes sense to display an entire row of the mesh instead of just one mesh point?
2018-07-17 17:19:52 -05:00
Scott Lahteine
63f4c9bdb9 Followup to float maths patch 2018-07-06 21:34:09 -05:00
etagle
1367df2875 Replace double with float, optimize calculation 2018-07-04 22:28:56 -05:00
Andy Shaw
3b3029c4bf Make max_e_jerk an array to reduce CPU usage (#11118) 2018-06-26 22:38:31 -04:00
Giuliano
8d8f257384 [2.0.x] Fix advanced pause init values (#11095)
Fixed for cycle used to initialize default values
2018-06-26 14:37:52 -04:00
Scott Lahteine
da94e0bd27 Unsigned eeprom mesh addresses 2018-06-15 15:51:57 -05:00
Scott Lahteine
9d04f47d98 Improvements for junction_deviation_mm
- Drop `max_jerk` with `JUNCTION_DEVIATION`
- Add `max_e_jerk_factor` for use by `LIN_ADVANCE`
- Recalculate `max_e_jerk_factor` when `junction_deviation_mm` changes
- Fix LCD editing of `junction_deviation_mm`
2018-06-11 22:05:16 -05:00
Scott Lahteine
a2f521d34b
Add Junction Deviation mm runtime setting (#10990) 2018-06-10 18:02:54 -05:00
Scott Lahteine
55aedf036b Fix M503 ABL mesh report. (Zero-based IJ indices) 2018-06-07 16:36:50 -05:00
Scott Lahteine
d8b983f624
More concise M503 output for M906, M913, M914 (#10947) 2018-06-06 20:58:28 -05:00
Scott Lahteine
83d42f33e1 Add HAS_HOTEND_OFFSET_Z conditional 2018-05-19 17:05:15 -05:00
GMagician
3c76bda2d8 Fix switching extruder
`DONT_SWITCH` got lost along the way. Replace it with `DO_SWITCH_EXTRUDER` and adjust the code.
2018-05-19 17:05:15 -05:00
Scott Lahteine
08e36e264e Apply _AXIS macro 2018-05-13 06:51:01 -05:00
Scott Lahteine
625035a9ce
Fix M301 access to lpq_len (#10714)
Co-Authored-By: Zwaubel
2018-05-12 02:13:40 -05:00
Giuliano
d99f1b2245 [2.0.x] EEPROM code cleanup (#10710) 2018-05-11 18:06:04 -05:00
Scott Lahteine
b76344c080 More Trinamic cleanup 2018-05-10 00:12:10 -05:00
Scott Lahteine
6d9ec1852a Fix compilation of say_units
Fixes #10663
2018-05-09 00:30:29 -05:00
Scott Lahteine
55f1f8446b Show correct current units in M503 2018-05-08 06:29:53 -05:00
Sean
2d9b0a66fe Add Filament Change accelerations 2018-04-09 23:57:27 -05:00
Scott Lahteine
4c79dc1093 Fix a Serial+EEPROM compile error
Fixes #10278
2018-04-02 03:11:20 -05:00
Scott Lahteine
02f0f95d40
Handle disabled HYBRID_THRESHOLD in EEPROM (#10275) 2018-04-01 16:58:37 -05:00
Scott Lahteine
2bc7f416ee Fix missing comma in tmc_sgt
Fixes #10209
2018-03-28 17:05:14 -05:00
Bob-the-Kuhn
9656a82609 Fix G53/CNC_COORDINATE_SYSTEMS compilation, Travis testing (#10227) 2018-03-28 14:14:39 -04:00
Scott Lahteine
b287560258 Fix say_M603 2018-03-28 12:54:58 -05:00
Bob-the-Kuhn
8870f9b1da Fix M503 helper functions following TMC updates (#10197) 2018-03-23 16:43:43 -05:00
Scott Lahteine
9da0797e29 Fix EEPROM size of tmc_hybrid_threshold
Followup to #10102
2018-03-23 02:08:35 -04:00
Roxy-3D
1628a9e864
make data declarations consistent 2018-03-22 19:25:28 -05:00
Scott Lahteine
a46bac3100 Add 'I' parameter to M906/M913/M914; 'T' to M906/M913 2018-03-19 22:05:16 -05:00
Scott Lahteine
c95450016b Improve Trinamic support in the EEPROM 2018-03-19 22:05:16 -05:00
Scott Lahteine
772810fb24 Followup to PORTVAR patch 2018-03-18 19:23:58 -05:00
Scott Lahteine
4aebe3d82e Pretty up EEPROM port args 2018-03-14 22:44:25 -05:00
Scott Lahteine
239902f861 Fix E2END and add EEPROM to Smart RAMPS
Reference #9983
2018-03-10 06:57:31 -06:00
Scott Lahteine
49ca67202f Patch configuration_store for extra serial port
Fix #9948
2018-03-09 07:42:27 -06:00
Scott Lahteine
966d9af98a Mesh export in Bilinear + UBL M503 2018-02-25 23:25:39 -06:00
Scott Lahteine
8d5a77001e EEPROM parity with 1.1.x 2018-02-25 23:03:09 -06:00
Scott Lahteine
0557ab5780 Fix CONFIG_ECHO_START bug
In reference to #9633
2018-02-25 05:34:52 -06:00
Scott Lahteine
2bd252b501
[2.0.x] LIN_ADVANCE v1.5 (#9712) 2018-02-23 00:53:29 -06:00
teemuatlut
5968a3e60e Add ADVANCED_PAUSE_FEATURE include 2018-02-22 20:28:46 +02:00
Scott Lahteine
472229b974 Fix #9681 2018-02-17 08:28:12 -06:00
Thomas Moore
1541224a81 Enable Z axis and delta sensorless homing (#9516) 2018-02-08 04:20:44 -06:00
Scott Lahteine
2bea1bda56 Move more strings to PROGMEM 2018-01-24 00:06:06 -06:00
Scott Lahteine
1dcfe193ac Optimize some serial strings 2018-01-23 19:14:00 -06:00
Scott Lahteine
f7f8569bbf Fix skew settings report precision
Followup to changes from #8843
2018-01-22 08:32:47 -06:00
Scott Lahteine
90d011cc48 Use ADD_PORT_ARG for all cases 2018-01-22 06:27:22 -06:00
Thomas Moore
429e6ba8a6 Fix lcd_preheat dummy variable types 2018-01-19 15:24:13 -06:00
Thomas Moore
cfd989d7c5 Fix EEPROM SettingsData for 32-bit architectures 2018-01-12 19:38:23 -06:00
Bob-the-Kuhn
e633ce06c7 LCD contrast type mismatch is back
WORKS!
2018-01-11 10:32:58 -06:00
Thomas Moore
f7efac57b7 Multi-host support 2018-01-10 00:14:47 -06:00
Scott Lahteine
7e000e6af4
More EEPROM field debugging (#9123) 2018-01-09 18:33:44 -06:00
Scott Lahteine
99516572b1 Fix TMC current read from EEPROM 2018-01-07 20:48:46 -06:00
Scott Lahteine
60d07f20e7 Make mbl.has_mesh() a method 2018-01-07 00:13:36 -06:00
Scott Lahteine
2b5a9be49c
Fix M503 skew output
Followup to 19e75ccf86
2018-01-06 20:55:57 -06:00
Scott Lahteine
702c8acdd5 Settings FIELD_TEST fix 2018-01-05 19:13:30 -06:00
Scott Lahteine
e89f1453ab UBL G29 works without settings.load() 2018-01-05 15:48:34 -06:00
Scott Lahteine
950be70a33 Add FIELD_TEST to validate storage 2018-01-05 15:48:34 -06:00
Scott Lahteine
760c912ab9 Add data size validation 2018-01-05 15:48:34 -06:00
Scott Lahteine
b91ca168fb Add a struct defining EEPROM storage 2018-01-05 15:48:34 -06:00
Scott Lahteine
51e0f2bee3 Add MarlinSettings::validate() 2018-01-05 14:35:24 -06:00
Scott Lahteine
878f54c27b Write filler with NO_VOLUMETRICS 2018-01-05 10:29:49 -06:00
Scott Lahteine
3ea6745b36 Pretty up TMC current write 2018-01-05 10:29:49 -06:00
Scott Lahteine
1c41de16d4 Trailing whitespace clean 2018-01-05 10:11:31 -06:00
Scott Lahteine
1746a7352e
Merge pull request #9042 from thinkyhead/bf2_M701_M702
[2.0.x] Improved Pause/Load/Unload, M701-M702
2018-01-04 19:41:58 -06:00
Roxy-3D
3a4e107b6b
use SERIAL_EOL(); instead of new line string 2018-01-04 16:20:18 -06:00
Roxy-3D
19e75ccf86
Add enough precision so planner.xy_skew_factor doesn't print as 0.00 2018-01-04 16:02:22 -06:00
Scott Lahteine
7541316bb4 Add M701/M702 Filament Load/Unload, M603 2018-01-04 15:07:37 -06:00
Scott Lahteine
a80f2eea23 Group leveling reports for folding 2018-01-04 03:56:36 -06:00
Thomas Moore
8afc4f8d9d Fix UBL compilation warnings 2018-01-02 21:00:06 -06:00
Scott Lahteine
5effe1590c Fix NO_VOLUMETRICS bug 2017-12-26 20:04:44 -06:00
Scott Lahteine
4b49ea1e92 General cleanup of config-store, reset_bed_level 2017-12-25 05:16:01 -06:00
Scott Lahteine
933f76fda3 Option to disable all volumetric extrusion 2017-12-19 19:51:25 -06:00
Scott Lahteine
fc9ee1a4de Fix up serial sanity check 2017-12-19 19:11:43 -06:00
teemuatlut
0cd1e91056 [2.0.x] TMC driver update (#8769) 2017-12-15 15:03:14 -06:00
victorpv
a5150c83a2 [2.0.x] Multiple updates to STM32F1 HAL (#8733)
* STM32F1 HAL

Adding files for STM32F1 HAL based on libmaple/stm32duino core.
Current persistent_store uses cardreader changes to be sent in separate
commit, but could be changed to use i2c eeprom.
There is another persistent_store implementation that uses the MCU flash memory
to emulate eeprom
Adding readme with some information about the stm32 HAL.

* Switch to Timer4 to avoid a hard reset on STM32F103C6 boards

On bluepill STM32F103C6 boards, using Timer5 results in a error() vector call. Switch to 4 since these are both general purpose, 16 bit timers.

* Add support for EEPROM emulation using Flash

Some low end machines doe not have EEPROM support. Simulate it using the last two pages of flash. Flash does not allow rewrite between erases, so skip writing the working version if that's enabled.

* Basic Pins for a malyan M200

This is a work in progress to go hand in hand with the STM32 work.

* Add support for ADC with DMA. This work has exposed a problem with the pin enumerations in STM boards vs what marlin expects (i.e, try defining PA0 as a temp pin). The hack can be removed with we go to fastio completely. To see this work, set something in adc_pins to a value like PA0 and connect your pullup resistor'd thermistor.

* Missing file - change HAL_adc_init to actually do something

We have an actual ADC init function now.

* Remove pinmode hack

Remove the pin mode hack that I was using to init PA0.

Updated Readme.md

* Several changes to timers and GPIO

Faster GPIO, and faster timer functions by accesing registers and
libmaple.
Still more changes pending for the Timer's code to skip using the
HardwareTimer class altogether.

Switch all enums to be within #defines

This change allows a user to have, for instance, TEMP_4 and TEMP_BED definied but nothing else. The enums which are not defined move "out", allowing the first ones to take the slots in the enum, and since the array is sized on ADC_PIN_COUNT, we always have the right size data and in order.

* Update Malyan M200 pins

Update Malyan M200 pins with correct fan values.

* Test all pins on actual hardware, update definitions

Some of the pin definitions were from knowlege base/pdfs. Now they've been tested against actual hardware. This should be very close to final.

* Update HAL_timers_Stm32f1.cpp

* Add sample configurations for Malyan M200

Add sample configuration for Malyan M200 without bed leveling, and move fan to auto cool E0 since this printer by default has only one fan.


Choose the timer based on MCU defintion. Timer5 is not valid on C8/CB class boards, so use Timer4 for the step timer.


readme.md update

* Updates to timers, and some stm32 boards definitiions

* Correct pin toggle macro.

* Remove duplicated Malyan M200 entry from pins.h

* Update configuration_store.cpp

* Formatting, indentation

* Formatting in HAL_Stm32f1.cpp
2017-12-10 23:12:45 -06:00
Scott Lahteine
204199e1ce Only compare XYZ to check motion 2017-12-10 23:00:00 -06:00
Scott Lahteine
6686d937fb Always report position on config load/reset 2017-12-10 21:47:14 -06:00
Scott Lahteine
a4e1d83599 Fix M503 S parameter 2017-12-06 21:23:37 -06:00
Jonathan Barchi
05f8e98c4a Fix for issue #8629 - mismatch between number of stored and loaded dummy items on non-delta machines. (#8631) 2017-12-02 19:04:58 -06:00
Scott Lahteine
0154e3480c New feature: BED_SKEW_CORRECTION 2017-12-01 19:39:49 -06:00
Scott Lahteine
91fb6231b2 Fix EEPROM V45 header, layout 2017-11-30 22:45:17 -06:00
Scott Lahteine
a9ecb975b2 Apply LINEAR_UNIT to M503 output for M200 2017-11-24 17:32:48 -06:00
Scott Lahteine
3bba7d60f3 No retroactive changes with M851 Z
If using babystep to adjust the Z probe offset, the axis will move and the mesh will be updated at the same time, causing a doubling of the Z offset over the rest of the print.

To correct for this, the current Z position would need to be modified in the opposite direction, canceling out the additional Z offset added to the mesh. This would be confusing to users, and moreover it would not be accurate without also taking the current Z fade level and current Z height into account.

It might make sense to change the mesh in the case where no babystepping is taking place, but this could be considered an undesirable side-effect of changing the `zprobe_zoffset`.

One way to remedy this would be to return to storing the mesh with `zprobe_zoffset` included, then subtracting `zprobe_zoffset` from the returned Z value. Thus, a babystep moving the Z axis up 1mm would subtract 1 from `zprobe_zoffset` while adding 1 to all mesh Z values.

Without including the `zprobe_zoffset` in the `z_values` there is no safe way to alter the mesh in conjunction with babystepping, although it's fine without it.
2017-11-18 03:36:39 -06:00