133 Commits (df02b992b0879fd04ed4143f7c4be98cbe6c5a09)

Author SHA1 Message Date
Scott Lahteine 267d6bef15 Eliminate most warnings
- Fix a bug reading `code_value` for `M503 Sn`
- Hide and remove unused variables
10 years ago
alexborro 0ce3576685 New Feature: Z_DUAL_ENDSTOPS
Z_DUAL_ENDSTOPS is a feature to enable the use of 2 endstops for both Z
steppers - Let's call them Z stepper and Z2 stepper.
That way the machine is capable to align the bed during home, since both
Z steppers are homed.
There is also an implementation of M666 (software endstops adjustment)
to this feature.
After Z homing, this adjustment is applied to just one of the steppers
in order to align the bed.
One just need to home the Z axis and measure the distance difference
between both Z axis and apply the math: Z adjust = Z - Z2.
If the Z stepper axis is closer to the bed, the measure Z > Z2 (yes, it
is.. think about it) and the Z adjust would be positive.
Play a little bit with small adjustments (0.5mm) and check the
behaviour.
The M119 (endstops report) will start reporting the Z2 Endstop as well.
10 years ago
Scott Lahteine 34a41648ab Merge branch 'Development' into planner_oh_planner
Latest upstream commits
10 years ago
Scott Lahteine 582cd780cd Fix compile error with `*_DUAL_STEPPER_DRIVERS`
- Patch up macros in stepper.cpp
10 years ago
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
10 years ago
Scott Lahteine 2176a22d42 Fix count_direction initializer
- Addressing #1625
10 years ago
alexborro e650d4044e Fix "Stop Print" function in the LCD menu
When one hit "Stop Print" option in LCD menu, the command buffer was not
cleared. The printer keep moving until the buffer has been emptied.
Actually I could not clear the command buffer as well.. I don't know
why, it doesnt work as expected.
I need to implement a routine inside Stepper ISR to handle such
situation.
10 years ago
wurstnase 05333f61b7 fix macro 10 years ago
alexborro cb676cdf39 Fix CoreXY homing bug introduced by PR #1606
The Check Endstop logic must be:

if (current_block->steps_x != current_block->steps_y || (TEST(out_bits,
X_AXIS) == TEST(out_bits, Y_AXIS)))
if (TEST(out_bits, X_HEAD))

not

if (TEST(out_bits, X_HEAD) && (current_block->steps_x !=
current_block->steps_y || (TEST(out_bits, X_AXIS) == TEST(out_bits,
Y_AXIS))))

Same applies for Y axis.
10 years ago
Scott Lahteine 4eabd80025 Fix babystep for extruder_duplication 10 years ago
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
10 years ago
domonoky d813090d90 Merge remote-tracking branch 'remotes/upstream/Development' into Development
Conflicts:
	Marlin/Marlin_main.cpp
	Marlin/stepper.cpp
