Commit graph

230 commits

Author SHA1 Message Date
Scott Lahteine 0554b65d22 Merge pull request #4284 from thinkyhead/rc_serial_ln_macros
Sled-probe sanity fix, conditionals for remaining types of leveling
2016-07-12 16:36:33 -07:00
Scott Lahteine 655c3fd55f Move delta ABL sanity checks up 2016-07-12 16:10:16 -07:00
Scott Lahteine 91bd6eade7 X_DUAL_STEPPER_DRIVERS configuration option 2016-07-11 10:22:19 -07:00
Scott Lahteine 1026e5b071 Replace PLA/ABS preheating with generic 2016-07-09 18:06:51 -07:00
Petr Zahradnik a2159cfbc3 Error message change in SanityCheck.h 2016-07-09 17:57:54 -07:00
Petr Zahradník junior 315b4c2153 Runout sensor without SD Card 2016-07-09 17:57:53 -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 d7e9647505 Sanity Check for probe raises 2016-07-06 13:46:06 -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
Petr Zahradnik 43ff0ce35f Rewritten FILAMENT_CHANGE_ENABLE feature 2016-07-02 15:34:33 -07:00
Scott Lahteine dbfc87cdcf Squish sanity check for build info 2016-07-02 15:22:33 -07:00
Scott Lahteine 03c70c1990 SERVO_DEACTIVATION_DELAY => SERVO_DELAY 2016-06-23 14:33:29 -07:00
Scott Lahteine bd01592816 Goodbye MECHANICAL_PROBE 2016-06-22 17:13:33 -07:00
Scott Lahteine 42ce60c5cc Make sure NUM_SERVOS is set for Z servo endstop 2016-06-22 14:01:19 -07:00
Scott Lahteine 2798499b71 XY_TRAVEL_SPEED => XY_PROBE_SPEED 2016-06-22 02:45:25 -07:00
esenapaj 14b661b9e5 Enclose #error string by double-quotes 2016-06-21 21:06:14 +09:00
Scott Lahteine 3996242e9d Allow Z_MIN_PROBE_REPEATABILITY_TEST solo 2016-06-21 01:56:40 -07:00
Scott Lahteine 9beb3f2f5e Merge pull request #4097 from thinkyhead/rc_fil_runout_cleanup
FIL_RUNOUT_INVERTING false by default
2016-06-19 19:46:14 -07:00
Scott Lahteine f215b30932 Merge pull request #4093 from thinkyhead/rc_probe_without_abl
Make Z Probe options independent of ABL
2016-06-19 19:44:25 -07:00
Scott Lahteine 2fd2301928 FILRUNOUT => FIL_RUNOUT 2016-06-19 19:25:26 -07:00
Scott Lahteine de12228758 Make Z Probe options independent of ABL 2016-06-19 18:47:27 -07:00
Scott Lahteine add0032820 Improve FILAMENT_RUNOUT_SENSOR, FILRUNOUT_PIN 2016-06-19 18:13:33 -07:00
Scott Lahteine 1bed392c68 HAS_Z_ENDSTOP_SERVO => HAS_Z_SERVO_ENDSTOP 2016-06-17 14:20:17 -07:00
Scott Lahteine 47ce810f52 Remove support for XY servo endstops 2016-06-17 14:19:17 -07:00
Scott Lahteine f639044c24 Merge pull request #3609 from jbrazio/feature/config-version
Adds versioning for Configuration.h & Configuration_adv.h
2016-06-15 22:09:47 -07:00
João Brázio 8ccd97e7cc
Updated all example configuration files 2016-06-12 00:36:15 +01:00
João Brázio de8108648f
Added a versioning system to the config files 2016-06-11 23:48:10 +01:00
Scott Lahteine 6d62a4ffc8 Patch LIN_ADVANCE for style and forward-compatibility 2016-06-09 21:03:27 -07:00
Scott Lahteine cd441ce652 SINGLENOZZLE: EXTRUDERS versus HOTENDS 2016-06-03 17:38:03 -07:00
Scott Lahteine 32f8300cc6 Merge pull request #3944 from thinkyhead/rc_eboston_lcd_contrast
Improved LCD contrast handling
2016-06-03 17:08:41 -07:00
Scott Lahteine b3a37b493d Patch G28 servo stow to use Conditionals, raise_z_after_probing 2016-06-02 16:56:49 -07:00
Scott Lahteine b703fa9538 Add sanity check for SAV_3DGLCD display types 2016-06-02 15:21:17 -07:00
Scott Lahteine fe3122774a Merge pull request #3806 from thinkyhead/rc_coreyz_support
Support for COREYZ. Fixes for COREXY, COREXZ
2016-05-26 18:50:43 -07:00
Scott Lahteine 6c7f4909b1 COREYZ Conditionals, SanityCheck for only a single kinematic 2016-05-23 13:58:40 -07:00
Scott Lahteine 92ac133f2b Conditionals and Sanity Check for SINGLENOZZLE 2016-05-20 15:48:27 -07:00
Scott Lahteine 2a7b1a85f7 Improve DUAL_X_CARRIAGE sanity check errors 2016-05-18 15:59:28 -07:00
esenapaj e2b87f6c85 Separate Z_PROBE_ALLEN_KEY from MECHANICAL_PROBE 2016-05-16 18:12:10 +09:00
Scott Lahteine ddf3e1e22d Tweaks to some verbiage 2016-05-14 15:06:09 -07:00
Scott Lahteine a713043acd Merge pull request #3749 from esenapaj/patch-3
Enclose all #error strings by double-quotes
2016-05-14 15:01:56 -07:00
João Brázio d7522152e1
Warn user about useless of individual axis homing and DELTA kinematics 2016-05-14 01:35:05 +01:00
esenapaj 888443ca1e Enclose all #error strings with apostrophes 2016-05-13 21:10:23 +09:00
Scott Lahteine c827671299 Mention Z_PROBE_ALLEN_KEY in probe sanity checks 2016-05-10 13:50:20 -07:00
Scott Lahteine ea1dd31851 Enclose #error strings with apostrophes in quotes 2016-05-08 18:08:39 -07:00
Scott Lahteine 15fc93d742 Cleanup and consolidate probe conditionals for clarity 2016-05-08 12:59:43 -07:00
Scott Lahteine 0c11566f42 Replace LANGUAGE_INCLUDE with LCD_LANGUAGE 2016-04-27 20:06:40 -07:00
Scott Lahteine 259794c0be Make DISPLAY_CHARSET_HD44780 a single setting 2016-04-27 20:06:40 -07:00
João Brázio 170f7e8a45
Rework Marlin's versioning system 2016-04-24 05:21:17 +01:00
Scott Lahteine aaf9d19954 Allow Z_SAFE_HOMING to compile without a probe 2016-04-21 15:55:49 -07:00
Scott Lahteine 1cc622b167 Fix minor spelling in comments 2016-04-14 20:06:59 -07:00
Scott Lahteine 9e95f30de0 Merge pull request #3495 from jbrazio/bugfix/followup-3485
Throw an error if ENCODER_PULSES_PER_STEP < -1
2016-04-14 16:56:36 -07:00
João Brázio 9a3f676709
Throw an error if ENCODER_PULSES_PER_STEP < -1 2016-04-14 16:20:17 +01:00
esenapaj 2eb1b102f8 Support for "mechanical probe" with Allen Key as a special case 2016-04-13 20:34:12 -07:00
João Brázio ca6c6ec4ca
Versions of Arduino IDE prior to 1.6.0 are no longer supported 2016-04-11 19:03:06 +01:00
Scott Lahteine da2ff4a6d3 Catch a TEMP_SENSOR error before a pins issue 2016-04-05 16:17:28 -07:00
Scott Lahteine 2b4c42610c Adjust SanityCheck messages 2016-04-02 16:39:23 -07:00
Scott Lahteine a617d12f70 Account for Z_DUAL_ENDSTOPS in sanity checking of endstops 2016-04-02 16:39:23 -07:00
Scott Lahteine 868eebfdee Simplify configuration of Z2 endstops 2016-04-02 16:39:23 -07:00
Scott Lahteine e5771346a4 Drop DISABLE_M(IN|AX)_ENDSTOPS, replace with individual endstop flags 2016-04-02 16:39:23 -07:00
Scott Lahteine de333c4fea Merge pull request #3279 from thinkyhead/rc_filament_width_sensor
FILAMENT_SENSOR -> FILAMENT_WIDTH_SENSOR
2016-03-30 12:16:27 -07:00
Scott Lahteine 1a79b13b7a FILAMENT_SENSOR -> FILAMENT_WIDTH_SENSOR 2016-03-29 20:54:31 -07:00
jbrazio 0880fecbd4 Show a warning message when Arduino IDE is prior to 1.5 2016-03-28 11:55:42 +01:00
Scott Lahteine 5955a3063f Sanity check PIDTEMPBED plus BED_LIMIT_SWITCHING 2016-03-25 23:50:28 -07:00
Scott Lahteine 0da744b7b0 Further cleanup of comments, partial Doxygen-style
Following up on #3231
2016-03-25 00:45:56 -07:00
Scott Lahteine 4823791eb0 Merge pull request #3228 from esenapaj/patch-1
Fix spelling
2016-03-25 00:40:51 -07:00
jbrazio 5e5d250832 Added gplv3 header to all Marlin files 2016-03-24 18:01:20 +00:00
esenapaj 89a845659a Fix spelling
PROBABLE ->PROBEABLE
This is follow-up to #3069?
2016-03-25 02:13:37 +09:00
Scott Lahteine 1cc316f1fd Merge pull request #3082 from thinkyhead/updated_2820
This is quite comprehensive. If probes are disabled in any case when they shouldn't be, I'm sure we will hear about it soon.
2016-03-20 17:10:38 -07:00
Scott Lahteine 68085ca855 Updated M48 friendly for DELTA
Partial implementation with reference to MarlinFirmware/Marlin#3011
2016-03-19 05:13:40 -07:00
Scott Lahteine 4bbea5124d Support for multiple PWM fans 2016-03-19 03:10:18 -07:00
AnHardt 3f45a1acf9 Check probes only when deployed
Aim: Test probes in update_endstops only when activated

