Scott Lahteine
9248cfb0ad
Bed leveling that accounts for home XYZ
2016-09-10 13:47:21 -05:00
Scott Lahteine
6ac9d895ca
Tweak Filament Width variables
2016-09-10 13:29:25 -05:00
Scott Lahteine
d554c1dda8
Clean up planner kernel pass methods
2016-08-30 14:16:13 -05:00
Scott Lahteine
a485a19052
Added optional planner logging
2016-08-27 20:12:22 -05:00
Scott Lahteine
ab59280075
MIN_SEGMENTS_FOR_MOVE => MIN_STEPS_PER_SEGMENT
...
Follow-up to #4666
2016-08-21 08:56:03 -05:00
Scott Lahteine
27b80b1dd1
Merge pull request #4667 from thinkyhead/rc_M211_sw_endstop_switch
...
M211: Enable/Disable Software Endstops
2016-08-21 06:44:00 -05:00
Scott Lahteine
2f223b8c79
Use ABC and XYZ for "3"
2016-08-21 00:10:08 -05:00
Scott Lahteine
01d4703429
PREVENT_DANGEROUS_EXTRUDE => PREVENT_COLD_EXTRUSION
...
Also improve the documentation of this and related options, and set
EXTRUDE_MINTEMP to 170 everywhere.
2016-08-20 23:35:27 -05:00
Scott Lahteine
374f8d2014
dropsegments => MIN_SEGMENTS_FOR_MOVE
2016-08-20 18:52:15 -05:00
Scott Lahteine
628dcbc764
extruder_multiplier => flow_percentage
2016-08-18 22:13:47 -05:00
Scott Lahteine
b73203a0b7
Move some includes around to uncover missing deps
2016-08-02 19:37:46 -07:00
Scott Lahteine
d8945e8464
Fix Z_HEAD index for COREYZ
2016-08-02 15:05:17 -07:00
Scott Lahteine
f83369b79c
Update refresh_positioning - no need for obj ref
2016-07-31 18:01:13 -07:00
Scott Lahteine
844a4e799e
Account for DELTA in Planner::refresh_positioning
2016-07-29 18:41:11 -07:00
Scott Lahteine
753283e020
inverse_second => inverse_mm_s
2016-07-28 16:35:18 -07:00
Scott Lahteine
83e1d90ca3
Undo errant optimization of block->millimeters
2016-07-28 16:26:52 -07:00
Scott Lahteine
169c21b477
Merge pull request #4402 from thinkyhead/rc_consistent_positioning
...
Account for coordinate space offsets
2016-07-24 19:23:20 -07:00
Scott Lahteine
d8e5af6834
Use RAW_POSITION for MBL in planner.set_position_mm
2016-07-24 17:20:36 -07:00
Scott Lahteine
d8f2876753
Replace some float division with multiplication
2016-07-24 13:27:50 -07:00
Scott Lahteine
ddde785b37
Code formatting in planner.cpp
2016-07-24 13:27:50 -07:00
Scott Lahteine
f8b5749235
Replace division in planner with multiplication
2016-07-24 13:27:49 -07:00
Scott Lahteine
b921f6b69d
Optimize calculation of block->millimeters for DELTA
2016-07-24 13:27:49 -07:00
Scott Lahteine
3e2b3353b0
Fix axis indices for COREYZ
2016-07-23 19:02:14 -07:00
Scott Lahteine
4e67a85a5d
Macros to loop over axes
2016-07-23 13:09:28 -07:00
Scott Lahteine
4226f56f53
Revert the planner acceleration logic somewhat
2016-07-20 19:19:47 -07:00
Scott Lahteine
209f5c03d0
Fewer temporary vars in planner accel limit
2016-07-20 18:29:29 -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
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
e974ac63ef
Init matrix in planner.init
2016-07-12 15:55:27 -07:00
esenapaj
58177a1602
Suppress warnings
2016-07-12 08:22:24 +09:00
João Brázio
664232140d
Fixes somes compiler warnings
2016-06-23 03:12:55 +01: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
80ab749563
Rename acceleration locals for clarity
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
Reid Rankin
16212432c9
G20/21 and M149 support, and code_value() refactor
...
This is an update of MarlinDev PR #196 .
G20/21: support for switching input units between millimeters and
inches.
M149: support for changing input temperature units.
In support of these changes, code_value() and code_value_short() are
replaced with an array of functions which handle converting to the
proper types and/or units.
2016-06-08 16:51:10 -07:00
Scott Lahteine
49ecaf774d
Rename some auto/locals to avoid name conflict
2016-06-07 15:38:45 -07:00
Scott Lahteine
c2362c1b3c
Apply Marlin coding standards to MBL class
2016-06-03 21:43:32 -07:00
Edward Patel
c06de0f097
MBL: Added keeping MBL active when homing single axises for #3750
2016-06-03 21:42:29 -07:00
Scott Lahteine
381bc6f0b0
set_position => set_position_mm
2016-06-02 17:16:19 -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
esenapaj
1a97442d19
Follow-up the PR #3643(Temperature singleton)
...
Follow-up the PR #3643(Temperature singleton)
・Change from fanSpeedSoftPwm[0] to thermalManager.fanSpeedSoftPwm[0] in planner.cpp
It fix compilation error when FAN_SOFT_PWM is enabled.
・Remove declaration of setExtruderAutoFanState() in temperature.h
Because that function was abolished.
・Change from babystepsTodo to thermalManager.babystepsTodo in ultralcd.cpp
It fix compilation errors when BABYSTEPPING is enabled.
2016-05-05 18:01:39 +09:00
Scott Lahteine
084f6b5b44
Temperature singleton class
2016-05-04 19:42:12 -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
7fd0243048
Cleanup, debug strings in Planner::adjusted_position
2016-05-02 20:11:27 -07:00
Scott Lahteine
96f51f400f
Planner singleton class
2016-04-30 17:26:50 -07:00
Scott Lahteine
5e4e535ce8
Stepper and Endstops as singleton objects
2016-04-30 17:26:50 -07:00
Scott Lahteine
e38baaa23e
Fix an acceleration anomaly by making locals signed
2016-04-25 14:17:20 -07:00
Scott Lahteine
fce1e843b9
Patch steps rate comment in trapezoid function
2016-04-24 19:38:58 -07:00
Scott Lahteine
a4062a47ac
Rename baricuda variables
2016-04-19 19:43:38 -07:00
Scott Lahteine
c5a2ce4366
Merge pull request #3446 from thinkyhead/rc_fixup_M206_and_mesh
...
Fix home_offset handling and account for it in G29
2016-04-11 16:49:01 -07:00
Scott Lahteine
b1bb1c7989
Merge pull request #3466 from thinkyhead/rc_look_for_leveling_bug
...
Add CORE support to st_set_position and plan_set_position
2016-04-11 16:45:00 -07:00
Scott Lahteine
e087a99a10
Some cleanup of st_get_pos functions
2016-04-11 15:13:42 -07:00
Scott Lahteine
386140f361
Test time difference in safe way
2016-04-10 18:09:31 -07:00
Scott Lahteine
1b7356b3a1
Account for home_offset in G29 handler
2016-04-10 15:35:02 -07:00
Scott Lahteine
865dcf3fb4
Fix FILAMENT_WIDTH_SENSOR measurement
...
Only measure and store filament width when E is going forward.
2016-04-06 19:48:04 -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
Scott Lahteine
5f32184254
Merge pull request #3278 from thinkyhead/rc_cleanup_m111_redo
...
Echo all debug levels in M111, default to DEBUG_NONE
2016-03-29 20:34:31 -07:00
Scott Lahteine
05765fb570
Add DEBUGGING macro
2016-03-29 19:50:01 -07:00
Scott Lahteine
3252df7998
Minor cleanup to filament sensor code
2016-03-28 20:04:34 -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
AnHardt
ba4eebad2f
Fix Fan KICKSTART
...
Sorting ot what else belongs to what if was not so hard.
But the static `ms = ms = millis();` was a bit surpising.
2016-03-23 12:08:02 +01:00
Scott Lahteine
4bbea5124d
Support for multiple PWM fans
2016-03-19 03:10:18 -07:00
Scott Lahteine
d7c6fd5c2f
Merge pull request #3146 from thinkyhead/rc_enabled_true_false
...
Support "true" and "false" in the ENABLED macro
2016-03-15 17:35:55 -07:00
Scott Lahteine
6e1bc03d3b
Additional wrapping for #3140
2016-03-15 01:18:58 -07:00
Scott Lahteine
4b648793f2
Use ENABLED with DISABLE_[INACTIVE_][XYZ]
2016-03-13 22:15:45 -07:00
Scott Lahteine
f9ded2a7c4
Wrap macros to prevent bad expansions
2016-03-12 22:38:55 -08:00
Scott Lahteine
614febaaf3
Fix acceleration limits
...
See: https://github.com/Ultimaker/Marlin/pull/7
2016-03-06 05:51:59 -08:00
Scott Lahteine
71718d888a
Fix typos in check_axes_activity
2016-03-06 05:51:58 -08:00
Scott Lahteine
ff13070b59
Use _BV macros, patch up others
2016-03-06 05:51:55 -08:00
Scott Lahteine
209f5f21e0
Use macros where possible
...
Apply `constrain`, `NOMORE`, `NOLESS` and `CRITICAL_SECTION` macros
wherever possible.
2016-03-06 05:51:55 -08:00
Scott Lahteine
34b8b9f0f5
Merge pull request #2995 from thinkyhead/rcbugfix_corexy_corexz
...
Add CORE support to st_get_position_mm (and elsewhere)
2016-03-06 00:17:03 -08:00
Scott Lahteine
772460a7b8
Various minor spelling corrections
...
Redo of #2939 rebased against RCBugFix
2016-03-05 20:41:15 -08:00
Scott Lahteine
373e8a1ad4
Fixes for COREXY and COREXZ coordinates
2016-02-15 15:59:24 -08:00
Richard Wackerbarth
7a670e3911
Improve planner & stepper PR #263
2015-12-10 07:24:37 -06:00
Wurstnase
78a347a01a
change nx, ny, nz and ne from float to long
...
st_set_position takes long
```void st_set_position(const long& x, const long& y, const long& z, const long& e)```
2015-12-07 08:22:44 -06:00
Wurstnase
6d691aceee
change dx, dy, dz and de from float to long
...
anything is long, we don't need float there
2015-12-07 08:22:24 -06:00
Wurstnase
0fbfb22506
Renaming delta speeds (PR2824)
...
dx -> dsx
dy -> dsy
dz -> dsz
de -> dse
2015-12-04 07:55:45 -06:00
Scott Lahteine
9bdab4f3a8
Clean up "else" and other spacing
2015-11-12 00:03:21 -06:00
Scott Lahteine
0c7f7ebcfb
Styling adjustments (PR#2668 & PR#2670)
...
Keep "astyled" reformatting
2015-10-03 22:02:45 -05:00
Richard Wackerbarth
7b4bdc0203
DUAL_X_CARRIAGE motor enabling
...
As noted by @darkjavi et.al. in #103 , the E1 motor was not being enabled in planner.cpp when using DUAL_X_CARRIAGE. This patch enables and disables E1 as it should.
2015-09-30 04:31:19 -05:00
Scott Lahteine
f690b82343
Remove extra MAX_FREQ_TIME define (PR#148)
2015-09-08 13:11:12 -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
Richard Wackerbarth
29b456ae07
Suppress some compiler warnings
2015-08-16 06:56:47 -05:00
Scott Lahteine
46453905d6
Apply remaining ENABLED/DISABLED conditionals
2015-08-03 16:04:48 -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
a1154d4a20
Enable Y and sanity-check CoreXZ (PR#2509)
2015-07-23 23:46:27 -05:00
Scott Lahteine
9f53e2f0c9
Implement COREXZ in stepper.cpp and planner.cpp
2015-07-19 16:17:03 -05:00
Scott Lahteine
fa00e1d97f
Explode conditions common to corexy and cartesian
2015-07-19 16:17:03 -05:00
Richard Wackerbarth
54ddc1d417
Simplify DRY RUN (PR#2358)
...
Elsewhere DRYRUN turns off the heating elements
and ignores constraints on them.
Here, whenever motion is entered into the planner,
if DRY RUN is set, we instantly act as if the E_AXIS
is in the desired final position.
2015-07-19 10:15:53 -05:00
CONSULitAS
788eb6e647
planner.cpp: remove tab
...
planner.cpp: single evil and hidden tab removed ♻️ 😏
2015-06-06 20:13:56 -05:00
CONSULitAS
e55e65d1e4
planner.cpp: Add FAN_MIN_PWM for slow fan stopping issue …
...
@CONSULitAS
planner.cpp: Add FAN_MIN_PWM for slow fan stopping issue (V2.1 with
macro and linear scaling)
@thinkyhead thanks for idea on linear scaling
2015-06-06 20:13:56 -05:00
AnHardt
e400fce271
Merge pull request #2221 from MagoKimbra/Dryrun
...
Insert Debug DRYRUN Repetier Host compatible
2015-06-03 12:30:48 +02:00
wurstnase
e7e964432b
consistency name for multiplier
...
replace extruder_multiply with extruder_multiplier
like feedrate_multiplier or volumetric_multiplier
2015-06-01 22:33:22 +02:00
MagoKimbra
76306f9073
Insert Debug DRYRUN Repetier Host compatible
2015-06-01 18:34:45 +02:00
Scott Lahteine
d76a01194d
Slight size reduction by adding idle()
2015-05-26 20:08:21 -07:00
Scott Lahteine
513077c317
Minor change to fan kick
2015-05-16 19:42:28 -07:00
Scott Lahteine
35493e1af9
Tweak to planner.cpp position.debug
2015-05-03 16:03:05 -07: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
3f02da646c
Make sure axis_active is cleared for #1908
2015-04-14 03:41:37 -07:00
Scott Lahteine
ccddc280be
Apply three more commits
2015-04-12 22:47:44 -07:00
Scott Lahteine
8857b9e921
Use the extruder argument in plan_buffer_line
2015-04-12 16:57:00 -07:00
Scott Lahteine
1269c445ab
Catch dangerous extrude before trying several
2015-04-09 01:40:48 -07:00
Scott Lahteine
3162971cd6
current_position not static
2015-04-08 01:05:39 -07:00
Scott Lahteine
1d291be2ba
Fix de after PREVENT_DANGEROUS_EXTRUDE
...
- Set `de` to 0 when `position[E] = target[E]`
- Address regression mention in #1846
2015-04-07 20:01:08 -07:00
Scott Lahteine
c185912c19
Latest upstream commits, mostly
2015-04-03 21:58:48 -07:00
Scott Lahteine
e0d4368cb5
Minor code cleanup, move NUM_AXIS out of config
2015-04-03 20:45:24 -07:00
Scott Lahteine
b98ebd517e
disable / enable_all_steppers functions
2015-04-03 19:25:22 -07:00
Scott Lahteine
0e8182bbf2
Additional pin tests, cleanup
2015-04-03 15:31:35 -07:00
AnHardt
50a732360a
Replace extrudemultiply by extruder_multiply[active_extruder]
...
Fix for #1460 .
Seems to work with only one extruder. Can't test this myself with more.
2015-03-30 13:35:03 +02: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
19d418cd6a
Fix up the code to eliminate warnings
2015-03-27 00:32:58 -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
af14c684b5
Minor optimizations to planner code
...
- Prefetch values used more than once
2015-03-20 20:57:06 -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
8005d22c81
Added menu option for bed leveling.
2015-03-15 23:24:32 +01:00
Edward Patel
0e51e53813
WIP. Adding bed leveling code.
2015-03-15 23:24:32 +01:00
Scott Lahteine
c37f7d15c9
- Rename WRITE_E_STEP for consistency
...
- Add BIT and TEST macros
- Add _APPLY_ macros to stepper.cpp to help with consolidation
- Consolidate code in stepper.cpp using macros
- Apply standards in stepper.cpp
- Use >= 0 instead of > -1 as a better semantic
- Replace DUAL_Y_CARRIAGE with Y_DUAL_STEPPER_DRIVERS
2015-03-14 04:28:22 -07:00
alexborro
c0b6075f77
Fix max acceleration limits in planner
...
The max acceleration limiting was in wrong place.
2015-03-11 15:08:11 -03: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
afc737ca0c
Fix CoreXY Homing Routine.
...
Fixed how stepper ISR figure it out when the head (extruder) is going to
Min or Max direction.
Added Homing to Max Endstops.
2015-02-13 14:38:05 -02:00
MagoKimbra
986e723eeb
Add 4th extruder
2015-01-24 13:37:58 +01:00
daid
53f971095d
Revert "Reduce PROGMEM warnings"
2015-01-16 16:48:22 +01:00
Bo Herrmannsen
d4a665694a
Merge pull request #1350 from odewdney/Development
...
Reduce PROGMEM warnings
2015-01-13 11:26:50 +01:00
odewdney
538859669d
Removing compiler warnings for progmem
2015-01-11 18:14:21 +00:00
Alex Borro
422a958a34
Fix CoreXY speed calculation
...
For cartesian bots, the X_AXIS is the real X movement and same for
Y_AXIS.
But for corexy bots, that is not true. The "X_AXIS" and "Y_AXIS" motors
(that should be named to A_AXIS
and B_AXIS) cannot be used for X and Y length, because A=X+Y and B=X-Y.
So we need to create other 2 "AXIS", named X_HEAD and Y_HEAD, meaning
the real displacement of the Head.
Having the real displacement of the head, we can calculate the total
movement length and apply the desired speed.
2015-01-06 16:39:48 -02:00
alexborro
d74aabf259
Revert "Change Auto_Bed_Leveling to Auto_Bed_Compensation"
2014-12-21 10:06:05 -02:00
John Davis
ac204028e7
Update planner.cpp
...
Changed level and leveling to compensation
2014-12-19 17:49:22 -05:00
Scott Lahteine
07c6b5ab71
Using axis constants
2014-12-18 08:13:08 -08:00
Erik van der Zalm
058e446531
Merge pull request #1037 from filipmu/Filament-Sensor
...
Support for a filament diameter sensor
2014-10-11 22:56:01 +02:00
Filip Mulier
62db9848d3
Improvements and bug fixes in sensor delay buffer for filament sensor code
...
Improvement to avoid reinitializing delay buffer with every print. Fixed
issues in buffer indexing and memory out of bounds due to floating point
imprecision. Simplified the code by avoiding conversion to standard
diameter and 1cu mm extrusion, which caused complications in determining
mm extruded.
2014-08-16 06:50:13 -05:00
Filip Mulier
85649a4549
Real-time filament diameter measurement and control
...
This feature allows the printer to read the filament diameter
automatically and adjust the printer in real time. Added code to read
an analog voltage that represents a filament diameter measurement. This
measurement is delayed in a ring buffer to compensate for sensors that
are a distance away from the extruder. The measurement is used to
adjust the volumetric_multiplier for the extruder. Some additional g
codes (M404, M405, M406, M407) are used to set parameters and turn
on/off the control. g code M221 is updated. Pins for RAMPS1.4, RAMBO,
and Printrboard are identified for analog input. The configuration file
is updated with relevant user parameters.
2014-08-06 19:30:57 -05:00
midopple
17aa67e4ea
If the option DISABLE_INACTIVE_EXTRUDER ist active the extruder switch to early to inactive because there are some moves in the buffer. So the planner wait 32 moves to disable the unused extruder.
2014-07-13 21:52:32 +02:00
Dim3nsioneer
8a32c5395b
renaming the disable inactive extruder feature
2014-06-02 14:07:02 +02:00
Dim3nsioneer
29e7639933
Add switch unused feeder(s) off
...
Having the non-active feeder motors powered on all the time is not
necessary. A feature to deactivate the unused feeder motors has been
implemented. The feature is enabled on default but can be switched off
in the configuration.
2014-06-02 08:13:09 +02:00
whosawhatsis
856edfcc0d
Fixed math
...
This is why I wanted to sleep on the code I wrote while falling asleep
rather than immediately submitting a pull request.
2014-01-31 08:43:11 -08:00
whosawhatsis
d24df7af2c
M200 implementation
2014-01-31 00:54:19 -08:00
fsantini
6ae7f7870d
Merge branch 'Marlin_v1' of https://github.com/ErikZalm/Marlin into ErikZalm
...
Conflicts:
Marlin/Configuration.h
Marlin/Marlin_main.cpp
2013-12-23 12:20:32 +01:00
Erik van der Zalm
8349fc89a4
Fixed planner bug
2013-12-16 11:40:23 +01:00
fsantini
b64661070e
Fixed the plane vector equation to a simpler one (only dependent on the normal)
...
Removed the calculation of the inverse matrix since the rotation matrix is orthogonal, therefore inverted == transposed.
Much simpler and mathematically robust.
2013-12-06 21:32:21 +01: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
Erik van der Zalm
ff6fa09ecf
Moved corexy implementation from stepper to planner
...
(Thanks iquizzle)
2013-06-09 13:10:06 +02:00
Erik van der Zalm
c8dcc7c208
Allow increasing the software PWM frequency.
2013-06-09 12:52:49 +02:00
Erik van der Zalm
971ec35135
Expanded M302 to allow setting the temp
2013-06-02 17:36:23 +02:00
Robert F-C
40eb07bad4
Revert and extend previous change pin check change
...
Reviert previous change of #if BLAH_PIN > 0 to #if defined(BLAH_PIN) &&
BLAH_PIN > -1. Unfortunately some times pin 0 is used. For my sins I've
gone through and replaced all unsafe checks of #if BLAH_PIN > -1 with
the safe version.
2013-05-22 21:33:23 +10:00
Erik van der Zalm
6c45c3f4e7
BariCUDA changes
2013-05-16 19:01:12 +02:00
Erik van der Zalm
bd2cd4903e
Added #ifdef BARICUDA around the BariCUDA changes
2013-05-14 23:56:32 +02:00
Jordan Miller
37f3199df3
fixed problems in planner with solenoids for BariCUDA when set to 0
2013-05-14 23:35:01 +02:00
Jordan Miller
fbd899a37d
Support for BariCUDA Paste Extruder derived from MakerBot Frostruder. Using Ultimachine RAMBo board. M126/M127 and M128/M129.
2013-05-14 23:34:45 +02:00
midopple
a65a26d6b4
If CORE_XY is in use X and Y Axis had to be activated at the same time
2013-05-05 19:23:59 +02: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
daid303
0f3f5d083d
Minor cleanup of the new FAN_KICKSTART code. #334
2013-01-10 11:08:45 +01:00
Kevin O'Connor
3d91bd486c
Add "kick fan" feature - briefly run fan at full speed on start.
...
Add a feature to run the cooling fan at full speed for a small period
(default 100ms) when first starting the fan. Some fans wont reliably
start spinning at low power, and many fans have issue with the PWM at
low power. However, once the fan starts spinning it can reliably be
set to a wide range of PWM values.
2013-01-08 18:50:15 -05:00
Kevin O'Connor
3f2f94ef28
Be consistent in setting of the fan PWM.
...
Always set the FAN PWM value in check_axes_activity() and always use
the value of the active move if a move is active.
2013-01-08 18:49:18 -05:00
oni303
ab09fa4bbf
fixed pwm generation at pin D12 and D13 when one of them is used as FAN_PIN on Sanguino, added soft pwm entry for FAN_PIN in temperature.cpp
2012-12-16 01:36:57 +01:00
daid303
6a9bee27cc
Changed the naming of some LCD functions, so the names match better what the function does. Also moved around some prototypes for general cleanup.
2012-12-03 12:52:00 +01:00
daid303
94ea26ff46
Some minor changes on code style. And a bugfix where the counters for positioning in the stepper where wrong depending on compiler settings. (Caused strange values to reported back with M114 and endstop triggers). Also fixed compiling with FWRETRACT enabled.
2012-12-03 12:13:20 +01:00
Erik vd Zalm
b98fb17fe9
Small FREQUENCY_LIMIT changes
2012-11-21 20:17:44 +01:00
daid303
8f20562f49
Fix some of the crowded code style. And fixed the conditional. #300
2012-11-12 15:49:40 +01:00
daid303
72586eb30a
Solved few warnings.
2012-11-12 09:29:12 +01:00
daid303
06b58a9c4f
First cleanup. Moved all code to cpp files, so there are no dependencies on pde files. And no more odd requirement to cat files together. (Still need to fix the Makefile). Also cleaned up some defines and made defines upper case as by C coding conventions.
2012-11-06 12:06:41 +01:00
stohn
de0448343f
added KILL_PIN support / cleaned up manage_inactivity function definition
2012-08-21 14:48:29 +02:00
Erik van der Zalm
b67dacdc8f
Fixed AD595 define
2012-06-11 17:33:42 +02:00
Daid
7244aa7eb7
Merge branch 'Marlin_v1' of https://github.com/ErikZalm/Marlin into Marlin_v1
2012-05-19 17:38:46 +02:00
Erik van der Zalm
ba96059203
add additional dropsegments test
2012-05-16 19:21:44 +02:00
zittix
fbd91ab0b5
Fixes #153 for bad call to abs()
2012-05-16 18:17:34 +02:00
Erik de Bruijn
e3fe1f0d00
Made a more granular configuration possible PREVENT_LENGTHY_EXTRUDE. You can now decide to allow/disallow large length of extrusions to be executed.
...
Turning off the protection might be beneficial to those who want to do fast and long reversals.
2012-05-08 17:44:08 +02:00
Erik van der Zalm
67cf105bc6
Fixed AUTOTEMP (M109 S215 B260 F1 starts autotemp)
...
Changed SLOWDOWN. IF this does not work ok OLD_SLOWDOWN is the old algo.
2012-04-15 19:17:33 +02:00
Erik van der Zalm
4ca2f336f0
Changed default MINIMUM_PLANNER_SPEED -> 0.05
...
Fixed small bug in arcs
M105 prints now actual_temp/target_temp
2012-04-01 16:23:40 +02:00
Erik van der Zalm
61e09e6be2
Added FAN_PIN -1 checks
2012-03-08 22:09:49 +01:00
Erik van der Zalm
116dc86b8a
Fixed type in e-jerk
2012-03-04 23:09:13 +01: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
Erik van der Zalm
cb0c84e075
Merge remote-tracking branch 'justblair/master' into Marlin_v1
2012-03-03 20:20:55 +01:00
Blair Thompson
046a8e0039
Added more defines to the language.h file so that nowe most of the text strings are now configured via this file. Still got some hunting down to do to complete this task.
2012-03-03 15:51:47 +00:00
Daid
88d289caa1
Made plan_buffer_line arguments const, which optimizes better and fixes the RUNOUT_PREVENTION feature.
2012-02-29 11:38:12 +01:00
Erik van der Zalm
b48d67ce10
Fixed homing
2012-02-27 18:31:40 +01:00
Erik van der Zalm
018c567abf
Moved SLOWDOWN function. (jetty840)
...
Included AD595 calibration options. (daid)
2012-02-26 16:23:47 +01:00
Erik van der Zalm
84ea2d61e8
Moved gen7 boards to motherboard type 10, 11 and 12.
...
Split ramps1.3 in Sprinter like config and multiextruder config.
2012-02-24 23:34:41 +01:00
Erik van der Zalm
5aa9c41ab1
Changed comment mode for detection.
...
Added M221 extuder multiply factor.
2012-02-24 20:42:07 +01:00
Erik van der Zalm
ae3e7586c6
Added HOME_POS. This adds the posibility to make the center 0
...
Updated the Xsteps ... settings via the LCD menu
2012-02-22 18:07:56 +01:00
Erik van der Zalm
a0a1f81913
various changes
2012-02-21 20:17:28 +01:00
Erik van der Zalm
b58eae7657
Corrected e-length calculation in planner
2012-02-11 18:36:42 +01:00
Erik van der Zalm
6ef8459494
Corrected distance calculation. (thanks jv4779)
2012-02-09 19:53:06 +01:00
Erik van der Zalm
abb7e63906
fixed z-disable bug.
2012-02-05 21:14:55 +01:00
Erik van der Zalm
e45e5c68bb
Added support for Gen3+ (Pins file only)
...
Added late z enable. (blddk request)
Only calculate look ahead if >2 moves in buffer.
Removed some FORCE_INLINE to save memory.
Signed-off-by: Erik van der Zalm <erik@vdzalm.eu>
2012-02-05 12:42:15 +01:00
Bernhard
3c1a4aac2b
header file simplification
2011-12-22 12:38:50 +01:00
Erik van der Zalm
84d9cf7339
merging
2011-12-12 20:35:46 +01:00
Erik van der Zalm
e017228569
Merged multiple extruder support.
...
Soft PWM. (Sanguinololu can also have PID temperature control)
Interrupt save WRITE for addresses > 0x0FF
2011-12-12 19:34:37 +01:00
Bernhard
2bc5e7ec9e
prevent too long extrudes, or too cold extrudes
2011-12-09 15:09:52 +01:00
Denis B
4fd75dc813
Working version of multiple extruders (up to 3)
...
- The temperature control is pretty much complete
(not sure what to do w/ autotemp though)
Changed the pins assignment to clearly separate bed and extruder heaters
and temp sensors, changed a bit how termistor tables are handled.
- The steppers control is rudimentary
(only chanages what pins it uses depending on the active_extruder var,
but that's enough for switching extruder in the start.gcode in the
the profiles)
- Tested only w/ RAMPS 1.4
2011-12-06 00:09:16 -05:00
Erik van der Zalm
95a0b28acb
Merge branch 'Marlin_v1', remote-tracking branch 'origin/Marlin_v1' into Marlin_v1
2011-12-04 19:54:43 +01:00
Erik van der Zalm
af22e9cd38
Some advance modifications
2011-12-04 19:54:07 +01:00
Bernhard
7714b98da7
solved some compiler warnings that are now visible in arduino 1.0.
...
Found a couple of unused variables, that I commented.
Tried to solve the program memory warning message, and failed.
2011-12-04 12:40:18 +01:00
Bernhard
dfd240b260
overworked autotemp, removed one layer of nesting from the ultralcd.
2011-12-04 09:48:53 +01:00
Erik van der Zalm
6b86f15686
More 2nd extruder implementation. (Not usable)
...
Advance (not tested)
2011-12-02 17:45:05 +01:00
Bernhard
311627141b
Merge branch 'smallopt' into Marlin_v1
...
Conflicts:
Marlin/temperature.h
2011-11-28 21:36:01 +01:00
Erik van der Zalm
f75f426dfa
Removed interrupt nesting in the stepper ISR.
...
Add serial checkRx in stepper ISR.
Copied HardwareSerial to MarlinSerial (Needed for checkRx).
2011-11-27 21:12:55 +01:00
Bernhard
26a1de1e44
force inline
2011-11-27 16:04:58 +01:00
Bernhard
f8e170a44b
planner optimization by inline functions
2011-11-27 14:57:12 +01:00
Erik van der Zalm
aad4b75b94
First parts 2nd extruder
2011-11-26 17:33:25 +01:00
Bernhard
191f36b493
slowdown
2011-11-25 23:59:30 +01:00
Erik van der Zalm
c0f8c9fd72
Seperate ENDSTOP_INVERTING for X Y and Z
...
Added simple endstop filter.
Corrected M114 count display.
2011-11-25 13:43:06 +01:00
Bernhard Kubicek
379ea642e1
make tuneing sub-menu.
2011-11-20 16:05:42 +01:00
Erik van der Zalm
4e5becfc51
Added endstop reporting
2011-11-20 14:50:08 +01:00
Bernhard Kubicek
f52e1a9571
autotemp working, default=disabled.
2011-11-19 17:07:44 +01:00
Bernhard Kubicek
8a08b8e07e
trying to get autotemp to work.
2011-11-19 15:37:10 +01:00
Bernhard Kubicek
a9c7da06e3
and changed ultipanel to have the mm/sec and not mm/min
...
Merge branch 'Marlin_v1' of https://github.com/ErikZalm/Marlin into Marlin_v1
Conflicts:
Marlin/Marlin.pde
Marlin/ultralcd.h
2011-11-15 22:50:43 +01:00
Bernhard Kubicek
36958ee305
minor changes and first not-well working version of autotemp
2011-11-09 22:09:16 +01:00
Bernhard Kubicek
72ace55e6a
better visibility of public/private/imported variables
2011-11-06 23:34:40 +01:00
Bernhard Kubicek
79d1bfb5c0
made many possible variables static, so they cannot be used extern.
2011-11-06 19:36:29 +01:00
Bernhard Kubicek
1d171e9e52
reformating and some minor bugs/things found on the way.
2011-11-06 19:23:08 +01:00
Bernhard Kubicek
b9ea0651ec
Revert "this is not working. Do you maybe know why?"
...
This reverts commit 8bcdb9f5f0
.
2011-11-05 16:49:29 +01:00
Bernhard Kubicek
8bcdb9f5f0
this is not working. Do you maybe know why?
2011-11-05 16:43:44 +01:00
Bernhard Kubicek
40e8081623
changed end of line to windows, which seems to be the majority of developers main platform.
2011-11-05 14:19:57 +01:00
Bernhard Kubicek
00674af3a8
merge from the branch bkubicek/Marlin/zalmmerge
2011-11-05 14:13:20 +01:00
Erik van der Zalm
094afe7c10
Merged Marlin, Marlin non gen6 and Ultimaker changes
2011-11-04 18:02:56 +01:00