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
6 years ago
Holger Müller
1a6f2b29b8
Add support for Triple-Z steppers/endstops
6 years ago
Scott Lahteine
215eee4fe5
Use 'friend' to access set_directions
6 years ago
Cassiano Leal
ff51e7322d
Fix for Stepper::set_directions() compilation error ( #11838 )
6 years ago
Scott Lahteine
809b232fa2
Fix stepper directions after M501/M502
...
See https://github.com/MarlinFirmware/Marlin/issues/11103#issuecomment-421387611
Co-Authored-By: tcm0116 <tcm0116@users.noreply.github.com>
6 years ago
HenningJW
4fb2134f00
Fix non-sensical values for Zonestar themistor table ( #11817 )
...
Values taken from Zonestar firmware for P802QA with a Melzi board. Timestamps from the firmware package are from April 2016.
6 years ago
Scott Lahteine
b220a825a7
Fix raw_filwidth_value error
6 years ago
Scott Lahteine
8584d3697d
Fix servo count define conflict
...
`MAX_SERVOS` => `NUM_SERVO_PLUGS`
6 years ago
Scott Lahteine
d882717d98
Save some PROGMEM with constexpr ( #11798 )
...
When possible, make `active_extruder` a `constexpr` to save some PROGMEM.
6 years ago
Sam Lane
4f883d5971
[2.0.x] Extruder-Distinct Linear Advance K Factors ( #11789 )
6 years ago
Sam Lane
1b6bc19427
Add external closed loop controller support
6 years ago
Sebastianv650
7e8c073fba
Fix extruder stops extruding with LA ( #11758 )
6 years ago
Scott Lahteine
0c01099f17
hop_amount => current_hop
6 years ago
Kevin
e25d2ae4a2
[2.0.x] SWITCHING_TOOLHEAD ( #11623 )
6 years ago
Scott Lahteine
dcfde2317f
Pass segment length in prepare_kinematic_move_to ( #11737 )
6 years ago
AnHardt
530a13ab6c
[2.0.x] SECURITYFIX missing max temp error when PID is used ( #11717 )
6 years ago
scott0122
72fdb6bab3
Fix SWITCHING_NOZZLE zdiff ( #11683 )
6 years ago
Scott Lahteine
d1ceaf5550
[2.0.x] Followup to IDEX changes ( #11707 )
6 years ago
Scott Lahteine
8e18e48d49
Merge pull request #11610 from Freeviv/bugfix-2.0.x
...
[2.0.x] Editable servo angles
6 years ago
Giuliano Zaro
59e76e5fdf
[2.0.x] Fix planner computation ( #11708 )
...
Fix #11697
6 years ago
Roxy-3D
7680b64aa6
IDEX clean up ( #11690 )
6 years ago
teemuatlut
49e107cea9
Restrict SW serial to AVR ( #11696 )
6 years ago
Scott Lahteine
d55f44edba
Printcounter improvements ( #11689 )
6 years ago
scott0122
ada85d5585
Improve HOTEND OFFSET Z display precision to 3 ( #11686 )
6 years ago
Scott Lahteine
3e81745e81
Fix issues, make optional
6 years ago
Jan
aa80e448e2
Store servo angles in EEPROM
6 years ago
scott0122
6dc9553aa5
Fix SWITCHING_NOZZLE compile error ( #11657 )
6 years ago
Scott Lahteine
d1c9517903
Followup to hotend_offset[Z] patch
6 years ago
Scott Lahteine
e2b8fc4f17
Reduce some debug strings
6 years ago
Scott Lahteine
acf5ae3083
!ENABLED => DISABLED
6 years ago
Kevin
6483285bc5
HOTEND_OFFSET_Z always available ( #11603 )
6 years ago
Scott Lahteine
f0dbe61692
Tweaks to motion.h reachable tests
6 years ago
Roxy-3D
cd9868f442
Make position_is_reachable() smarter about IDEX machines`
...
On many IDEX machines the allowed travel of the X1 carraige and X2 carraige does not perfectly overlap.
This helps the issue. But more work needs to be done at the higher level. (For example the X1_MAX_POS should probably be factored into G26's mesh validation pattern.)
6 years ago
Scott Lahteine
ad12b9b46b
Fix indentation, whitespace, spelling, formbot pins...
6 years ago
Kevin
db30650731
Fix UBL/Homing ( #11566 )
6 years ago
InsanityAutomation
9de730b2bf
Update tool_change.cpp ( #11559 )
6 years ago
Scott Lahteine
1561e61df7
New TMC2208 constructor
...
Co-Authored-By: teemuatlut <teemu.mantykallio@live.fi>
6 years ago
Nils Hasenbanck
b37bfeffeb
[2.0.x] Use the new const functions of the persistentStore api ( #11544 )
6 years ago
Dave Johnson
c64199941e
Compile only selected PIO environment ( #11519 )
6 years ago
Scott Lahteine
6964e1a95a
Clean up trailing whitespace
6 years ago
Scott Lahteine
a4b0148365
Easier to find 'static inline'
6 years ago
Nils Hasenbanck
577aeb4aa9
All EEPROM access uses persistentStore
6 years ago
Scott Lahteine
6a8b906318
Followup for persistent_store_api.h
6 years ago
Chris Pepper
66d2b48b59
Update PersistentStore api ( #11538 )
...
- Clean up the API to use a `static` class instance to adhere to Marlin convention
- Add `const` position data access for read/write
- Add Storage capacity to the interface
6 years ago
Scott Lahteine
f1347f783d
Optimize thermistor table 71
...
agData in Table 71 is extremely oversampled (see Issue #11220 ). I have removed the data points that perform *worse* than linearly interpolating the remaining points, and fixed up two points that were simply rounded incorrectly.
Co-Authored-By: Aaron Griffith <aargri@gmail.com>
6 years ago
Scott Lahteine
c93538e9f3
UBL/planner patch tweaks
6 years ago
Thomas Moore
fc55f1da01
Account for UBL correction when setting the planner position ( #11486 )
6 years ago
Giuliano
e85feb2545
[2.0.x] Better timing handling ( #11461 )
6 years ago
Scott Lahteine
79835590e3
Easier to disable homing validation ( #11458 )
6 years ago
Scott Lahteine
9c62c47579
[2.0.x] Fix Dual X Carriage tool change crash ( #11447 )
6 years ago
Scott Lahteine
b826bf4194
Fix initial safe_speed in jerk code ( #11417 )
7 years ago
Roxy-3D
16432376ab
Revert "[2.0.x]Idex and bl touch fixes" ( #11407 )
...
* Revert "[2.0.x] bltouch home refinements (#11397 )"
This reverts commit 74900f7a70
.
* Revert "[2.0.x]Idex and bl touch fixes (#11395 )"
This reverts commit 6dafb90c01
.
7 years ago
Giuliano
74900f7a70
[2.0.x] bltouch home refinements ( #11397 )
...
Just create a better functions call logic flow
7 years ago
silentninja1
6dafb90c01
[2.0.x]Idex and bl touch fixes ( #11395 )
...
* Fix BLTouch homing
Deploy at start, dont call generic stow function at finish or raise goes too high before setting 0
* Update tool_change.cpp
* Update motion.cpp
* Update motion.cpp
* Update motion.cpp
* Update motion.cpp
* Change brackets to be more in align of Marlin coding standards
7 years ago
Giuliano
5ce5ff8e9b
[2.0.x] fix bltouch homing ( #11379 )
...
Partially revert. Seems to solve the issue, but one report says G29 still fails.
7 years ago
Lee Olivares
094e6d81a5
Add Einstart-S support ( #11219 )
...
Indeed the HAL does not need to be mucked around with to expose ATmega2560 pins not available as numbers on the MEGA board, I'll need to update the wiki with that tidbit and a reference to the pin-mapping comment in `fastio_1280.h`.
7 years ago
Giuliano
4237c3d9f8
[2.0.x] different bltouch init ( #11135 )
7 years ago
Andy Shaw
624986d423
Ensure ADC conversion is complete before reading ( #11336 )
...
The current Marlin implementation relies on a timer interrupt to start the ADC conversion and read it. However in some circumstances the interrupt can be delayed resulting in insufficient time being available for the ADC conversion. This results in a bad reading and false temperature fluctuations. These changes make sure that the conversion is complete (by checking the ADC hardware via the HAL) before reading a value.
See: https://github.com/MarlinFirmware/Marlin/issues/11323
7 years ago
Scott Lahteine
22ebbc091f
Tweak some SoftPWM code
7 years ago
teemuatlut
fbcdf5eaeb
Simplify stepper driver per-axis selection
7 years ago
Eyal
fbdbe53290
Fix get_period_inverse(0) so it doesn't crash ( #11334 )
7 years ago
Scott Lahteine
63a146d424
planner.synchronize at start of tool_change
...
See https://github.com/MarlinFirmware/Marlin/issues/10949#issuecomment-398540498
7 years ago
Roxy-3D
71df1f7f57
Don't display M421 information for UBL at startup
...
It takes too long to display the mesh data for large mesh's at startup. We should consider ways to speed this up.
Perhaps it makes sense to display an entire row of the mesh instead of just one mesh point?
7 years ago
Giuliano
e5ea9d200f
[2.0.x] fix kill printer ( #11260 )
...
This will fix kill message on dual printer with 0 alignment offset
7 years ago
Scott Lahteine
25e2ca8896
Add Z_CLEARANCE_MULTI_PROBE
...
Co-Authored-By: nightgryphon <ngryph@gmail.com>
7 years ago
Scott Lahteine
566d05006d
report_state > event_handler
...
Make the endstop report method track endstop changes on its own.
7 years ago
Scott Lahteine
6b521b6df2
Loosen thermistor table size limit
...
Co-Authored-By: Aaron Griffith <aargri@gmail.com>
7 years ago
Scott Lahteine
63f4c9bdb9
Followup to float maths patch
7 years ago
Scott Lahteine
2992112da0
Optimize delta kinematics
...
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
7 years ago
etagle
1367df2875
Replace double with float, optimize calculation
7 years ago
Scott Lahteine
68e6650df7
Remove Quake Fast Inverse SQRT (it isn't faster)
7 years ago
Scott Lahteine
9c058091e9
No M914 or SGT set for non-sensorless axes
7 years ago
Scott Lahteine
568cfe7caa
Add thermistor 501 (100K Zonestar)
7 years ago
Scott Lahteine
c51e27d11d
Do a hard kill for failed homing moves ( #11161 )
7 years ago
Scott Lahteine
90ba77ea0f
Lose the old HOMEAXIS macro
7 years ago
Scott Lahteine
2421f3a47d
Detect endstop hits in any direction
7 years ago
Scott Lahteine
8eaac0dab3
Add delta feedrate scaling ( #11153 )
7 years ago
Scott Lahteine
bd7f5848f1
Remove JUNCTION_DEVIATION_INCLUDE_E option ( #11147 )
7 years ago
Scott Lahteine
42f9921482
Ignore Z min endstop with separate Z-probe
...
To allow for the case where a Z endstop (e.g., hall effect) is higher than the probe trigger point, don't check the Z min endstop during probe moves. See #11134
7 years ago
Scott Lahteine
aa4cd2e861
Eliminate stepper.* signed/unsigned warnings
7 years ago
Eduardo José Tagle
edb21f349a
Fix stepper/planner block handling, race conditions ( #11098 )
...
- Allow planner to alter the deceleration phase of the currently executing block.
- Remove BUSY flag, as it is NON ATOMIC to set bits in the Stepper ISR and Planner at the same time.
7 years ago
Scott Lahteine
4d3a9930c5
Match ASM comment spacing to 1.1.x
7 years ago
Scott Lahteine
053438a3aa
Poll all endstops, even when stationary ( #11123 )
7 years ago
Andy Shaw
3b3029c4bf
Make max_e_jerk an array to reduce CPU usage ( #11118 )
7 years ago
Giuliano
8d8f257384
[2.0.x] Fix advanced pause init values ( #11095 )
...
Fixed for cycle used to initialize default values
7 years ago
etagle
5b49fccf80
Add stepper driver DIR delay configuration option
...
...and recommended pulse width configuration for A4988
7 years ago
etagle
fb4e0b105b
Fix endstops compilation error
7 years ago
Eduardo José Tagle
48a15d1c7e
[2.0.x] Fix stepper/planner race condition and Stepper pulse timer ( #11081 )
...
* Planner: Removal of some race conditions between Stepper ISR and Planner, some of them pointed out by @AnHardt, some of my own findings
* Fixing timing on stepper pulses adding a compensation for the non-null time required to set ports.
7 years ago
Scott Lahteine
50b6204079
Fix LIN_ADVANCE max_e_jerk_factor
...
According to https://github.com/MarlinFirmware/Marlin/issues/9917#issuecomment-399204568
7 years ago
Scott Lahteine
99591dc20c
Filter endstops state at all times ( #11066 )
7 years ago
Scott Lahteine
7406f04029
Use MAX (not max) in stepper.h
7 years ago
Scott Lahteine
da94e0bd27
Unsigned eeprom mesh addresses
7 years ago
Scott Lahteine
4c8d6df13c
Extra insurance against endstop false positives ( #11013 )
7 years ago
Scott Lahteine
81edbfa665
Merge pull request #11004 from ejtagle/always_honor_maximum_step_rate
...
[2.0.x] Fix stepper pulse minimum period and timing calculations
7 years ago
Scott Lahteine
f3fed52348
Fix coolstep_min_speed / sensorless homing
...
Fix #8890
7 years ago
etagle
a215725df6
Fix stepper pulse timing
...
Always honor minimum period on stepper pulse generation, and fix timing calculations
Signed-off-by: etagle <ejtagle@hotmail.com>
7 years ago
Scott Lahteine
0d79128c8d
Localize stepper-specific defines
7 years ago
Scott Lahteine
4dbec774b5
HAL_*_TIMER_RATE => *_TIMER_RATE
7 years ago
Scott Lahteine
9d04f47d98
Improvements for junction_deviation_mm
...
- Drop `max_jerk` with `JUNCTION_DEVIATION`
- Add `max_e_jerk_factor` for use by `LIN_ADVANCE`
- Recalculate `max_e_jerk_factor` when `junction_deviation_mm` changes
- Fix LCD editing of `junction_deviation_mm`
7 years ago
Scott Lahteine
f2c3b0d476
Use bit flags for homed/known
7 years ago
Scott Lahteine
43bdd0bfe4
Fix indent in stepper.h
7 years ago
Scott Lahteine
3fd1f32b73
Fix ADC key and chamber temp
7 years ago
Scott Lahteine
a2f521d34b
Add Junction Deviation mm runtime setting ( #10990 )
7 years ago
etagle
6f14bcaa3e
Add MAXIMUM_STEPPER_RATE, enforce in multi-stepping
...
The timing value should be properly set for ALL boards. The compiler will check and set maximum step rate calculations based on those values.
7 years ago
etagle
39a7e7720d
Adaptive multiaxis step smoothing
...
- Stepper bugs fixed
- Support MIXING_EXTRUDER with Linear Advance
- Miscellaneous cleanup
7 years ago
Giuliano
b64cc9329e
[2.0.x] Fix dual enstop home ( #10980 )
7 years ago
Scott Lahteine
3701869e6c
Add HAL_timer_start for AVR, use stepper timer to time pulses
7 years ago
etagle
d82704354f
Increase the planner first block HOLD delay to 100mS
7 years ago
Scott Lahteine
334341c632
Hephestos config updates ( #10960 )
7 years ago
Scott Lahteine
55aedf036b
Fix M503 ABL mesh report. (Zero-based IJ indices)
7 years ago
Scott Lahteine
d8b983f624
More concise M503 output for M906, M913, M914 ( #10947 )
7 years ago
Scott Lahteine
ad8d3150aa
Cleanup for dual endstops homing
7 years ago
Eduardo José Tagle
d3c02410a8
[2.0.x] Small assorted collection of fixes and improvements ( #10911 )
...
* Misc fixes and improvements
- Get rid of most critical sections on the Serial port drivers for AVR and DUE. Proper usage of FIFOs should allow interrupts to stay enabled without harm to queuing and dequeuing.
Also, with 8-bit indices (for AVR) and up to 32-bit indices (for ARM), there is no need to protect reads and writes to those indices.
- Simplify the XON/XOFF logic quite a bit. Much cleaner now (both for AVR and ARM)
- Prevent a race condition (edge case) that could happen when estimating the proper value for the stepper timer (by reading it) and writing the calculated value for the time to the next ISR by disabling interrupts in those critical and small sections of the code - The problem could lead to lost steps.
- Fix dual endstops not properly homing bug (maybe).
* Set position immediately when possible
7 years ago
Scott Lahteine
2deff0d9b9
Fix/Improve junction deviation
...
- Respect axis max acceleration limits instead of forcing a fixed acceleration value.
- The `junction_unit_vec` ensures proper handling of entry and exit speeds even when the axes involved have different limits.
7 years ago
Scott Lahteine
d259070980
Clean up trailing spaces from vim, etc.
7 years ago
Scott Lahteine
b90f54b0fc
Improve probe logging
7 years ago
Scott Lahteine
4299e5dc8b
Modify E-stepping macros for use in LINEAR_ADVANCE ( #10885 )
7 years ago
Scott Lahteine
8f14ef855d
More concise commentary in planner.cpp
7 years ago
Scott Lahteine
6919e87656
Minor cleanup of multi-stepping logic
7 years ago
Scott Lahteine
853a9056ac
Long thermistor tables need special consideration
7 years ago
Scott Lahteine
a4f9c3373f
Tweak thermistor spacing
7 years ago
Scott Lahteine
1ce97f1f6d
Faster (bisect) search in thermistor tables ( #10883 )
7 years ago
Scott Lahteine
0ca9db7051
Correct HOTENDS for SWITCHING_EXTRUDER
7 years ago
Eduardo José Tagle
7b9f0302d4
Fix Bresenham rounding errors, add link to article ( #10871 )
7 years ago
Scott Lahteine
2566342979
Adjust some commentary
7 years ago
Scott Lahteine
6775a16c97
Fix switching extruder stepping with LA
7 years ago
Scott Lahteine
931ab4ec40
Rename Junction Deviation options
7 years ago
Scott Lahteine
aaaf09bda2
BEZIER_JERK_CONTROL => S_CURVE_ACCELERATION
7 years ago
Scott Lahteine
01d37e00af
Fix up stepper ISR with linear advance timing ( #10853 )
...
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
7 years ago
Scott Lahteine
7261f48872
Fix reset of endstops and move state
7 years ago
Scott Lahteine
50fa8e01c1
Minor optimization of axis_did_move bits
7 years ago
Scott Lahteine
f28e366b77
Followup for core endstops
7 years ago
Scott Lahteine
9644d56b42
Patches for core motion tests
7 years ago
Scott Lahteine
3e3789da85
Regression: Endstops Core compatibility ( #10823 )
...
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
7 years ago
Scott Lahteine
4b610b333e
Tweak G38 formatting
7 years ago
Scott Lahteine
d2647c1f19
Fix G1 behaviour after tool unpark
...
Fix #10777 for 2.0.x
Co-Authored-By: Ante Vukorepa <o.orcinus@gmail.com>
7 years ago
Scott Lahteine
0c3773d724
Cleanup in stepper_indirection.h
7 years ago
Scott Lahteine
4b2f6e3b2b
[2.0.x] Add endstop noise filter ( #10796 )
7 years ago
Scott Lahteine
65a004564c
Stepper::set_position needed for some applications
7 years ago
Scott Lahteine
435ecb6b67
Followup to stepper/planner refactor
7 years ago
Bob Kuhn
d557c84a71
[2.0.x] Error for FAST_PWM_FAN with 32 bit CPU ( #10798 )
7 years ago
etagle
569df3fc0c
Fix interrupt-based endstop detection
...
- Also implemented real endstop reading on interrupt.
7 years ago
etagle
a4af975873
Fix planner block optimization
...
- Fixed the planner incorrectly avoiding optimization of the block following the active one.
- Added extra conditions to terminate planner early and avoid redundant computations.
7 years ago
etagle
e0ca627033
Planner block HOLD flag
...
Allows the Stepper ISR to wait until a given block is free for use. Allows Planner to plan the first move, which is split into two.
7 years ago
etagle
a11eb50a3e
Refactor and optimize Stepper/Planner
...
Better encapsulation and considerably reduce stepper jitter
7 years ago
etagle
0566badcef
Add memory barrier, optimal interrupt on-off
...
Disabling an ISR on ARM has 3 instructions of latency. A Memory barrier is REQUIRED to ensure proper and predictable disabling. Memory barriers are expensive, so avoid disabling if already disabled (See https://mcuoneclipse.com/2015/10/16/nvic-disabling-interrupts-on-arm-cortex-m-and-the-need-for-a-memory-barrier-instruction/ )
7 years ago
Scott Lahteine
7dc03ce721
Simplified fix for babystep pulse width
...
Alternative to the apparently superfluous double delay
7 years ago
Scott Lahteine
65270d6a96
Fix LIN_ADVANCE + SWITCHING_EXTRUDER
...
Followup to #10656
7 years ago
Bob Kuhn
9ad42d6617
add delay between pulse edges ( #10778 )
7 years ago
Scott Lahteine
83d42f33e1
Add HAS_HOTEND_OFFSET_Z conditional
7 years ago