Commit graph

354 commits

Author SHA1 Message Date
Scott Lahteine 267f77b18b More constraint on axis_unhomed_error 2017-05-14 16:03:02 -05:00
oldmcg 91841d75c9 UBL_DELTA (#6695)
UBL on Delta's....     Should be close!    Should not affect any Cartesian printer.
2017-05-11 22:33:47 -05:00
Scott Lahteine 081bf1f879 Patch #else / #endif comments 2017-05-09 12:37:23 -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 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 ed81e9b3d3 Adjust leveling conditionals 2017-05-01 16:46:48 -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
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
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 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
Scott Lahteine 60ac41a32c Add code to handle changes to zprobe_zoffset 2017-04-13 15:46:35 -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 36bda2bade Add HAS_RESUME_CONTINUE shorthand macro 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
james94jeans2 5b9476fe78 Added z_fade_height to EEPROM-Settings
Firmware was forgetting the z_fade_height in Planner, set by M420 Z<f>,
after each reset or loading settings from EEPROM. Added the float
z_fade_height to EEPROM-Storage, now remembers the value.
2017-04-09 21:16:58 -05:00
Scott Lahteine 15edb41cee Patches to UBL 2017-04-08 14:59:14 -05:00
Scott Lahteine 04050237f0 Header and pins changes to support 5 extruders 2017-04-07 10:46:36 -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
Scott Lahteine eb1e6aa29b Use same config name for all mesh dimensions 2017-04-06 00:42:52 -05:00
Scott Lahteine a2775d0c70 can wstring be removed? 2017-04-02 04:43:33 -05:00
Scott Lahteine 2cbc7b4b73 Relocate serial macros and functions 2017-04-02 01:05:25 -05:00
Scott Lahteine 1a775cecac Revert behavior of enqueue_and_echo_commands_P 2017-04-01 21:53:46 -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 9217e4b8ec Various UBL cleanups and bug fixes 2017-03-30 17:09:49 -05:00
Scott Lahteine d076c1b604 Apply some general cleanup to code 2017-03-24 01:37:51 -05:00
Scott Lahteine 4c7f14752a Add disable_e_steppers function 2017-03-19 01:14:39 -05:00
Scott Lahteine fb60aa3736 UBL implementation 2017-03-18 11:35:20 -05:00
Scott Lahteine e4649c9044 Add HAS_SOFTWARE_ENDSTOPS macro 2017-03-17 06:05:17 -05:00
Scott Lahteine 58b3e98878 Use arrays for delta tower parameters 2017-03-07 19:00:22 -06:00
Jimmy Envall 00b6b3da79 Added support for delta tower angle corrections. 2017-03-07 16:35:58 -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
Scott Lahteine e42fd7813a Save ABL Bilinear Grid to EEPROM 2016-12-15 19:20:48 -08:00
Scott Lahteine 887ed73c9b Expose delta_clip_start_height for use by others 2016-12-13 01:41:08 -08:00
Scott Lahteine ee50928eee Make LOGICAL and RAW position macros ternary-compatible 2016-12-05 06:43:26 -06:00
Scott Lahteine 50ee749082 Centralize click-handling in the LCD loop 2016-10-28 20:57:21 -05:00
Scott Lahteine 67ab54185b Save hotend_offset array (M218) in EEPROM 2016-10-28 18:45:23 -05:00
esenapaj d5a5042d23 Fix for the PR #5088 (Handle M108 in M1 also with ULTIPANEL) 2016-10-27 10:32:20 +09:00
Scott Lahteine d963020532 Sort out some header dependencies 2016-10-10 17:14:03 -05:00
Scott Lahteine 8910bb7c97 Fix buzzer conditional compile 2016-10-04 21:38:41 -05:00
Scott Lahteine 919fe3e4b8 Rename feature to G38_PROBE_TARGET 2016-10-01 05:00:53 -05:00
Scott Lahteine a2864ab7fe Patched up, cleaned up 2016-10-01 05:00:53 -05:00
Bob-the-Kuhn 2911aa7ffa code changes to implement G38 commands
1) modified 3 code files
Marlin.h
Marlin_main.cpp
endstops.cpp

2) modified config files so I could test on my machine

Testing was done on an AzteegX3pro based machine.

The probe was hooked to the Z_MIN endstop.

My controller doesn't have a dedicated Z_PROBE input so I couldn't test
that functionality.

Verified that a large file (without any G38 commands) executed the same
before and after the changes.

Verified that the head moves as expected when G38.2 and G38.3 commands
are issued. Single & multiple axis moves were tested along with + and -
directions.

Code was added to the main ISR. In normal operation only one extra IF
statement is evaluated. I didn't notice any performance degradation
because of the added code.

The G38 commands are expected to be issued manually by the operator
during machine setup. The G38 commands wait until the machine is idle
before proceeding. That way the other commands are minimally impacted
by the extra ISR overhead when a G38 command is in the queue.

The G38 commands are very similar to the G28 commands except 1) only the
Z_PROBE is used and movement can be in the + or - direction.

See issue 4677 for a discussion on adding G38 commands to Marlin.
Feature request: add ability to use G38.2 command (CNC)
MarlinFirmware/Marlin#4677
2016-10-01 05:00:53 -05:00
Scott Lahteine ea0dbee3c9 Enable ABL by type, support bilinear on cartesian 2016-09-25 23:35:37 -05:00
Scott Lahteine 77639672d7 Move NONLINEAR bed leveling to planner
This is in advance of moving non-linear bed leveling to the planner
class.
2016-09-18 13:50:38 -05:00
Scott Lahteine 5f2f991192 Use 'logical' rather than 'target' or 'cartesian' 2016-09-18 13:50:38 -05:00
Scott Lahteine 40d3e854f6 Remove redundant extern delta[] 2016-09-18 13:39:47 -05:00