Changes:
Configurations
 Add define for FIX_MOUNTED_PROBE to handle the situation where formerly ENDSTOPS_ONLY_FOR_HOMING had to be set, or lowering the nozzle below Z_PROBE_OFFSET_FROM_EXTRUDER could give an "endstop hit" message.
 Add define for Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN to indicate a common situation, that we have a probe but it is connected to an endstop pin
 Add some comments
 Shift some entries to have related things together.

Conditionals.h
 We have a probe (HAS_Z_MIN_PROBE) if one of the pins is defined AND one of the probes is defined.

SanityCheck.h
 Add some tests if the probe is connected and if we have defined a probe.

stepper.cpp
 Changes to test the probe only when it is deployed (z_probe_is_active).
 Test update_endstops() when the probe is deployed.

MarlinMain.cpp
 a. set and reset z_probe_is_active in deploy_z_probe(), stow_z_probe() and dock_sled()
 b. set and reset z_probe_is_active in the case a z-servo is moved to a defined position. The only remaining unhandled servo move is in M280 where we do not end in a defined position. If you want to handle a probe use M401/402
 c. skip deploying/stowing when already deployed/stowed in the dedicated deploy/stow functions.
 d. Handle the new FIX_MOUNTED_PROBE in parallel to a servo driven probe/endstop.

 To do: In another PR. handle all probes in deploy/stow_z_probe.
 Sort out SERVO_LEVELING vs. HAS_SERVO_ENDSTOPS.
