Commit graph

76 commits

Author SHA1 Message Date
Scott Lahteine d554c1dda8 Clean up planner kernel pass methods 2016-08-30 14:16:13 -05:00
Scott Lahteine b73203a0b7 Move some includes around to uncover missing deps 2016-08-02 19:37:46 -07:00
Scott Lahteine f8b5749235 Replace division in planner with multiplication 2016-07-24 13:27:49 -07:00
Scott Lahteine 9f9fe043ba Apply sq macro throughout 2016-07-17 13:29:41 -07:00
Scott Lahteine 93ba5bddd7 Append units to feedrate variables 2016-07-17 13:29:41 -07:00
Scott Lahteine 05da02f0a2 Implement MIXING_EXTRUDER and SWITCHING_EXTRUDER 2016-07-17 10:53:10 -07:00
Scott Lahteine ef3bef6b9e Fix feedrate in gcode_T (max_feedrate is mm/s) 2016-06-16 16:03:14 -07:00
Scott Lahteine 6d62a4ffc8 Patch LIN_ADVANCE for style and forward-compatibility 2016-06-09 21:03:27 -07:00
Sebastianv650 fb8e880734 Add LIN_ADVANCE 2016-06-09 21:03:27 -07:00
Scott Lahteine 72c6f2923f axis_steps_per_unit => axis_steps_per_mm 2016-06-09 17:04:51 -07:00
Scott Lahteine 446515ab79 Adjust spacing in block_t 2016-06-09 17:04:51 -07:00
Scott Lahteine 3b08eb1eeb acceleration_st => acceleration_steps_per_s2 2016-06-09 17:04:51 -07:00
Scott Lahteine cb4704e07a Rename some planner acceleration vars
- `per_sq_second` => `per_s2`
- `per_sqr_second` => `per_s2`
- `axis_steps_per_sqr_second` => `max_acceleration_steps_per_s2`
2016-06-09 17:04:50 -07:00
Scott Lahteine 49ecaf774d Rename some auto/locals to avoid name conflict 2016-06-07 15:38:45 -07:00
Scott Lahteine 47b5c55c29 Implement the delayed-move technique 2016-06-05 02:29:49 -07:00
Scott Lahteine 381bc6f0b0 set_position => set_position_mm 2016-06-02 17:16:19 -07:00
Scott Lahteine ff53819856 Drop FORCE_INLINE in planner.h
This change actually does increase the binary size by about 12 bytes,
but how does it affect performance?
2016-05-30 17:18:28 -07:00
Scott Lahteine 470d5ac09f Apply static to Planner class 2016-05-30 16:22:41 -07:00
Scott Lahteine 5172d4ba40 COREYZ stepper, planner, endstop, babysteps 2016-05-23 13:58:40 -07:00
Scott Lahteine 516e79bbda Declare extruder_duplication_enabled in Marlin.h 2016-05-18 15:51:44 -07:00
Scott Lahteine 6398d497b3 Ultimate followup to Stepper/Planner patch
- Search all symbols and apply prefixes where needed
- Encapsulate some private methods
- Inline some setters
- Make `microstep_mode` a public method
2016-05-03 17:07:37 -07:00
Scott Lahteine 96f51f400f Planner singleton class 2016-04-30 17:26:50 -07:00
Scott Lahteine 0da744b7b0 Further cleanup of comments, partial Doxygen-style
Following up on #3231
2016-03-25 00:45:56 -07:00
jbrazio 5e5d250832 Added gplv3 header to all Marlin files 2016-03-24 18:01:20 +00:00
Scott Lahteine 4bbea5124d Support for multiple PWM fans 2016-03-19 03:10:18 -07:00
Scott Lahteine 0c7f7ebcfb Styling adjustments (PR#2668 & PR#2670)
Keep "astyled" reformatting
2015-10-03 22:02:45 -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
Scott Lahteine bf6eb93c61 Overridable Options - Part 10 (PR#2562)
Apply `ENABLED` / `DISABLED` macros to planner files.
2015-07-31 01:06:29 -05:00
Andrew Lenharth a0ae9e30df don't pass integer by reference, inefficient. (PR#2547) 2015-07-30 17:51:12 -05:00
Scott Lahteine 0fca084ea6 Make EEPROM reproducible in GCode
With these changes the output of `M503 S0` is all you need to restore
the EEPROM. Building on this it is straightforward to save and restore
the EEPROM state using the SD card or external GCode file.

- Added `M145` to set “heatup states” for the LCD menu
- Added `M420` to toggle Mesh Bed Leveling
- Added `M421` to set a single Mesh coordinate
- Extended `Config_PrintSettings` with added M codes
- Cleaned up some comments here and there
2015-04-26 20:56:33 -07:00
Scott Lahteine ccddc280be Apply three more commits 2015-04-12 22:47:44 -07:00
Scott Lahteine 1269c445ab Catch dangerous extrude before trying several 2015-04-09 01:40:48 -07:00
Scott Lahteine afff968e88 ARRAY_BY_EXTRUDERS, shorthand to sync planner
- Add some documentation to planner and stepper headers
- Patch up RAMBO pins with undefs
- Add `sync_plan_position` inline to set current XYZE
- Swap indices in `extruder_offset` to fix initialization values
2015-03-28 20:33:21 -07:00
Scott Lahteine 88e81a4804 Latest upstream commits, plus fixes
- Also add Manual Bed Leveling to the rest of the configs
2015-03-21 16:12:57 -07:00
Scott Lahteine 13fbf42d95 Cleanup of planner code
- Use named axis indexes, `X_AXIS` etc.
- Replace `block.steps_A` with block.steps[A]`
- Replace `A_segment_time` with `segment_time[A]`
- Add `A_AXIS`, `B_AXIS` for `COREXY` axes
- Conditional compile based on `EXTRUDERS`
- Add BLOCK_MOD macro for planner block indexes
- Apply coding standards to `planner.h` and `planner.cpp`
- Small optimizations of planner code
- Update `stepper.cpp` for new `block` struct
- Replace `memcpy` with loops, let the compiler unroll them
- Make `movesplanned` into an inline function
2015-03-20 20:42:49 -07:00
Edward Patel 8067a985ce Merge branch 'Development' into manual-bed-leveling+mesh-bed-level
Fixed conflicts:
	Marlin/planner.h
2015-03-17 22:48:08 +01:00
maverikou 8a739b6fba Merge branch 'Development' into delta_auto_bed_level
Conflicts:
	Marlin/Marlin_main.cpp
2015-03-16 08:24:26 +02:00
Edward Patel 0e51e53813 WIP. Adding bed leveling code. 2015-03-15 23:24:32 +01:00
alexborro 9157cbd8f3 Add Travel Acceleration and change the M204 options
Added option to set Travel Acceleration (non printing moves).
The M204 options was a non sense (S for printing moves and T for retract
moves).

It has been changed to:
P = Printing moves
R = Retract only (no X, Y, Z) moves
T = Travel (non
printing) moves

I will add this info o G-Code wiki in reprap.org. I also advise to put
this info in Marlin next version changelog.
2015-03-11 13:19:02 -03:00
maverikou 7c24b97958 Ported over Johann Rocholl's improvements for delta printers:
- Nonlinear auto bed leveling code (includes G29, G30, Z_RAISE_AFTER_PROBING). Cleaned it up to be a delta-specific AUTO_BED_LEVELING_GRID code path.
- Allen key z-probe deployment and retraction code. Cleaned it up and added safety checks.
2015-03-07 20:36:21 +02:00
alexborro d74aabf259 Revert "Change Auto_Bed_Leveling to Auto_Bed_Compensation" 2014-12-21 10:06:05 -02:00
John Davis e99f24ff2f Update planner.h
Changed level and leveling to compensation.
2014-12-19 17:51:14 -05:00
Scott Lahteine 07c6b5ab71 Using axis constants 2014-12-18 08:13:08 -08:00
Justin Nesselrotte 07c0eeee99 Fixed a comment in the planner 2014-06-01 19:04:41 -05:00
Alex Borro 253dfc4bc1 Bed Auto Leveling feature
Check the Readme for instruction how to enable and configure the feature
2013-09-29 13:20:06 -03:00
Scott Lahteine 5dabc95409 Apply all changes from latest Marlin_V1
Diffed and merged, preserving my updates
2013-06-06 15:49:25 -07:00
Simon Oliver 93f0463b21 Allow Edit menu to call fn after edit; Fix PID Ki and Kd display in menus; Actually use changed PID and Max Accel values
Add new 'callback' edit-menu types that call a function after the edit is done. Use this to display and edit Ki and Kd correctly (removing the scaling first and reapplying it after). Also use it to reset maximum stepwise acceleration rates, after updating mm/s^2 rates via menus. (Previously, changes did nothing to affect planner unless saved back to EEPROM, and the machine reset).

Add calls to updatePID() so that PID loop uses updated values whether set by gcode (it already did this), or by restoring defaults, or loading from EEPROM (it didn't do those last two). Similarly, update the maximum step/s^2 accel rates when the mm/s^2 values are changed - whether by menu edits, restore defaults, or EEPROM read.

Refactor the acceleration rate update logic, and the PID scaling logic, into new functions that can be called from wherever, including the callbacks.

Add menu items to allow the z jerk and e jerk to be viewed/edited in the Control->Motion menu, as per xy jerk.

Conflicts:
	Marlin/language.h
2013-04-12 13:31:30 +02:00
Bernhard Kubicek 451f9cc6d1 Residual in the comments: there are no more mm/minutes but only mm/sec in the planner buffer. 2012-05-09 08:05:13 +03:00
Erik van der Zalm e056bf8081 Added E-Jerk 2012-03-04 16:34:58 +01:00
Erik van der Zalm aac7aa3bf0 Queued fan control. Issue #90 2012-03-04 13:05:26 +01:00