10 years ago
Scott Lahteine d085725c86 More sanity-checking for ABL
- Moved sanity-checks to Marlin_main.cpp
- Applied to other configuration files
- Fixed formatting of ABL output
- Passing verbose level to probe_pt
- Miscellaneous cleanup
- Put CONFIG_STEPPERS_TOSHIBA into Configuration.h
10 years ago
Scott Lahteine dfb38874f8 Some suggested changes for #1555 10 years ago
domonoky 4a7aca2736 Merge remote-tracking branch 'remotes/upstream/Development' into Development 10 years ago
alexborro 715104e477 Fix Endstop check for CoreXY bots.
The X_Axis could not home to min while Y_Max endstop was trigged.
10 years ago
domonoky 443e7edef4 - Add support for L6470 Drivers.
- Both TMC, L6470 and pin-driven drivers work.
- All can be mixed and matched as needed.
10 years ago
domonoky 5727cb3ed4 Cleanup TMC Stepper a bit. 10 years ago
domonoky 38500165ea First attempt at adding TMC Driver support. May need some cleanup. 10 years ago
domonoky b55995aae8 Introduce a layer of macro indirection to all stepper pins. This allows other stepper drivers to redefine them, so they can use SPI/I2C instead of direct pin manipulation. 10 years ago
daid 266ff227cf Merge pull request #1510 from docdawning/Development
Trivial spelling correction
10 years ago
DocDawning dfd4e74a5c Trivial spelling correction 10 years ago
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.
10 years ago
MagoKimbra 986e723eeb Add 4th extruder 10 years ago
Scott Lahteine 9040446780 Merge pull request #1395 from AnHardt/iss1394
removed function step_wait() from stepper.cpp
10 years ago
Scott Lahteine 15a00a5a7c Add 1µs delay in other appropriate spots 10 years ago
AnHardt 23cb899c5a removed function step_wait() from stepper.cpp
removed function step_wait() from stepper.cpp because its used nowhere.
10 years ago
Scott Lahteine d9d4a78e0f Add proper delay in stepper.cpp
Issue #1385 describes a delay that the compiler is optimizing out and
this solution.
10 years ago
Bo Herrmannsen edfcf3b527 Toshiba Stepper Driver support
Tosh stepper drivers need to be driven slower, so the stepper code
was interleaved to separate the pin HIGH from the pin LOW. This adds
enough instructions to make it work, without needing nops.
10 years ago
Scott Lahteine f989bd5435 Simple code cleanup. Rename "homeing" to homing. 10 years ago
daid 2acd3792fc Merge branch 'Marlin_v1' of github.com:ErikZalm/Marlin into Marlin_v1 11 years ago
daid 8b4c4aa5c3 Add feature to check&retry CRC read errors on SD. 11 years ago
Cameron Lai 97ead2eccb Fix for microstepping pin mapping, not using Teensy pin mapping, but Arduino's default pin mapping so Arduino library can be used 11 years ago
Cameron Lai d85411f13a Revert "Fix for stepper microstepping"
This reverts commit eea3ba5588.
11 years ago
Cameron Lai 7c7f2d094e Revert "Fix for reading microstepping resolution"
This reverts commit 2715f6ddbf.
11 years ago
Cameron Lai 2715f6ddbf Fix for reading microstepping resolution 11 years ago
Cameron Lai eea3ba5588 Fix for stepper microstepping 11 years ago
daid 380144c20f Add Ultiboard2 electronics. With PWM current settings. For the few people that have this new board as experiment in their UM-Original. 11 years ago
Erik van der Zalm 457d8a0acb Fixed merge conflicts 11 years ago
bkubicek b832f5b9f6 added delta tower babystepping. Its untested, but hopefully florian horsch will be able to try.
also, removed some trouble for compilation with corexy.
I think that babystepping is only possible in z for a delta tower.
not sure if it would be usefull to step individual motors on a delta, i don't own one
11 years ago
bkubicek d147a057ac Add the socalled "Babystepping" feature.
It is a realtime control over the head position via the LCD menu system that works _while_ printing.
Using it, one can e.g. tune the z-position in realtime, while printing the first layer.
Also, lost steps can be manually added/removed, but thats not the prime feature.
Stuff is placed into the Tune->Babystep *

It is not possible to have realtime control via gcode sending due to the buffering, so I did not include a gcode yet. However, it could be added, but it movements will not be realtime then.

Historically, a very similar thing was implemented for the "Kaamermaker" project, while Joris was babysitting his offspring, hence the name.

say goodby to fuddling around with the z-axis.
11 years ago
Alex Borro 253dfc4bc1 Bed Auto Leveling feature
Check the Readme for instruction how to enable and configure the feature
11 years ago
Richard Miles ed1ab42186 Added Y_DUAL_STEPPER_DRIVERS
Enables two stepper drivers to be used for the Y axis (useful for
Shapeoko style machines)
Each Y driver can be stepped in either the same way or in opposite
directions, accounting for different hardware setups (leadscrew vs. belt
driven)
11 years ago
Richard Miles f4a59e4ce5 Revert "Added Y_DUAL_STEPPER_DRIVERS"
This reverts commit 7ee275b620.
11 years ago
Richard Miles 7ee275b620 Added Y_DUAL_STEPPER_DRIVERS
Enables two stepper drivers to be used for the Y axis (useful for
Shapeoko style machines)
Each Y driver can be stepped either the same way or in opposite
directions, accounting for different hardware setups (leadscrew vs. belt
driven)
11 years ago
Robert F-C 9547fb9dfb Add duplication and auto-park mode for dual x-carriage support. 11 years ago
hg42@gmx.net 2ca983568d separate INVERTING for MIN and MAX endstops (6 #defines instead of 3) 11 years ago
Robert F-C d7390e13d9 Support dual x-carriage printers
Dual x-carriage designs offer some substantial improvements for dual
extruder printing.
11 years ago
Erik van der Zalm bd96d22bfb Merge branch 'Marlin_v1' into thinkyhead
Conflicts:
	Marlin/Configuration.h
	Marlin/Configuration_adv.h
	Marlin/Marlin.h
	Marlin/Marlin_main.cpp
	Marlin/Servo.cpp
	Marlin/language.h
	Marlin/pins.h
	Marlin/planner.cpp
	Marlin/ultralcd_implementation_hitachi_HD44780.h
	README.md
12 years ago
Erik van der Zalm ff6fa09ecf Moved corexy implementation from stepper to planner
(Thanks iquizzle)
12 years ago