Commit graph

127 commits

Author SHA1 Message Date
Scott Lahteine e84389c976
Fix G2/G3 workspace plane parameters (#15475) 2019-10-07 17:09:20 -05:00
Scott Lahteine 56595a4c9c Improve G2/G3 precision
See https://github.com/MarlinFirmware/Marlin/issues/14745#issuecomment-538781253
2019-10-07 00:03:17 -05:00
Scott Lahteine 50e4545255
Add custom types for position (#15204) 2019-09-29 04:25:39 -05:00
InsanityAutomation 0ca6abce72 Add reporting to M290 (#15376) 2019-09-28 16:58:48 -05:00
Marcio Teixeira a18d16fb8b Do not implicitly concatenate localized strings (#15383) 2019-09-27 04:38:43 -05:00
Scott Lahteine 455dabb183
Add a feedRate_t data type (#15349) 2019-09-26 01:28:09 -05:00
Scott Lahteine b2e1f77f58 Fix extraneous "Home XYZ First" message 2019-09-25 21:57:20 -05:00
Scott Lahteine 4e8d9fe59b zprobe_offset => probe_offset 2019-09-24 23:36:09 -05:00
InsanityAutomation df1e51258a Add M851 X Y probe offsets (#15202) 2019-09-24 21:29:21 -05:00
Scott Lahteine 465c6d9230
Simpler Allen Key config. Fixes, cleanups from refactor (#15256) 2019-09-14 03:05:10 -05:00
Scott Lahteine 7496e1cd67 whitespace 2019-09-04 21:55:41 -05:00
Jamie 293b890940 Apply soft limits to G2/G3 final target (#15156) 2019-09-04 13:02:30 -05:00
Scott Lahteine 93cd66ac11 Tweaky change from (C) to (c) 2019-06-27 23:58:16 -05:00
Scott Lahteine cf3631226b Document G-code M290 2019-06-18 04:53:31 -05:00
InsanityAutomation 4900c28bf6 Fix IDEX tool-change, and more (#13614) 2019-04-09 18:33:40 -05:00
Roxy-3D 9cee81d47e Option to show babysteps total since G28 (#13580) 2019-04-06 18:04:34 -05:00
Marcio Teixeira c6466c23fe Silence signed/unsigned comparison warning. (#13508) 2019-03-29 13:33:45 -05:00
7eggert d96f7d6068 Minimum segments for G2/G3. Better for small arcs. (#13466) 2019-03-24 19:53:47 -05:00
Scott Lahteine 49cf92dc36
Extended condition macros (#13419)
Allow `ENABLED`, `DISABLED`, `PIN_EXISTS`, and `BUTTON_EXISTS` to take multiple arguments. Also add:
- Alias `ANY(...)` for `!DISABLED(...)`
- Alias `ANY_PIN(...)` for `PIN_EXISTS(a) || PIN_EXISTS(b) ...`
- Alias `EITHER(A,B)` for `ANY(...)`
- Alias `ALL(...)` and `BOTH(A,B)` for `ENABLED(...)`
- `NONE(...)` for `DISABLED(...)`
2019-03-16 23:43:06 -05:00
Scott Lahteine 87162658c4
Fix and improve software endstops (#13386) 2019-03-13 05:48:36 -05:00
Scott Lahteine 0feeef2604 Update copyright in headers 2019-02-12 15:30:11 -06:00
Ludy acf266fe78 Fix a compile warning, etc. (#12955) 2019-01-19 18:47:29 -06:00
Scott Lahteine c986239837
A single SERIAL_ECHO macro type (#12557) 2018-11-29 16:58:58 -06:00
Scott Lahteine 54ec5528a0 hasstatus => has_status 2018-11-14 01:34:28 -06:00
Roxy-3D cda5ef08fa
Debug of G2-G3 for UBL (#12386)
Changes only affect UBL.  Everything else is left alone.
2018-11-13 11:20:21 -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
TheSFReader a07ac6312f G0 feedrate may be fixed or variable (#12172) 2018-10-25 10:35:16 -05:00
Scott Lahteine 84b59d58fb Clean up whitespace 2018-10-16 02:02:20 -05:00
TheSFReader af939c158a Option for G0 to have a separate feedrate (#12089) 2018-10-16 01:49:51 -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 ce82015d5f Fix include in G80 2018-10-09 17:24:56 -05:00
Scott Lahteine 55e810d512 Fix G80 compilation 2018-10-08 13:11:36 -05:00
Scott Lahteine 52a37913c1 Extend and apply some corrections 2018-10-06 00:27:21 -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
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
Scott Lahteine d10f29ae2e Pass segment length in G2-G3 2018-09-06 01:43:27 -05:00
etagle 1367df2875 Replace double with float, optimize calculation 2018-07-04 22:28:56 -05:00
Scott Lahteine 8eaac0dab3
Add delta feedrate scaling (#11153) 2018-06-30 13:44:27 -05:00
etagle a11eb50a3e Refactor and optimize Stepper/Planner
Better encapsulation and considerably reduce stepper jitter
2018-05-20 06:23:58 -05:00
Scott Lahteine 99ecdf59af Smarter MIN, MAX, ABS macros
Use macros that explicitly avoid double-evaluation and can be used for any datatype, replacing `min`, `max`, `abs`, `fabs`, `labs`, and `FABS`.

Co-Authored-By: ejtagle <ejtagle@hotmail.com>
2018-05-13 04:52:56 -05:00
Scott Lahteine 306f0f2135
Move Stepper::synchronize to Planner (#10713)
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
2018-05-12 01:38:02 -05:00
Scott Lahteine c43235dd39 Remove non-special comments 2018-05-11 00:36:04 -05:00
ManuelMcLure 613a3be167 Remove hidden dependencies on destination. Fixes #10686. (#10691) 2018-05-11 00:30:51 -05:00
Scott Lahteine 19f189b4e5
Add UBL support for G2/G3 and G5 (#10648) 2018-05-08 11:10:45 -05:00
Scott Lahteine e8e60263c8 Scale feedrate (mm/s to deg/s) for SCARA 2018-04-06 19:47:48 -05:00
Rob Power d1f14202a9 [2.0.x] NANODLP_Z_SYNC requires linear axes (#10240) 2018-03-28 14:03:34 -04:00
Scott Lahteine 1cb810ff1c
[2.0.x] Automatically reset stepper timeout (#10179)
* Automatically reset stepper timeout in manage_inactivity

Any code that adds moves to the planner can skip resetting the stepper timeout. We can let `idle` / `manage_inactivity` reset the timer whenever it detects any moves in the planner.

* blocks_queued => has_blocks_queued
2018-03-21 19:30:06 -05:00
Scott Lahteine 91db7930dc Drop SCARA_FEEDRATE_SCALING
The updated planner takes the length of the move, so this pre-calculation is no longer needed.
2018-03-01 04:30:41 -06:00
Scott Lahteine 377108619b Fix plan_arc clockwise (G2)
Fix #9482
2018-02-11 03:34:25 -06:00
Scott Lahteine 9644fe1839 Lightly optimize arc length calculation 2018-01-23 19:13:59 -06:00
Scott Lahteine c694608450 Apply SCARA_FEEDRATE_SCALING to G2/G3 2017-12-21 22:33:27 -06:00
robpower 5595098063 V2 Extended NanoDLP_Z_Move_Sync to G4 & G28,Added all axis option. 2017-12-15 16:22:55 -06:00
Scott Lahteine 73e32925e4 References are better for array args 2017-12-11 00:27:06 -06:00
Scott Lahteine 4793c34c53 Fix M290 boolval bug
Fix #8577
2017-11-28 17:21:33 -06:00
Scott Lahteine d18d40e1d6 M290 report on change, P0 to leave Probe Z Offset alone 2017-11-25 16:47:39 -06:00
Scott Lahteine be00e421a7 Patch up M290, M851 2017-11-25 14:11:57 -06:00
Scott Lahteine ab03a31cc9 Patch G0/G1 for NANODLP_Z_SYNC 2017-11-24 14:11:12 -06:00
Scott Lahteine dc82babe8e Implement NANODLP_Z_SYNC for 2.0.x 2017-11-24 00:28:06 -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
Scott Lahteine 50f09cc029 Miscellaneous cleanup 2017-11-16 00:47:16 -06:00
Scott Lahteine c938273bd5 Coding standard patch of M290 2017-11-11 22:14:21 -06:00
Scott Lahteine 85a62bbf46 Misc. fixes to compiler warnings, etc. 2017-11-06 22:57:05 -06:00
Scott Lahteine f8393a0908 Operate in Native Machine Space 2017-11-04 00:05:38 -05:00
GMagician 727a403ba1 [2.0.x] Fix NO_MOTION_BEFORE_HOMING unwanted behaviour (#8176)
* [2.0.x] Fix NO_MOTION_BEFORE_HOMING unwanted behaviour

NO_MOTION_BEFORE_HOMING should prevent XYZ movements only when homing is not done.
E axes should be allowed

* Update G0_G1.cpp

* Update G0_G1.cpp
2017-10-30 22:50:22 -05:00
Scott Lahteine bd78ca0ee3 Add M290 Babystepping 2017-10-26 20:44:43 -05:00
Roxy-3D 72156a2029 change to better (more clear) names (#8050)
set_destination_to_current() changed to set_destination_from_current()

set_current_to_destination() changed to set_current_from_destination()
2017-10-21 11:42:26 -05:00
Scott Lahteine 90af1fe5ee Implement NO_MOTION_BEFORE_HOMING option 2017-10-01 21:58:50 -05:00
Scott Lahteine 9b4aa5ea8b Move G17-G19 to cpp 2017-09-21 16:26:50 -05:00
Scott Lahteine 56f4a43535 Move G5 to cpp 2017-09-21 16:26:50 -05:00
Scott Lahteine 760f29a88e Move G4 to cpp 2017-09-21 16:26:49 -05:00
Scott Lahteine 4007cbfe9e Move G2_G3 to cpp 2017-09-21 16:26:49 -05:00
Scott Lahteine 51f195e698 Move dwell to gcode 2017-09-21 16:26:48 -05:00
Scott Lahteine a98e9874db FWRETRACT as a feature 2017-09-21 16:26:46 -05:00
Scott Lahteine 722786966a Add gcode.cpp, motion.*, queue.* - Apply to some G-codes. 2017-09-21 16:26:45 -05:00
Scott Lahteine 4231faf779 Initial split-up of G-code handlers by category 2017-09-21 16:26:45 -05:00