2016-03-19 02:00:08 -07:00
Scott Lahteine d9e1f22682 BABYSTEPPING requires ULTRA_LCD 2016-03-18 18:22:53 -07:00
Scott Lahteine e5fd43f343 Implement BABYSTEPPING for COREXY and COREXZ 2016-03-18 18:22:53 -07:00
AnHardt fd5414c6ea Z_RAISE_BEFORE_HOMING -> MIN_Z_HEIGHT_FOR_HOMING
rebased
corrected spelling
changed to #elif for error

Still with MIN_Z_HEIGHT_FOR_HOMING but con be done with (folder wide) search-replace when we have a better name.
2016-03-08 17:50:23 +01:00
Scott Lahteine 042a6a0a37 Extend existing MESH_BED_LEVELING test 2016-02-20 20:35:10 -08:00
esenapaj 08b3147791 sanity check for MANUAL_BED_LEVELING 2016-02-20 20:35:10 -08:00
Scott Lahteine 438a87eba8 Sanity check deprecated SDSLOW, SDEXTRASLOW 2016-02-17 14:54:10 -08:00
Scott Lahteine 0c7f7ebcfb Styling adjustments (PR#2668 & PR#2670)
Keep "astyled" reformatting
2015-10-03 22:02:45 -05:00
Scott Lahteine 89fb778684 Fix up probe pin define and test 2015-09-10 10:54:03 -05:00
Scott Lahteine 703df2cb6c Fix error message for probe region sanity check 2015-09-03 03:27:47 -05:00
Richard Wackerbarth 6292d9e815 Rename ENABLE_AUTO_BED_LEVELING
With the introduction of the #if ENABLED(…)

reads better than
2015-08-27 20:52:08 -05:00
Christian Lefrançois 9897a9147c Update ABL comments (PR#95)
* Updates the auto bed leveling comments ONLY.
* Renames "Z probe" word usage in //comments and #errors properly.
2015-08-26 05:51:38 -05:00
Christian Lefrançois a7822e3ff7 Some renaming of Z_PROBE to Z_MIN_PROBE (PR#91)
* Fix a couple of renames omission and macro expansion errors.
2015-08-20 06:04:46 -05:00
AnHardt e2d69f66b2 Make Z_PROBE a Z_MIN_PROBE (PR#65)
Currently we use the probe exclusively as a device to find the build platform(bed).
For the currently supported setups this means, we use it as a additional min-endstop.
A triggered when not deployed probe disturbs the homing process for max-endstops.

Rename ENDSTOPPULLUP_ZPROBE to ENDSTOPPULLUP_ZMIN_PROBE
Rename Z_PROBE_ENDSTOP_INVERTING to Z_MIN_PROBE_ENDSTOP_INVERTING
Rename Z_PROBE_ENDSTOP to Z_MIN_PROBE_ENDSTOP
Rename DISABLE_Z_PROBE_ENDSTOP to DISABLE_Z_MIN_PROBE_ENDSTOP
Rename Z_PROBE_REPEATABILITY_TEST to Z_MIN_PROBE_REPEATABILITY_TEST
Rename Z_PROBE_ENDSTOP to Z_MIN_PROBE_ENDSTOP
Adjust comments accordingly
Remove Z_MAX  check for the probe in update_endstops().

Using an delta related idea of @clefranc from #61,
extended to the general change for all setups.

Tested with Prusa i3, max-z-endstop and permanently triggered z-probe.
Worked for @clefranc's delta.
2015-08-11 14:41:36 -05:00
wurstnase f3ab1dba54 Z babystepping for coreXY (PR#47)
only X and Y were not implemented
2015-08-04 20:10:09 -05:00
Scott Lahteine 6af75f4b5d Squish down deprecated tests in sanity check 2015-08-03 16:04:48 -05:00
Scott Lahteine edeb58288e Use PIN_EXISTS in sanity check 2015-08-03 16:04:48 -05:00
Richard Wackerbarth 329acc852e Canonize Option flag USE_AUTOMATIC_VERSION 2015-08-03 08:08:37 -05:00
Richard Wackerbarth 5a11d32a85 Move deprecation test to SanityCheck.h 2015-08-03 08:08:37 -05:00
Scott Lahteine 1e2deff4fd Rename BTENABLED to BLUETOOTH
- For some reason it’s easy to forget what BT stands for, but it
doesn’t need an abbreviation.
2015-08-02 22:56:50 -05:00
Scott Lahteine 5418faa1f9 Add sanity checks for old names 2015-08-02 22:09:08 -05:00
Scott Lahteine e944f960de Add a sanity check for old name "BEEPER" 2015-07-31 17:13:53 -05:00
Scott Lahteine 37d1879386 Apply overridables to Configuration files 2015-07-31 00:03:36 -05:00
Scott Lahteine ed4a6371ad Add HAS_SERVO_ENDSTOPS to simplify conditonals 2015-07-30 23:35:57 -05:00
Scott Lahteine 81bba7ed88 More sanity checking for extruder requirements (PR#2531) 2015-07-27 10:14:43 -05:00
Scott Lahteine bcb7d5a149 Improve sanitycheck for TEMP_SENSOR_1 2015-07-25 21:17:36 -05:00
Scott Lahteine 5b24f59401 Add sanity checks for temp sensors 2015-07-25 21:17:36 -05:00
AnHardt 8b876241bd Some more servo code tweaks
Just set up the pin. Don't move to a random position.

Simplify servo::move()
* servo::move() does not need the pin parameter - The pin is set during servo_init() with attach().
* servo::move() does not need a return value.

SERVO_LEVELING is the wrong condition to deactivate the servos.

Remove some temporary (Servo *) variables.
SanityCheck for the servo indexes.
2015-07-24 22:04:49 -05:00
Scott Lahteine a1154d4a20 Enable Y and sanity-check CoreXZ (PR#2509) 2015-07-23 23:46:27 -05:00
Scott Lahteine 4971fa73f9 Add a sanitycheck error for old servo settings (PR#2491)
- Documentation solution for #2476
2015-07-22 16:35:10 -05:00
Scott Lahteine 391386dd94 Update configs for new servo deactivation 2015-07-15 19:13:40 -05:00
AnHardt 0e1cf78f5c Remove code for testing if probing range is too small (PR#2390)
becaue it is over-restrictive and superseeded by the now working tests
if the probe-recktangle can be reached. See iss#2366
2015-07-07 06:58:01 -05:00
Scott Lahteine ec93383ec8 Add SanityCheck for bed probe position settings (PR#2282) 2015-06-15 20:22:44 -05:00
Scott Lahteine 6b1b3adaf0 Consistent punctuation in SanityCheck errors (PR#2283) 2015-06-12 09:31:02 -05:00
Richard Wackerbarth b878bc5620 Introducing the Kossel Pro Build Configuration 2015-05-21 11:47:34 -05:00
Scott Lahteine 2b92b01afc Fix typo in SanityCheck.h 2015-05-10 22:58:37 -07:00
Scott Lahteine 2445ae3d3a Combine thermal runaway and watch-period
- Make thermal protection for all hotends and/or bed into simple
switches
- Now enable `WATCH_TEMP_PERIOD` when `THERMAL_PROTECTION_HOTENDS` is
enabled
- Move detailed thermal parameters to `Configuration_adv.h`
- Add sanity checks to warn about old configurations
- Change `WATCH_TEMP_PERIOD` to seconds instead of milliseconds
2015-05-10 22:52:01 -07:00
AnHardt c5e0e29d23 Add DISPLAY_CHARSET_HD44780_CYRILLIC as alternative in SanityCheck.h
and add some documentation - how to integrate a new font.
2015-04-21 21:42:00 +02:00
Scott Lahteine a488445cbe Fix spelling of "too" 2015-04-09 03:41:31 -07:00
Edward Patel 7dc64efe67 Added sanity check for MESH_NUM_X_POINTS and MESH_NUM_Y_POINTS 2015-04-08 20:52:48 +02:00
Edward Patel a9ed39b12d Moved checks into SanityCheck.h + removed previous added checks. 2015-04-07 22:58:08 +02:00
Scott Lahteine c065da52ec Spacing and spelling 2015-04-03 22:54:48 -07:00
Scott Lahteine c0ca26cd50 Merge branch 'Development' into fixup_probing
Latest upstream commits
2015-04-03 18:05:17 -07:00
Scott Lahteine 0e8182bbf2 Additional pin tests, cleanup 2015-04-03 15:31:35 -07:00
Chris Roadfeldt 59994bd519 Not doing network admin work, pin not ping... :) 2015-04-01 19:24:42 -05:00
Chris Roadfeldt 916f59e35f Spaces not tabs in language.h.
Catch unlikely but possible error and head crash when using
Z_PROBE_REPEATABILITY_TEST
2015-04-01 19:22:05 -05:00
Chris Roadfeldt bb41edc2ef Fixed extra #endif 2015-04-01 12:13:25 -05:00
Chris Roadfeldt a508d835db Changed Z_PROBE_AND_ENDSTOP to Z_PROBE_ENDSTOP.
Updated documentation in Configuration.h.
Cleaned up and commented some code relating to Z_PROBE_ENDSTOP.
Separated Z_MIN_ENDSTOP and Z_PROBE_ENDSTOP completely.
2015-04-01 02:14:55 -05:00
Chris Roadfeldt 45ece5afb1 Merge remote-tracking branch 'MarlinFirmware/Development' into Development 2015-03-31 03:07:57 -05:00
Chris Roadfeldt 17707e7479 Fixed Z_PROBE_PIN pullup bug.
Documented some additional areas that should be addressed if Z_PROBE is
fully separated from Z_MIN or Z_MAX.
Fixed a documentation error in sanity checks. Servos start at 0 not 1.
2015-03-31 02:56:41 -05:00
Scott Lahteine 5519882eea Fix up LCD_PROGRESS_BAR
- Some messages should not expire with `PROGRESS_MSG_EXPIRE`.
- Simplify conditional for progress bar with sanity checks.
- Rename `messageTick` to `expireStatusMillis` and make it the expire
time.
2015-03-30 18:00:54 -07:00
Chris Roadfeldt a9802c95b3 Ensure Z_PROBE_PIN is defined if Z_PROBE_AND_ENDSTOP is. 2015-03-29 04:18:37 -05:00
Chris Roadfeldt 666fad3494 Typo fixed in sanity check. 2015-03-29 03:25:03 -05:00
Chris Roadfeldt 82d2f11129 More additional sanity checks for Z_PROBE_AND_ENDSTOP 2015-03-29 02:53:55 -05:00
Chris Roadfeldt 05134f0807 Additional Sanity Checks for Z_PROBE_AND_ENDSTOP 2015-03-29 02:51:51 -05:00
Chris Roadfeldt 059052889f Further Sanity Checks for Z_PROBE_AND_ENDSTOP. 2015-03-28 06:08:04 -05:00
Chris Roadfeldt 8b81f20c61 Filling in more places where Z_PROBE_PIN and Z_PROBE_AND_ENDSTOP need to
be.
Added Sanity Check for it.
Added hook so it's enabled.
2015-03-28 05:55:42 -05:00
Scott Lahteine 04328d7537 Add zprobe_zoffset in set_bed_level_equation_*
- Also a small tweak to SanityCheck.h
2015-03-26 15:29:16 -07:00
Scott Lahteine a1c240b0a4 Delta supports some auto bed leveling options 2015-03-20 04:04:45 -07:00
Scott Lahteine 33c7c6e11d Conditionals.h requires Arduino.h 2015-03-20 01:27:14 -07:00
Scott Lahteine 670006b919 Remove invariant code from Configurations
- Add `Conditionals.h` with calculated configuration values
- Add `SanityCheck.h` with checks for configuration errors
- Remove equivalent code from all configurations
- Move error checks from some sources to `SanityCheck.h` also
- Fix initialization of count_direction in stepper.cpp
2015-03-19 22:22:23 -07:00