João Brázio
e71a631f8f
do_blocking_move_*() no longer depend on HAS_BED_PROBE
2016-07-15 01:54:14 +01:00
Scott Lahteine
8bf6861af8
Merge pull request #4054 from jbrazio/feature/g12-clean-tool
...
Implements clean nozzle feature (Lulzbot's REWIPE)
2016-07-14 14:38:38 -07:00
Scott Lahteine
1618870c84
card.printingHasFinished does print_job_timer.stop
2016-07-14 11:39:58 -07:00
Scott Lahteine
34da77dad3
Simply run M31 at the end of an SD print
2016-07-14 11:39:58 -07:00
Scott Lahteine
a8d71f0ac6
Support longer print times in M31
2016-07-14 11:39:58 -07:00
Scott Lahteine
e481b79af1
Allow stopwatch and printcounter to go over 18 hours
2016-07-14 11:39:57 -07:00
João Brázio
4937f9ada4
Minor G12 tweaks and point_t struct extension
2016-07-14 00:07:36 +01:00
João Brázio
021544f572
Improves G12 zig-zag pattern
2016-07-13 21:14:56 +01:00
João Brázio
b05a75655a
Implements a nozzle cleaning pattern generator (G12)
2016-07-13 21:14:19 +01:00
Scott Lahteine
4f77adddbe
Merge pull request #4286 from thinkyhead/rc_debug_clean
...
Prefix and suffix in debug output
2016-07-12 20:49:15 -07:00
Scott Lahteine
e5c7af5ddc
Merge pull request #4222 from thinkyhead/rc_allow_cold_extrude
...
M302: Add "P" parameter, status output
2016-07-12 20:40:14 -07:00
Scott Lahteine
2224032568
Merge pull request #4285 from thinkyhead/rc_manual_move_fast_fine
...
No delay for the smallest LCD moves
2016-07-12 20:16:38 -07:00
Scott Lahteine
d4c68279c8
Add "P" parameter to M302
2016-07-12 20:04:15 -07:00
Scott Lahteine
a8b6b6a128
Merge pull request #4252 from thinkyhead/rc_rename_hpb
...
Replace PLA/ABS preheating with generic
2016-07-12 20:00:33 -07:00
Scott Lahteine
1e14df876d
Use varname as prefix in DEBUG_POS, string as suffix
2016-07-12 19:58:09 -07:00
Scott Lahteine
9e8b3e5ee6
Homing direction is irrelevant in probe raise!
2016-07-12 18:09:02 -07:00
Scott Lahteine
4865447830
Merge pull request #4276 from esenapaj/Suppress-warnings
...
Suppress warnings
2016-07-11 19:08:59 -07:00
esenapaj
58177a1602
Suppress warnings
2016-07-12 08:22:24 +09:00
AnHardt
7bcab26f2a
Don't deploy/stow the probe if z-min-endstop is used for homing
...
Don't deploy/stow the probe if z-min-endstop is used for homing.
Don't apply `zprobe_zoffset` if probe was not used.
2016-07-11 22:01:44 +02:00
AnHardt
e92e58df1f
Adjust wait_for_cooling slope
...
Adjust wait_for_cooling slope
and drop mintemp for cooling.
See
https://github.com/MarlinFirmware/Marlin/pull/4169#issuecomment-231544532
2016-07-11 03:36:23 +02:00
Scott Lahteine
ee0983ab57
Further reduction when HOTENDS == 1
2016-07-10 16:54:30 -07:00
Scott Lahteine
f9e08b1fcd
Merge pull request #4254 from AnHardt/killscreen
...
Add a kill-screen
2016-07-09 20:44:42 -07:00
AnHardt
faac2bcfdb
Add a kill-screen
2016-07-10 04:50:45 +02:00
Scott Lahteine
3b3e52616c
Merge pull request #4253 from thinkyhead/rc_clexpert_runout
...
Runout Sensor without SD Card, Print Timer support in M104
2016-07-09 19:10:36 -07:00
Scott Lahteine
4cd045791c
Reduce code size by trusting the compiler
2016-07-09 18:17:44 -07:00
Scott Lahteine
a8538bd7ce
General cleanup, code reduction in Marlin_main.cpp
2016-07-09 18:17:44 -07:00
Scott Lahteine
1026e5b071
Replace PLA/ABS preheating with generic
2016-07-09 18:06:51 -07:00
Petr Zahradník junior
315b4c2153
Runout sensor without SD Card
2016-07-09 17:57:53 -07:00
AnHardt
468f7f03a2
homeaxis() can leave early
...
when no known axis needs to be homed.
Most changes are only caused from altering the indentation.
```
if (axis == X_AXIS ? HOMEAXIS_DO(X) : axis == Y_AXIS ? HOMEAXIS_DO(Y) : axis == Z_AXIS ? HOMEAXIS_DO(Z) : 0) {
...
}
to
if (!(axis == X_AXIS ? HOMEAXIS_DO(X) : axis == Y_AXIS ? HOMEAXIS_DO(Y) : axis == Z_AXIS ? HOMEAXIS_DO(Z) : 0)) return;
...
```
2016-07-08 15:59:33 +02:00
AnHardt
eff7912243
Ensble/disable hardware endstops in G28 globally.
...
For moving away from the endstops we do not have to disable them.
They are not tested anyway.
2016-07-08 15:49:10 +02:00
AnHardt
f69434d81c
Eliminate void setup_for_endstop_move()
2016-07-08 15:23:20 +02:00
AnHardt
0ea6247fc2
Use logic in Z_SAFE_HOMING
...
Use logic in Z_SAFE_HOMING
From
```
if (home_all_axis || homeZ) {
if (home_all_axis) {
...
home z
}
else if (homeZ) { // Don't need to Home Z twice
home z
}
}
```
to
```
if (home_all_axis || homeZ) {
if (home_all_axis) {
...
}
home z
}
```
2016-07-08 15:08:50 +02:00
AnHardt
de3a169336
Always define MIN_Z_HEIGHT_FOR_HOMING even if 0
...
Always define MIN_Z_HEIGHT_FOR_HOMING even if 0
Always make a potential rise to `home_offset[Z_AXIS]` possible in G28.
Get rid of some very ugly constructs in MBL (ultralcd.cpp).
2016-07-08 15:08:32 +02:00
AnHardt
88ed232f53
Remove HAS_BED_PROBE case in first raise in G28
...
Differentiating made sense here when we could save a dozen lines of code,
but not for one line.
2016-07-08 14:59:44 +02:00
AnHardt
653eff3b31
Clean up quick_home_xy()
...
Since we do the actual homing now in the 'normal' routines `quick_home_xy()`
can be simplified to a relative simple diagonal move.
2016-07-08 14:59:27 +02:00
Scott Lahteine
98d0167a57
Merge pull request #4226 from thinkyhead/rc_emergency_command_parser
...
MarlinSerial emergency-command parser (with M108)
2016-07-07 16:53:55 -07:00
Scott Lahteine
2ee4e4f791
Make wait_for_heatup volatile
2016-07-07 16:37:23 -07:00
Scott Lahteine
834ad14c8d
Add quickstop_stepper to update current position with stepper.quick_stop()
2016-07-07 16:37:22 -07:00
Scott Lahteine
ecffe92e20
Group EMERGENCY_PARSER commands
2016-07-07 16:37:22 -07:00
AnHardt
a129078927
Add an emergency-command parser to MarlinSerial (supporting M108)
...
Add an emergency-command parser to MarlinSerial's RX interrupt.
The parser tries to find and execute M108,M112,M410 before the commands disappear in the RX-buffer.
To avoid false positives for M117, comments and commands followed by filenames (M23, M28, M30, M32, M33) are filtered.
This enables Marlin to receive and react on the Emergency command at all times - regardless of whether the buffers are full or not. It remains to convince hosts to send the commands. To inform the hosts about the new feature a new entry in the M115-report was made. "`EMERGENCY_CODES:M112,M108,M410;`".
The parser is fast. It only ever needs two switch decisions and one assignment of the new state for every character.
One problem remains. If the host has sent an incomplete line before sending an emergency command the emergency command could be omitted when the parser is in `state_IGNORE`.
In that case the host should send "\ncommand\n"
Also introduces M108 to break the waiting for the heaters in M109, M190 and M303.
Rename `cancel_heatup` to `wait_for_heatup` to better see the purpose.
2016-07-07 16:37:22 -07:00
Scott Lahteine
9f42b1a075
Merge pull request #4235 from thinkyhead/rc_revert_quickhome_test
...
Fix quick homing, tweak MIN_Z_HEIGHT_FOR_HOMING
2016-07-07 13:37:14 -07:00
Scott Lahteine
ad968f2325
Merge pull request #4234 from thinkyhead/rc_better_position_logging
...
Move XYZ in print_xyz and DEBUG_POS to the front
2016-07-07 12:31:15 -07:00
Scott Lahteine
4036c73cdd
Don't raise Z if only homing Z
2016-07-07 12:28:37 -07:00
Scott Lahteine
0b6f8f8244
Apply MIN_Z_HEIGHT_FOR_HOMING raise literally
2016-07-07 12:25:02 -07:00
Scott Lahteine
177ec20bf0
Revert quick-home changes
2016-07-07 12:17:34 -07:00
Scott Lahteine
9c5b462ef2
Move XYZ in print_xyz and DEBUG_POS to the front
2016-07-07 11:42:19 -07:00
Scott Lahteine
4e84c803a3
Merge pull request #4232 from thinkyhead/rc_no_axis_codes_needed
...
Don't use axis_codes if a literal will do
2016-07-06 20:05:16 -07:00
Scott Lahteine
e2f7cb0905
Don't use axis_codes if a literal will do
2016-07-06 18:37:21 -07:00
Scott Lahteine
6559f7359f
Fix comment on Z raise for homing, save a few bytes
2016-07-06 16:21:51 -07:00
Scott Lahteine
d0b29cabf3
Don't re-home X and Y if you quick homed
2016-07-06 13:46:06 -07:00
Scott Lahteine
e0a6b978f5
Don't do_probe_raise with MIN_Z_HEIGHT_FOR_HOMING
2016-07-06 13:46:05 -07:00
Scott Lahteine
7735ec5e7a
Merge pull request #4223 from thinkyhead/rc_rename_heatup
...
Change cancel_heatup to wait_for_heatup
2016-07-06 11:25:44 -07:00
Scott Lahteine
160a2be117
Change cancel_heatup to wait_for_heatup
2016-07-06 09:17:50 -07:00
AnHardt
16c83d203b
Make use of the good features of a sled probe for all probes.
...
Move and extend axis_unhomed test to deploy/stow_z_probe().
Move and extend position store/restore to deploy/stow_z_probe().
Now all kinds of probes can use the 'E' parameter in G29/M48.
Allen key probes can be used now for grid and 3-point levelling.
Deploying the Allen Key probe uses big moves in z direction.
Too dangerous for an unhomed z-axis.
Throw a compile time error when we try to configure an
Allen Key probe homing to z-min and having no other z-min-endstop.
2016-07-06 04:11:04 +02:00
AnHardt
8555816a11
Generalize and simplify 'triggered when stowed test`
...
The `PROBE_IS_TRIGGERED_WHEN_STOWED_TEST` is able to detect if a probe is
successfully deployed/stowed.
It was part of the Allen Key probes code only.
Now the function is generally available.
Currently this test is compulsory for Allen Key probes to not alter the used behaviour
If you want to add the test for an other type of probe simply add
```
#define PROBE_IS_TRIGGERED_WHEN_STOWED_TEST
```
to your config.
2016-07-06 03:56:17 +02:00
AnHardt
5126cce7fd
Move Allen Key probe move scripts to their own functions
...
There was an hidden extra move after the scripts. This is configurable now.
Added the extra moves to the relevant configs.
2016-07-06 03:46:40 +02:00
AnHardt
7d063c111c
Add a optional feedrate parameter to do_blocking_move()
...
Add a optional feedrate parameter to `do_blocking_move()` and its companions.
2016-07-06 03:46:34 +02:00
Scott Lahteine
b114b6a0b3
Save 152 bytes using uint8_t for command indices
2016-07-05 16:29:28 -07:00
Scott Lahteine
0d4ff0c48b
Allow the queue to be cleared from within commands
2016-07-05 16:25:20 -07:00
Scott Lahteine
c450851401
Merge pull request #4209 from AnHardt/too-high-G28
...
Make raise for probe deploy relative in homeaxis()
2016-07-05 11:07:42 -07:00
AnHardt
f799f18388
MBL typo
2016-07-05 18:19:53 +02:00
AnHardt
8b02e68cb6
Make raise for probe deploy relative in homeaxis()
...
Make raise for probe deploy relative in homeaxis()
by setting `current_position[axis]` to zero later.
2016-07-05 10:42:33 +02:00
Scott Lahteine
e48502866b
Merge pull request #3611 from alephobjects/M108_cancel_heatup
...
Introduce M108 cancel wait for heatup/cooldown of the hotend and bed
2016-07-04 01:19:31 -07:00
Scott Lahteine
d70197f514
Merge pull request #4204 from thinkyhead/rc_fix_gcode_t_position
...
Additional patches for gcode_T position change
2016-07-04 01:16:22 -07:00
Scott Lahteine
869b517589
Merge pull request #4205 from thinkyhead/rc_fixup_unit_references
...
References to millimeters in code comments need an update
2016-07-04 01:15:34 -07:00
Scott Lahteine
e104b91ea6
References to millimeters in code comments need an update
2016-07-03 20:13:29 -07:00
AnHardt
ff91d28a3a
Remove wants_to_cool warning
...
Remove wants_to_cool warning
2016-07-04 03:12:11 +02:00
Scott Lahteine
c9e536cf87
Additional patches for gcode_T position change
2016-07-03 18:11:02 -07:00
Scott Lahteine
f31af61ee2
Fix position adjustment with gcode_T and MBL
2016-07-03 17:44:04 -07:00
lrpirlet
9b42c6b44b
apply correction when swtiching from MBL to physical in G28 X
2016-07-03 21:43:42 +02:00
Petr Zahradnik
43ff0ce35f
Rewritten FILAMENT_CHANGE_ENABLE feature
2016-07-02 15:34:33 -07:00
AnHardt
cb1b31f69b
Unconditional do_probe_raise() in probe_pt()
...
If Z_RAISE_BETWEEN_PROBINGS is null or undefined the probe is currently not raised by home_offset[Z_AXIS] and zprobe_zoffset.
But when different from 0 is.
If an undefined Z_RAISE_BETWEEN_PROBINGS expands to 0 (and it does) this is the solution.
A similar asymmetry exists with the newly introduced 'short-cut' in G28 - but its the rise before anything is probed - so should not make a difference.
2016-07-01 15:28:41 +02:00
Scott Lahteine
7ef7843fd4
Merge pull request #4181 from thinkyhead/rc_rename_a_move_func
...
Do interpolated moves for Allen Key deploy/stow
2016-06-30 16:30:09 -07:00
Scott Lahteine
da6b0dab5f
Use prepare_move_to_destination for Allen Key deploy/stow
2016-06-30 16:09:43 -07:00
Scott Lahteine
c42f8fb8dd
Rename some movement sub-functions
2016-06-30 15:50:00 -07:00
Scott Lahteine
5e14a528dd
Always wait for cooling in M109/M190, break at low temp or if cooling stalls
2016-06-29 14:07:54 -07:00
Scott Lahteine
2e96276bf4
More debug message cleanup
2016-06-27 20:36:19 -07:00
Scott Lahteine
dc2c0e5e24
Simpler debug output for deploy/stow
2016-06-27 20:36:18 -07:00
Scott Lahteine
bd491818d6
Reduce storage requirements for strings, make some PGM
2016-06-27 20:36:18 -07:00
AnHardt
e480ee0054
Further cleanup of G28 for probes
2016-06-27 20:19:51 -07:00
AnHardt
39883d03fc
universalize axis_unhomed_error()
2016-06-27 20:19:51 -07:00
AnHardt
e616093d4c
Simplify dock_sled()
...
`dock_sled()` is never called with offset parameter - remove it.
We move x only - so only that needs to be homed. Consequence is - we can home to z-min now with a sled probe!
Feedrates are set and restored in `do_blocking_move()`.
We already checked if the probe is deployed/stowed in deploy/stow_probe.
```
if (z_loc < _Z_RAISE_PROBE_DEPLOY_STOW + 5) z_loc = _Z_RAISE_PROBE_DEPLOY_STOW;
```
makes no sense - remove.
Now the raise is the same for deploy/stow -> move before the if.
Replace the if with a ternary.
Instead writing LOW/HIGH use the boolean `stow` we already have.
There is no reason for not using the sled probe in G29/M48 with 'E'.
It takes a while but works. (tested!)
2016-06-27 20:19:51 -07:00
Scott Lahteine
829c92f1ba
Use Z_RAISE_BETWEEN_PROBINGS with MBL
2016-06-26 15:39:11 -07:00
Scott Lahteine
eb1755208f
Merge pull request #4153 from thinkyhead/rc_probe_raise_options
...
Combine Z raise before/after options
2016-06-26 15:30:08 -07:00
Scott Lahteine
10da7ac86c
Combine Z raise before/after options
2016-06-26 13:56:30 -07:00
Scott Lahteine
3fa631130f
Ensure a minimum height before XY move in probe_pt
2016-06-25 19:19:31 -07:00
Scott Lahteine
ca184d3d72
Merge pull request #4147 from thinkyhead/rc_fix_M48_raise
...
Fix debug output in probe_pt
2016-06-25 18:15:33 -07:00
Scott Lahteine
b4161cbd98
Fix debug output in probe_pt
2016-06-25 17:59:03 -07:00
Edward Patel
da88b00585
MBL: Add support for max z endstop
...
See https://github.com/MarlinFirmware/Marlin/issues/4088
2016-06-25 21:58:02 +02:00
Scott Lahteine
7de7552069
Merge pull request #4133 from MagoKimbra/Single_home_axis_delta
...
Single home Axis Delta need simple sync_plan_position
2016-06-23 21:14:22 -07:00
Scott Lahteine
15a6b49f37
Simplified probe_pt (in G30)
2016-06-23 20:25:46 -07:00
Scott Lahteine
6a7045b9bf
Remove clean_up_after_endstop_move
2016-06-23 20:23:19 -07:00
Scott Lahteine
2a4f866561
Simplified probe_pt (in G29)
2016-06-23 20:22:28 -07:00
Scott Lahteine
89a2aa026b
Simplified probe_pt (in M48)
2016-06-23 19:22:45 -07:00
Scott Lahteine
f8530c5d1f
Simplified probe_pt function (G28 grid)
2016-06-23 19:09:32 -07:00
Scott Lahteine
c376c08042
Simplified probe_pt function (part 1)
2016-06-23 19:00:29 -07:00
Scott Lahteine
9a71b7f8ad
Fix debug message for 3-point leveling
2016-06-23 18:17:31 -07:00
Scott Lahteine
550c03a5a9
Drop raise_z_after_probing function
2016-06-23 18:11:54 -07:00
Scott Lahteine
bb38c816af
Always raise in deploy_z_probe / stow_z_probe
2016-06-23 18:00:20 -07:00
Scott Lahteine
68f3350050
Cleanup M401 / M402
2016-06-23 17:04:41 -07:00