Commit graph

2148 commits

Author SHA1 Message Date
Scott Lahteine 911a87e006 Disable SCARA feedrate scaling by default 2017-05-08 14:41:03 -05:00
Scott Lahteine 71396f77d3 Cleanups following recent commits 2017-05-08 14:23:01 -05:00
Scott Lahteine a6dafb058e Small reduction in error code size 2017-05-08 13:58:09 -05:00
Scott Lahteine a1e04942a2 Cleanup to software PWM variables 2017-05-08 13:51:45 -05:00
Brian 6cb0fa4128 Cleanup previous implementation of new quiet probing
Saves a few lines of code.
2017-05-08 08:13:46 -04:00
Scott Lahteine 56ca47ab9d Patch configuration temp units 2017-05-07 21:32:01 -05:00
bgort d35e2fda10 Merge pull request #6622 from bgort/silentprobing
Improve BLTOUCH_HEATERS_OFF functionality
2017-05-07 21:33:44 -04:00
Roxy-3D d92fa40c62 misc. UBL fixes (#6631)
* Restore LSF functionality

Some of the typo's persisted...   Hopefully this gets them all fixed.

* Restore user's expectations of how G28 should behave

* Allow Nozzle size control with ornery host programs
2017-05-07 18:23:48 -05:00
Brian faa270071d Improve BLTOUCH_HEATERS_OFF functionality
- rename to PROBING_HEATERS_OFF
 - move heater pausing functionality into thermalManager
   - add variables, pause(), ispaused(), other functions
 - add fan pausing functionality -> PROBING_FANS_OFF
 - add probing_pause() wrapper
 - move pausing into do_homing_move() and do_probe_move() to minimize quiet time and so other probe types can benefit
 - example configs
2017-05-07 16:22:08 -04:00
Scott Lahteine ce507deb9f Support temperature units in M503 2017-05-06 20:24:51 -05:00
bgort a59066bca9 Various improvements - mostly UBL-related (#6607)
UBL Clean up.
2017-05-06 18:59:16 -05:00
Scott Lahteine 6876e79d42 Tweak command index increment 2017-05-05 13:32:31 -05:00
Max Matveev 267f3a03d9 Fixed USE_CONTROLLER_FAN #define usage 2017-05-04 23:38:29 +02:00
bgort ae7c602031 fix error in M105 output -- use SERIAL_PROTOCOL for ints instead of SERIAL_PROTOCOL_F (#6584)
also removed wayward 'address of' ampersand in setTargetHotend and setTargetBed parameters
2017-05-04 16:09:45 -05:00
Florian Heilmann 15268770f5 Fix broken fwretract recovery extruder feedrate
When both lowering and recovery are performed using the same "prepare_move_to_destination()" the extruder recovery feedrate ends up being ignored and, instead, is only capped by either the maximum e-speed or the time it takes to perform the z-lowering. 
Performing the two moves separately from each other ensures a correct recovery feedrate.
2017-05-04 11:34:28 +02:00
Scott Lahteine 58210c3a19 Merge pull request #6568 from thinkyhead/rc_bilinear_extension
Add EXTRAPOLATE_BEYOND_GRID option to bilinear leveling
2017-05-04 00:46:05 -05:00
Scott Lahteine da08e11acd Add EXTRAPOLATE_BEYOND_GRID option to bilinear leveling 2017-05-04 00:19:07 -05:00
Scott Lahteine 1196e3ca59 SDCard print completion can use "M0" 2017-05-03 22:24:03 -05:00
Scott Lahteine 6854f08d22 Shut down autotemp in disable_all_heaters 2017-05-03 20:54:26 -05:00
Scott Lahteine e1b85ff67b Merge pull request #6559 from thinkyhead/rc_more_optimal
Compact smart_fill_mesh slightly
2017-05-03 19:07:36 -05:00
Scott Lahteine 2658cc707a Treat temperature as integer, when possible 2017-05-03 17:27:25 -05:00
Scott Lahteine 1b2c7ec20a Make G26 compatible with inches and thermal unit modes 2017-05-03 17:12:48 -05:00
Scott Lahteine 241bdffe65 Dress up Bilinear Leveling code 2017-05-03 17:12:35 -05:00
Scott Lahteine 67ecf06cc4 Patch issue in gcode_M900
Noted in #6550
2017-05-03 15:26:00 -05:00
Scott Lahteine 628391304f Merge pull request #6552 from thinkyhead/rc_more_ubl_cleanup
Further cleanup of UBL
2017-05-02 22:46:04 -05:00
Scott Lahteine 902fe76db9 Merge pull request #6556 from thinkyhead/rc_use_controller_fan
Implement USE_CONTROLLER_FAN as a feature
2017-05-02 22:43:26 -05:00
Scott Lahteine 7ba7474a73 Drop extra parens from address-of operator 2017-05-02 22:22:23 -05:00
Scott Lahteine fc857c5b78 Merge pull request #6549 from thinkyhead/rc_bltouch_refix
Fix BLTOUCH_HEATERS_OFF bug
2017-05-02 21:53:09 -05:00
Scott Lahteine 2c13922c46 Implement USE_CONTROLLER_FAN as a feature 2017-05-02 20:18:52 -05:00
Scott Lahteine 492bc536bf Modify debug methods to take PSTR 2017-05-02 17:53:40 -05:00
Brian ff5fed137f Fix BLTOUCH_HEATERS_OFF bug 2017-05-02 15:53:52 -05:00
LVD-AC da2abad636 Various cleanups of G33
- update comment section
- redefined P5 grid
- minor clean to probe radius routine
- updated EEPROM version to V37 according remark in #6517
2017-05-02 15:47:06 -05:00
Scott Lahteine e79b335367 Patches for leveling reactivation in G28 / M48 2017-05-01 17:38:57 -05:00
Scott Lahteine 7d5cd7e0d7 Tweak set_bed_leveling_enabled 2017-05-01 16:46:52 -05:00
Scott Lahteine ed81e9b3d3 Adjust leveling conditionals 2017-05-01 16:46:48 -05:00
Scott Lahteine a64e5659ce Clean up G26 external references, private vars 2017-05-01 15:17:52 -05:00
Scott Lahteine 2887c20788 Add a function to home all axes (i.e., gcode_G28) 2017-05-01 15:03:37 -05:00
Scott Lahteine 4f74c416a4 Patch for BLTOUCH_HEATERS_OFF 2017-05-01 11:13:40 -05:00
Scott Lahteine d814e468d2 Fix set_heaters_for_bltouch and usage
- Only call `set_heaters_for_bltouch` when actually deploying/stowing
- Clear `next_emi_protection` when re-enabling heaters
2017-05-01 02:27:52 -05:00
Brian 4e1448e75a Various fixes for compiler warnings
add BLTouch-related messages in english and (rusty) french;
add missing endstops.h in ultralcd.cpp;
fix misc. compiler warnings;
fix lsf_reset - ZERO macro can't handle a pointer as it would only memset the size of the pointer, not the size of the entire struct
2017-05-01 02:12:40 -05:00
Scott Lahteine 671a44b8aa Merge pull request #6410 from teemuatlut/LVD-Delta
Delta auto-calibration updates
2017-04-30 16:39:51 -05:00
LVD-AC cafc48dff8 little oops 2017-04-30 22:17:49 +03:00
LVD-AC 471a321624 leaner code for probe routine 2017-04-30 19:15:16 +03:00
LVD-AC 585c00a728 Proposed changes
This is what I did yesterday:

- basicly gave the tests more comprehensive names; put all the
declarations at the top; got rid of the magic negative C-value (renamed
to P + A, O, T)

- "cos(RADIANS(180 + 30 * axis)) * (1 + circles * 0.1 * ((zig_zag) ? 1 :
-1)) * delta_calibration_radius" compiles wrong is zig_zag statement is
without brackets

- DELTA_TOWER_ANGLE_TRIM reset to 3 values (the calcs use the 3th value
to normalize will not compile otherwise)

-Wrote 3 dummies to keep EEPROM lenght the same

-Reset the configs to the 'original' with autocal + menu disabled (but
can be enabled of course)
2017-04-29 18:53:14 +03:00
Scott Lahteine 29fa241617 Initial patches to G33 2017-04-29 15:29:49 +03:00
Scott Lahteine 42f4c53254 Starting on G33 rewrite 2017-04-29 15:29:49 +03:00
Scott Lahteine 1a111180de Clean up set_heaters_for_bltouch 2017-04-28 18:32:39 -05:00
Scott Lahteine 0a8e09c723 Clean up excess whitespace, comment formatting 2017-04-28 18:32:38 -05:00
Scott Lahteine 8020069371 Apply coding standards for indentation 2017-04-28 15:43:06 -05:00
LVD-AC 4ea8d0f89b Solved "The Travis CI build failed " 2017-04-28 19:55:21 +03:00
LVD-AC 7a6a1ef583 M666 normalize positive values to <=0
M666

+ tower radians absolute value
2017-04-28 18:05:24 +03:00
Roxy-3D 4075b95519 Allow BL-Touch users to control heaters during probe event (#6485)
The Configuration.h file entries for BL-Touch have been updated to:
```cpp
//#define BLTOUCH
//#define BLTOUCH_DELAY 375      // (ms) Enable and increase if needed
//#define BLTOUCH_HEATERS_OFF // if defined the printer's heaters are
turned off during probe event
```
2017-04-28 09:19:55 -05:00
Roxy-3D 6e8ecb908a Shut down heaters during BL-Touch probe event
The electro-magnetic interference from the bed and nozzle are affecting
the BL-Touch repeatability for some users.   This problem can be helped
by shutting down the heaters during the actual probe event and then
quickly turning them back on.

Because this code is messing with the heaters, it is written in a
paranoid manner.  It only turns the heaters back on if everything is
EXACTLY as it expects things to be.  The BL-Touch probe must have been
put into a deployed state less than 20 seconds prior, or the stow()
function will NOT turn the heaters on.

This code has been tested and works for both G28 and probing functions.
2017-04-27 18:52:58 -05:00
LVD-AC d8102aeca8 Cn negative : no tower angle calibration
Giving a negative number of probe points disables the tower angle
correction calibration ('4point' instead of '7point' solution)

EEPROM version updated
2017-04-27 21:13:07 +03:00
LVD-AC a9bc1d30cc z_offset change
Avoids to have to recalibrate the delta_height after a z_offset change
2017-04-26 21:57:11 +03:00
Scott Lahteine 5bdb0b567d Cosmetic patches 2017-04-26 06:24:23 -05:00
Scott Lahteine a699967ec8 Merge pull request #6443 from thinkyhead/rc_interrupt_fastio
Patch fastio.h with Timer 2 interrupt support
2017-04-24 20:09:41 -05:00
Scott Lahteine 2823bf0874 Update fastio.h with special handling for Timer 2 2017-04-24 16:58:22 -05:00
Scott Lahteine fd535e111a Fix up XYZ_CONSTS_FROM_CONFIG macro 2017-04-24 14:05:11 -05:00
LVD-AC dcf30a69d6 Allowing #define DELTA_TOWER_ANGLE_TRIM[C_AXIS]
More consistent with M665 where C-value is allowed as well, then
normalized
2017-04-23 14:51:24 +03:00
Brian f41fb2b635 Numerous UBL-related changes:
* relocated ubl state to config. store:
 * removed a number of ubl state variables and padding which were largely unused - saved 58 bytes of both SRAM and EEPROM;
 * modified ubl sanity_check - no longer checks removed state variables that were otherwise unused, where checking didn't seem to accomplish anything, ultimately;
 * removed pre_initialized state, saving 64 bytes of SRAM;
 * removed automatic saving of UBL state after UBL activation/deactivation;
* consolidated multiple GRID_MAX_POINTS_X/Y to 'Global Leveling' section of EEPROM;
* minor update to G29 Sx notes/instructions;
* renamed mesh load and save parameter to 'slot' from 'm' for clarity;
2017-04-22 18:44:39 -05:00
Scott Lahteine 830851df13 Spend some SRAM to optimize bilinear leveling 2017-04-22 16:19:31 -05:00
Scott Lahteine 091179d960 bed_level_grid => z_values (also *_virt array) 2017-04-22 16:19:31 -05:00
Scott Lahteine 23cdbbb2d3 Add a method to refresh bilinear bed level after a change 2017-04-22 16:19:30 -05:00
Scott Lahteine ccda63c473 Drop the accessor form for LCD value editing 2017-04-22 16:19:30 -05:00
Scott Lahteine 10da175be5 Fix a pair of compiler complaints 2017-04-22 16:19:30 -05:00
Scott Lahteine ff0018e287 Format hex values as uppercase 2017-04-21 21:42:41 -05:00
teemuatlut 244f67590e Delta probe height bug solved 2017-04-22 02:23:56 +03:00
LVD-AC 004928148c Tower angles
Adding '7-point' tower angle correction calibration
2017-04-21 12:48:45 +03:00
LVD-AC 76ec7a0f80 Adding upto 7*7 probe grids
- adding Cn 5, 6 and 7
2017-04-21 11:58:39 +03:00
LVD-AC d4f593d200 Delete 'expert level'
and getting rid off verbose level 3 and configuration_adv settings
2017-04-21 11:58:39 +03:00
LVD-AC 13c8493878 M665 rework and related issues (all delta's)
- Making M665 compatible with repetier (see
http://reprap.org/wiki/G_code#M665:_Set_delta_configuration)

- M665 B also sets the radius for manual calibration menu

- Converting tower ajustment definitions to arrays - tower angle
corrections compatible with Esher 3D wizzard

- Only tower angles need to be adjustable with M665 and stored to EEPROM
- tower radius and diag rod can be adjusted in the FW only with #define
2017-04-21 11:58:39 +03:00
Scott Lahteine ee46ce1743 Add and apply interrupt helper macros 2017-04-20 16:04:29 -05:00
Scott Lahteine 6131c62499 General cleanup 2017-04-20 16:04:29 -05:00
Scott Lahteine 5eb2b1a790 Clear up G29 compiler warnings 2017-04-19 13:07:35 -05:00
Scott Lahteine 4ce2a63db0 Apply const, spacing to Marlin_main.cpp 2017-04-19 13:07:34 -05:00
Scott Lahteine e97f1284c1 Cleanup of pins testing code 2017-04-19 13:07:34 -05:00
Scott Lahteine e9b53ae00c Cleanup after some direct commits
https://github.com/MarlinFirmware/Marlin/commit/5e9726530ff21d3bc62beaa6
ac1b9437c276130a
2017-04-19 13:07:34 -05:00
Scott Lahteine de569e3d4e Merge pull request #6327 from Bob-the-Kuhn/M43-toggle-&-Z-probe-fixes
M43 Toggle & Z servo test - fix bug & add another check
2017-04-18 03:21:57 -05:00
Scott Lahteine a00ae4790a Replace M905 with unique code M900 2017-04-17 16:39:37 -05:00
Scott Lahteine eb2d073dae Add M905 R for setting the E/D ratio directly 2017-04-17 16:39:36 -05:00
Scott Lahteine 69dfa54a84 Use code_value_linear_units for known-linear axes 2017-04-17 16:39:36 -05:00
Roxy-3D 5e9726530f Setup to find data corruption and general clean up
This data corruption problem is very difficult.  Just changing the code
a little bit changes whether the problem even happens and what is
affected.  I need these changes in the main branch so I can operate with
the extra debug code always available and turned on.

Everything is setup such that if M100 is turned off or DEBUG(ECHO) is
turned off, the code is not affected.   M100 has been made a little bit
more inteligent so it can display the serial command buffers in a more
meaningful way (because the data corruption seems to often times end up
in that area).
2017-04-15 19:26:43 -05:00
Scott Lahteine 037c964d26 Reverse bools on prepare_move sub-functions 2017-04-15 01:08:19 -05:00
Scott Lahteine d9c4333806 Extra logging of Dual X modes 2017-04-15 01:08:19 -05:00
Scott Lahteine 4067d15c92 Cleanup, extend TMC2130 implementation 2017-04-14 23:00:00 -05:00
Scott Lahteine 24882adfbf Allow NO_WORKSPACE_OFFSETS with DELTA_AUTO_CALIBRATION
- On `DELTA` the `M665 H` option supplants `M206`
- On `DELTA` `NO_WORKSPACE_OFFSETS` only reverts `G92` behavior
- Spawn 4 conditionals based on `NO_WORKSPACE_OFFSETS`
- Optimize coordinate space conversion for `DELTA` workspace
- To keep EEPROM version, retain `home_offset[XYZ]`, just ignore XY
2017-04-14 21:56:49 -05:00
Bob-the-Kuhn 1acb84ba02 fix 1 bug, add error messages
===============================================

make changes requested by reviewers

===============================================

add M43 test to Travis, fix EOL, remove trailing spaces
2017-04-14 20:57:45 -05:00
LVD-AC 8821963873 Implement delta auto-calibration and delta_height 2017-04-14 19:46:31 -05:00
Scott Lahteine 81ffd98dd9 Allow faux leveling 2017-04-14 19:06:06 -05:00
Scott Lahteine 0ac2b5c045 Additional 5 extruders support (solenoids, microstepping) 2017-04-14 18:18:20 -05:00
Scott Lahteine fd2a0784ba Add support for SOLENOID_PROBE 2017-04-14 17:24:36 -05:00
Scott Lahteine ea734f910b Use direct pin manipulation whenever possible 2017-04-14 16:55:35 -05:00
Scott Lahteine 19d0c6a0c0 Patch to init W with RGBW_LED 2017-04-14 16:55:23 -05:00
Scott Lahteine 52c3ace102 Add BABYSTEP_ZPROBE_OFFSET as an optional feature 2017-04-13 16:29:43 -05:00
Scott Lahteine 60ac41a32c Add code to handle changes to zprobe_zoffset 2017-04-13 15:46:35 -05:00
Scott Lahteine 8fa4209916 Movement/adjustment should be reverse of probe offset change 2017-04-13 15:46:05 -05:00
Thomas Moore 361655828f Use babystepping to adjust bed probe z-offset 2017-04-13 15:46:05 -05:00
Scott Lahteine 4022b971db Merge pull request #6315 from thinkyhead/rc_unify_M421
Unify M421
2017-04-12 19:43:28 -05:00
Scott Lahteine 5e4f4d387f Swap MBL z_values dimensions to [X][Y] 2017-04-12 17:24:05 -05:00
Scott Lahteine 063f641651 Unify M421 2017-04-11 15:46:13 -05:00
Scott Lahteine 6d5400dc31 Merge pull request #6240 from thinkyhead/rebuild_rgb_led
Extend RGB LED with Printer Events
2017-04-11 15:16:57 -05:00
Scott Lahteine dac21ec680 Add support for an RGBW LED 2017-04-11 12:58:55 -05:00
Scott Lahteine e7746ffee4 Extend RGB LED support, adding Printer Events 2017-04-11 12:15:41 -05:00
Scott Lahteine c7063eb55c theTarget => target_temp 2017-04-11 12:15:41 -05:00
Scott Lahteine 36bda2bade Add HAS_RESUME_CONTINUE shorthand macro 2017-04-11 12:15:40 -05:00
Scott Lahteine 53e6c33c37 2 is DXC_DUPLICATION_MODE 2017-04-11 12:15:40 -05:00
Scott Lahteine a2cb0a3d54 Use multiply for delta probe constraint 2017-04-11 12:15:40 -05:00
Scott Lahteine 68773f4486 Simplify stepper macros by renaming enable/disable macros 2017-04-11 11:10:26 -05:00
Scott Lahteine ecc537015a Have M109 / M190 do nothing with no parameters 2017-04-11 05:06:25 -05:00
Scott Lahteine 67fb7f82ac Merge pull request #6283 from thinkyhead/rc_eeprom_z_fade
Save / restore z_fade_height in EEPROM
2017-04-10 20:05:20 -05:00
MagoKimbra 7d2e637867 Fix mbl_mesh_report 2017-04-10 20:50:19 +02:00
Scott Lahteine 786af73e24 Convert config code to a static class 2017-04-09 22:06:41 -05:00
Max Matveev 2031fb913b Fixed comparison of float values to NaN 2017-04-09 20:28:46 +02:00
Scott Lahteine 314a02e2d5 Toggle with XOR 2017-04-09 07:58:47 -05:00
Scott Lahteine 8bc0d90b00 Init bed_level_virt_interpolate on EEPROM load 2017-04-09 07:04:20 -05:00
Jimmy Envall f78d44e91a Added support for delta tower angle corrections. 2017-04-08 21:13:44 -05:00
Scott Lahteine d4ce839351 Cleanup following Pins Debug update 2017-04-08 18:59:57 -05:00
Scott Lahteine c7a8f7970b Formatting / cleanup 2017-04-08 18:59:57 -05:00
Scott Lahteine 0027c22839 Drop extraneous calls to lcd_update 2017-04-08 18:58:33 -05:00
Scott Lahteine f8408036f2 Merge pull request #6264 from thinkyhead/rc_five_extruders
Support up to 5 extruders in Marlin
2017-04-07 12:48:56 -05:00
Scott Lahteine 832064e4f2 Implementation changes to support 5 extruders 2017-04-07 10:46:37 -05:00
Scott Lahteine a0de5d94e2 Merge pull request #6258 from benlye/benlye-bilinearfix2
Better fix for bilinear Z offset and G29 Z (update to #6251)
2017-04-06 20:51:57 -05:00
Scott Lahteine b23aef5b8d Merge pull request #6190 from Bob-the-Kuhn/Stop-and-Kill-prints---round-2
Message for every KILL and STOP (also need delays)
2017-04-06 20:40:12 -05:00
Roxy-3D 1451b7eacf UBL's Grid Based Leveling code
Pretty much...  The code is in place.  Still more work to do.    But it
has a lot of hooks and variables in other code, so commit and merge
before I pick up a million 'Conflicts'.
2017-04-06 19:55:41 -05:00
Bob-the-Kuhn a44b3432c1 add BLTouch retry to a second place & add/update delays
=================================================

implement requested changes

=================================================

remove delays (they're in another PR) & move return
2017-04-06 16:13:07 -05:00
Bob-the-Kuhn f9686a108c add Z servo test and toggle pins to M43 2017-04-06 15:59:38 -05:00
Scott Lahteine f5c5c1f771 Rename all UBL files with a ubl_ prefix 2017-04-06 05:33:27 -05:00
benlye f1d50ac1dc Fixing bilinear Z offset and G29 Z
The fix in #6251 for bilinear Z offset was flawed and broke the Z parameter of G29 for bilinear levelling.  This is reverted and a different fix is used for the double-addition of the Z-probe offset to the bilinear correction grid.
2017-04-06 07:41:46 +01:00
Scott Lahteine eb1e6aa29b Use same config name for all mesh dimensions 2017-04-06 00:42:52 -05:00
Scott Lahteine c961dd084d Add hidden option to output Bilinear grids in JSON 2017-04-05 23:43:17 -05:00
Scott Lahteine df7b4252fd Reduce M420 code for UBL slightly 2017-04-05 22:30:29 -05:00
Scott Lahteine 8866158d03 Add LEVELING_DATA as a capability 2017-04-05 22:30:28 -05:00
benlye 0a2b4f3486 Fix bilinear levelling z offset
Since run_probe was altered to return the probe Z position rather than the nozzle Z position bilinear levelling has been broken because the Z-offset has been applied twice - once in the run_probe function, and then again in the G29 code for bilinear levelling.
2017-04-05 22:01:40 -05:00
Scott Lahteine 44a849bdce Fix broken M206/M428/G92 offsets 2017-04-05 22:01:37 -05:00
Roxy-3D 0423e93c42 Fix M421 AUTO_BED_LEVELING_BILINEAR and AUTO_BED_LEVELING_UBL
M421 was not connected up for AUTO_BED_LEVELING_BILINEAR.
M421 needed to migrate mesh data to new UBL EEPROM layout.
2017-04-02 16:46:37 -05:00
Scott Lahteine c56eec29f0 Configurable delay for BLTouch servo emulation 2017-04-02 11:14:53 -05:00
Scott Lahteine deaad78df9 Merge pull request #5678 from Bob-the-Kuhn/G38-optional-double-tap
G38 bug fix, made double touch optional & reverted to Z_MIN_PROBE
2017-04-02 10:32:04 -05:00
Scott Lahteine 4c72167af3 Prevent a warning on echo_command 2017-04-02 08:36:58 -05:00
Scott Lahteine 9b5fd9522e Fix formatting, order for a UBL change 2017-04-02 07:15:40 -05:00
Scott Lahteine 2cbc7b4b73 Relocate serial macros and functions 2017-04-02 01:05:25 -05:00
Scott Lahteine 7a7a80e6c5 status_printf => lcd_status_printf_P 2017-04-02 01:05:25 -05:00
Scott Lahteine 790a3e9a8c Remove extraneous check of UBL_G26_MESH_EDITING 2017-04-01 23:03:40 -05:00
Scott Lahteine 7310110ec0 Fix logic of UBL::fade_scaling_factor_for_z 2017-04-01 22:52:48 -05:00
Scott Lahteine 1a775cecac Revert behavior of enqueue_and_echo_commands_P 2017-04-01 21:53:46 -05:00
Bob-the-Kuhn 185337e787 add delays to allow stop & kill messages to get out 2017-04-01 00:23:14 -05:00
Scott Lahteine 73e193da1d Implement LCD_BED_LEVELING for PROBE_MANUALLY 2017-03-31 11:50:18 -05:00
Scott Lahteine fcadc7bb1a Implement the "manual" option for ABL 2017-03-31 11:50:18 -05:00
Scott Lahteine 342ee458ae Additional UBL fixes, optimizations 2017-03-31 11:12:57 -05:00
Scott Lahteine a5e085cbea Have run_probe() return probe Z, not nozzle Z 2017-03-31 09:27:49 -05:00
Scott Lahteine 4487d22d56 Apply FIXFLOAT macro 2017-03-31 09:27:48 -05:00
Scott Lahteine 6cac0f43eb MBL fiddle 2017-03-31 09:27:48 -05:00
Scott Lahteine 25a6bfa7ed Add and apply WITHIN macro 2017-03-31 09:27:48 -05:00
Scott Lahteine 93aad54dc1 Clean up code, remove _now command function 2017-03-31 04:17:31 -05:00
Scott Lahteine 4902fd4e95 More data in UBL class, make it a static class
- Make all `unified_bed_leveling` data/methods static
- Move some UBL-related variables into the class
- Replace `map_[xy]_index_to_bed_location` with `mesh_index_to_[xy]pos`
2017-03-31 02:20:20 -05:00
Scott Lahteine edbc024d76 Disable UBL_G26_MESH_EDITING by default 2017-03-31 02:20:20 -05:00
Scott Lahteine 9e4bd6b3b5 Further repairs to UBL, comments, spacing 2017-03-31 02:20:20 -05:00
Bob-the-Kuhn f3618c3337 Reduce UBL RAM usage by making G26/G29 optional 2017-03-31 02:20:19 -05:00
Scott Lahteine c9eb1d6ab7 Make MBL a static class, use lookup for index-to-point conversion 2017-03-31 01:28:07 -05:00
Scott Lahteine de9d2cddc3 Merge pull request #6152 from thinkyhead/rc_cleanup_6150_etc
UBL cleanup, optimization
2017-03-30 17:40:29 -05:00
Scott Lahteine 9217e4b8ec Various UBL cleanups and bug fixes 2017-03-30 17:09:49 -05:00
Scott Lahteine 9924199802 Merge pull request #5908 from thinkyhead/rc_fix_slowdown
General minor cleanup
2017-03-29 21:43:33 -05:00
Scott Lahteine f105cad43c Marlin: Slight cleanup to Marlin_main.cpp 2017-03-29 06:40:29 -05:00
Scott Lahteine e3459ec178 Merge pull request #5989 from MagoKimbra/rc_fix_delta_angles
Fix delta_angles
2017-03-29 03:35:18 -05:00
Scott Lahteine 0a23a1bb3b Dynamic feedrate on SCARA, converting target mm/s to deg/s 2017-03-28 17:21:07 -05:00
Scott Lahteine a9fc30ae2e Use safe_delay to ensure watchdog reset 2017-03-26 23:49:56 -05:00
Scott Lahteine 34d1c41b5f Merge pull request #6111 from benlye/benlye-patch-echo_command
Fix type conversion issue with echo_command
2017-03-24 17:57:28 -05:00
benlye 6a601aca35 Fix type conversion issue with echo_command
With the the current definition of echo_command I cannot compile RCBugFix (Arduino IDE 1.8.1) with the error "invalid conversion from 'const char*' to 'char*'".  This change resolves that.
2017-03-24 17:23:02 +00:00
Scott Lahteine 009a6ddd39 Adjust bilinear grid in M851 2017-03-24 06:28:59 -05:00
Scott Lahteine eab7854a73 Merge pull request #6074 from thinkyhead/rc_immediate_shove
Immediate commands take precedence
2017-03-24 05:52:27 -05:00
Scott Lahteine b5711a99a2 Patches to bring UBL closer to compliance 2017-03-24 01:37:52 -05:00
Scott Lahteine d076c1b604 Apply some general cleanup to code 2017-03-24 01:37:51 -05:00
Roxy-3D b8e4a6970b Get UBL up and running again
All the changes to get the code into compliance with Marlin coding
standards made UBL sick.   This pretty much gets UBL back up and
running.
2017-03-23 16:08:37 -05:00
Scott Lahteine 8f9face956 Merge pull request #6088 from rafaljot/patch-3
Update Marlin_main.cpp
2017-03-23 01:51:51 -05:00
Scott Lahteine af2ea23e9c EXTRUDER_RUNOUT_PREVENT uses buffer_line_kinematic 2017-03-22 20:51:12 -05:00
Scott Lahteine cd882b88db #if defined => #ifdef / PIN_EXISTS 2017-03-22 20:51:11 -05:00
Scott Lahteine e244399766 Additional cleanup of UBL code 2017-03-22 20:51:10 -05:00
Bob-the-Kuhn 0934563b97 G38 optional double touch
Made the double touch portion a conditional compile based on the
PROBE_DOUBLE_TOUCH flag.

==============================================

Bugfix

The current G38 only stopped a move if it involved the Z axis.

Moved all the G38 code to it's own section and put it where it would
always be executed no matter what axis was moving or if the endstop was
enabled.

Also added a comment to configuration_adv to alert the user the double
tap had to be turned on.

==============================================

Change G38 back to using Z_MIN_PROBE

There's no Z_MIN endstop if Z_DUAL_ENDSTOPS is enabled and you have them
set to the top of the gantry.

G38 started out as using the Z_MIN_PROBE pin.  I don't remember why we
changed it to the Z_MIN endstop.
2017-03-22 15:08:49 -05:00
Scott Lahteine cc3204509c UBL patch from Bob-the-Kuhn 2017-03-22 07:54:20 -05:00
Scott Lahteine b904b5ae8d Audible feedback for settings store/load/reset 2017-03-22 02:15:21 -05:00
rafaljot 6da949bbf0 Update Marlin_main.cpp
Sometimes after killing heaters are still on.
2017-03-21 15:06:01 +01:00
Scott Lahteine 48c6284c91 Immediate commands take precedence 2017-03-19 21:50:48 -05:00
Scott Lahteine ff0dd162b7 PARK_HEAD_ON_PAUSE implementation 2017-03-19 07:27:35 -05:00
Scott Lahteine 4cf51157b3 Use XYZE rather than NUM_AXIS 2017-03-19 01:14:39 -05:00
Scott Lahteine 4c7f14752a Add disable_e_steppers function 2017-03-19 01:14:39 -05:00
Scott Lahteine 8eb29f91e6 Patch filament change options and beep code 2017-03-19 01:14:39 -05:00
Scott Lahteine 9b2b53f63a Merge pull request #6042 from thinkyhead/rc_fix_toolchange_z
Move Z last in tool-change for SWITCHING_EXTRUDER
2017-03-19 00:34:41 -05:00
Scott Lahteine 4bca27ab89 Fix Kelvin conversion
Thanks to @ospalh -- #6056
2017-03-18 13:23:08 -05:00
Scott Lahteine 2c630a1b5c Merge pull request #6054 from thinkyhead/rc_ubl_renewal
UBL for RCBugFix — cleanup, rebase, patch
2017-03-18 12:07:57 -05:00
Scott Lahteine 0492a3a8f1 Merge pull request #6027 from Bob-the-Kuhn/add_kill_info
Message for every KILL and STOP
2017-03-18 11:49:35 -05:00
Scott Lahteine b0a9c82c31 Fix single-char echo and pinMode usage 2017-03-18 11:35:20 -05:00
Scott Lahteine fb60aa3736 UBL implementation 2017-03-18 11:35:20 -05:00
Scott Lahteine af644871bf Merge pull request #6045 from thinkyhead/rc_remove_raw_kinematics
Remove delta optimization concepts… for now
2017-03-18 03:26:24 -05:00
Scott Lahteine 1e57b0c269 Remove delta interpolation concept 2017-03-17 06:32:11 -05:00
Scott Lahteine e46898f8e5 Remove kinematic optimizations 2017-03-17 06:30:22 -05:00
Scott Lahteine 0e410c9dfd Software endstop options as simple switches 2017-03-17 06:05:17 -05:00
Scott Lahteine d01b915085 Implement soft_endstops_enabled for clamping 2017-03-17 06:05:17 -05:00
Scott Lahteine e4649c9044 Add HAS_SOFTWARE_ENDSTOPS macro 2017-03-17 06:05:17 -05:00
Scott Lahteine 3e927ff204 Replace MBL Z hacking 2017-03-17 06:05:17 -05:00
Scott Lahteine 4e53124681 Merge pull request #6039 from Bob-the-Kuhn/M114-sync-with-stepper
M114 - wait for move completion before reporting position
2017-03-17 05:22:46 -05:00
Scott Lahteine 672e45652e Improved solution to tool-change bug 2017-03-16 23:59:10 -05:00
Scott Lahteine 23f1cfb46f Fix stuck CHDK pin as suggested in #6041 2017-03-16 21:49:39 -05:00
Bob-the-Kuhn 34ff0c3439 M114 - wait for move completion before reporting position 2017-03-16 15:10:45 -05:00
Bob-the-Kuhn b31604a492 Message for every KILL and STOP
No more mystery halts & resets

Moved messages to language.h

Added current command to inactive timeout message
2017-03-15 21:05:11 -05:00
Bob-the-Kuhn 685ed5393a Bug Fix: Switching extruder tool change leaves Z in wrong position
The tool_change function saves the current_position to the destination
array soon after starting.  Later in the switching extruder section, the
destination array is modified when moving the Z axis up & down.  A later
section of tool_change moves the head back to the “original location”
using the destination array.  This later section assumes that the
destination array hasn’t been modified.

The fix is to save the destination Z position and then restore it after
the Z movements have completed.

Going back to using the current_position array for the switching
extruder Z axis moves (and  leaving the destination array untouched)
doesn’t fix the problem.

This bug was introduced by the “Make tool_change kinematic compatible”
commit # 847429eff4 which was merged on 10
Oct 2016 as part of PR 4982.

This bug was discovered in Issue 5966.
2017-03-14 02:36:24 -05:00
Scott Lahteine 51353f8fea Merge pull request #6000 from trivalik/NoWorkspaceWarning
prevent warning with define of NO_WORKSPACE_OFFSETS
2017-03-12 00:00:51 -06:00
Trivalik 71ac6f9d42 prevent warning with define of NO_WORKSPACE_OFFSETS 2017-03-09 23:49:57 +01:00
MagoKimbra 37a26dfc09 Fix delta_angles 2017-03-08 09:23:30 +01:00
Scott Lahteine 2defb1d748 Use SET_INPUT_PULLUP where appropriate 2017-03-07 23:43:33 -06:00
Scott Lahteine 58b3e98878 Use arrays for delta tower parameters 2017-03-07 19:00:22 -06:00
Scott Lahteine 47242a40bb Apply updated changes for delta_tower_angle_trim 2017-03-07 18:15:11 -06:00
Jimmy Envall 00b6b3da79 Added support for delta tower angle corrections. 2017-03-07 16:35:58 -06:00
Scott Lahteine 45f949d833 TMC2130 Library: @teemuatlut replaces @makertum 2017-03-07 04:22:06 -06:00
Scott Lahteine 33f8a8a344 Merge pull request #5973 from thinkyhead/rc_circle_pattern
Add circle pattern to nozzle clean
2017-03-06 04:47:01 -06:00
Scott Lahteine 94b3e0a483 Merge pull request #5959 from benlye/benlye-fixm48
Remove extra carriage return in M48 V1 output
2017-03-06 04:24:28 -06:00
Marek Pikuła 6836b94eea Added circle pattern for nozzle cleaning feature 2017-03-06 03:03:00 -06:00
Scott Lahteine be98016674 Merge pull request #5963 from thinkyhead/rc_no_offsets_optim
New option: NO_WORKSPACE_OFFSETS
2017-03-05 21:46:49 -06:00
Scott Lahteine 87b03b16bd Use a macro for array copies 2017-03-05 04:43:46 -06:00
Scott Lahteine e141f3a03f Optimize coordinate transformation
Pre-compute the combined position shift and home offset to save a
single float fetch-and-add per conversion. Great for delta/scara and
bed leveling.
2017-03-05 04:43:16 -06:00
Scott Lahteine 5f7e85398b Implement NO_WORKSPACE_OFFSETS 2017-03-05 04:43:15 -06:00
benlye dead89062a Update Marlin_main.cpp
Remove unnecessary line break from M48 V1 output.
2017-03-04 17:58:10 +00:00
Scott Lahteine 1ef6ccd919 Merge pull request #5951 from thinkyhead/rc_print_2d_array
Reduce code size (40b, or 166b with bilinear subdivision)
2017-03-03 21:27:44 -06:00
Scott Lahteine 98c7b682ca General cleanup, const usage, var naming 2017-03-03 20:57:49 -06:00
jes 369bfc8a1e Reduce code size (40b, or 166b with bilinear subdivision) 2017-03-03 20:36:32 -06:00
Scott Lahteine 0d13412105 Fix "Heating..." message 2017-03-03 12:12:51 -06:00
Scott Lahteine b3e2bd6f29 Reduce E_D_ratio code 2017-03-02 01:00:37 -06:00
Sebastianv650 de6c40ed8f Add option to fix E/D ratio
Work around for slicers producing buggy gcode.
2017-03-02 01:00:37 -06:00
Colin Gilgenbach 48b7e0f8d8 Nozzle Wipe Vertical Zig-Zag
- Add configuration support for zigzags in either the X or Y axis, for
wipe pads significantly longer in one dimension.
- Add configuration for default number of zig-zag triangles, vs. a
magic number in `Marlin_main.cpp`.
- Update description of auto nozzle wiping to match functionality
2017-02-25 21:52:43 -06:00
Scott Lahteine 34cba42104 Use PSTR for MSG_HEATING 2017-02-22 11:30:19 -06:00
dot-bob cd68380ce6 Add status_printf to print messages to the lcd status line.
Also add a hotend indicator to the heating message displayed on the lcd status line.
2017-02-20 15:26:54 -06:00
Scott Lahteine 4da8b1494b Merge pull request #5854 from thinkyhead/rc_fixup_m600
M600 cleanup and bugfix
2017-02-18 04:27:13 -06:00
Scott Lahteine 44b4e116bd Commentary / style in gcode_M600 2017-02-18 04:08:00 -06:00
Scott Lahteine 284d6de9da Remove some old code comments 2017-02-17 15:25:56 -06:00
Scott Lahteine 4578c573fe Pause the print job timer while in M600 2017-02-15 05:29:34 -06:00
Scott Lahteine bfe6f71794 Simplify filament_change_beep function 2017-02-15 05:29:34 -06:00
Scott Lahteine d9dcef8a87 Spacing, coding standards 2017-02-15 05:29:34 -06:00
Roxy-3D 8bf0b496b9 Improve M600 with timeout, wait for heatup. 2017-02-15 05:29:34 -06:00
Scott Lahteine a561bd5e3a New feature: SDCARD_SORT_ALPHA 2017-02-14 21:37:24 -06:00
Scott Lahteine 467f01435f Merge pull request #5816 from thinkyhead/rc_abl_virt_reduce
Reduce memory use by ABL_BILINEAR_SUBDIVISION slightly
2017-02-14 08:41:44 -06:00
jes eaa829b58c Reduce memory use by ABL_BILINEAR_SUBDIVISION slightly 2017-02-12 04:09:48 -06:00
Scott Lahteine 701f4a6d9d Merge pull request #5729 from Bob-the-Kuhn/guaranteed-BLTouch-detection
guaranteed BLTouch detection
2017-02-12 01:13:35 -06:00
Scott Lahteine 1bc5be3bdf Cast DELTA_PRINTABLE_RADIUS to float in sq()
Addressing #5625
2017-02-11 23:28:39 -06:00
Bob-the-Kuhn 0369f97ec1 guaranteed BLTouch detection
To guarantee that the 5mS pulse from a BLTouch is recognized you need to
have the endstops.update() routine run twice in that 5mS period.

At 200 steps per mm, my system has problems  below a feedrate of 120 mm
per minute.

Two things were done to guarantee the two updates within 5mS:
1) In interrupt mode, a check was added to the temperature ISR.  If the
endstop interrupt flag/counter is active then it'll kick off the endstop
update routine every 1mS until the flag/counter is zero.  This
flag/counter is decremented by the temperature ISR AND by the stepper
ISR.

2) In poling mode, code was added to the stepper ISR that will make sure
the ISR runs about every 1.5mS.  The "extra" ISR runs only check the
endstops.  This was done by grabbing the intended ISR delay and, if it's
over 2.0mS, splitting the intended delay into multiple smaller delays.
The first delay can be up to 2.0mS, the next ones 1.5mS (as needed) and
the last no less than 0.5mS.

=========================================

BLTouch error state recovery

If BLTouch already active when deploying the probe then try to reset it
& clear the probe.

If that doesn't fix it then declare an error.

Also added BLTouch init routine to startup section
2017-02-11 12:01:34 -06:00
Florian Heilmann 7bbc31704c Adjust probe_pt() terminal output to respect probe z-offset 2017-02-09 22:54:22 -06:00
Scott Lahteine 9b5515926a Merge pull request #5696 from thinkyhead/rc_volumetric_default
Allow enabling volumetric filament on config load
2017-01-14 05:48:51 -08:00
Robert Kirk 0d147ead66 Allow enabling volumetric filament on config load 2017-01-14 04:37:49 -08:00
AnHardt fa26767efe Replace all remaining 'boolean' with 'bool' 2017-01-13 13:03:52 +01:00
AnHardt f6858d9974 Fix M110 without leading N
Store N in the right variable.
This is too rarely used.

"mea culpa, mea culpa, mea maxima culpa"
2017-01-13 12:33:50 +01:00
Scott Lahteine c376f6a2cb code_value_float tweak 2017-01-12 04:38:09 -08:00
Robert Kirk 306c184b1a Allow M600 when dryrun debugging 2016-12-21 20:30:51 -05:00