70 Commits (ca26011e3c99b6d5fc0b0b7742205f743394051b)

Author SHA1 Message Date
Scott Lahteine ecf7cdde65 Augment planner/stepper getters/setters 8 years ago
Scott Lahteine 5fff8d148b Clean up digital pots and microsteps 8 years ago
Scott Lahteine 7d72ed688c Revert motor_current_setting to `constexpr`
We should use `constexpr` wherever it makes sense, for its added benefits. See http://stackoverflow.com/questions/13346879/const-vs-constexpr-on-variables
8 years ago
Scott Lahteine 5efb12e889 Simpler report_current_position for SCARA 8 years ago
Scott Lahteine 5cbed13f41 'constexpr' => 'const' for PWM_MOTOR_CURRENT 8 years ago
esenapaj 954563d603 Adjust spacing 8 years ago
esenapaj 7e9576dc5b Extend the e_steps[] from int to long for allowing more than 32,767 E steps
Probably needed for long straight lines when using high microstepping
8 years ago
Scott Lahteine 8ff338c2b9 Patch stepper.h for SCARA 8 years ago
Scott Lahteine 9bf78ef465 Fix capitalization of counter_m 8 years ago
Scott Lahteine 08f717e5f7 Use bit-size typedefs for some stepper vars 8 years ago
Scott Lahteine 2f223b8c79 Use ABC and XYZ for "3" 8 years ago
Scott Lahteine b73203a0b7 Move some includes around to uncover missing deps 8 years ago
Scott Lahteine f8b5749235 Replace division in planner with multiplication 8 years ago
Scott Lahteine 05da02f0a2 Implement MIXING_EXTRUDER and SWITCHING_EXTRUDER 8 years ago
Scott Lahteine 117db77c55 make motor_current_setting static and constexpr 9 years ago
Scott Lahteine 8d8180e028 Parse M905 args in Marlin_main.cpp 9 years ago
Scott Lahteine aad9c0ed8d Apply updated ISR timing code 9 years ago
Scott Lahteine 6d62a4ffc8 Patch LIN_ADVANCE for style and forward-compatibility 9 years ago
Sebastianv650 fb8e880734 Add LIN_ADVANCE 9 years ago
Scott Lahteine 72c6f2923f axis_steps_per_unit => axis_steps_per_mm 9 years ago
Scott Lahteine e2a8961635 Use e_steps[EXTRUDERS] instead of e_steps[4] 9 years ago
Scott Lahteine 81384dfd36 Apply static to remaining stepper methods 9 years ago
Scott Lahteine 663d2463dc Merge pull request #3922 from thinkyhead/rc_statics_stepper
Apply static to Stepper class
9 years ago
Scott Lahteine 668d50f68e Keep Stepper encapsulation, use static data and methods 9 years ago
Scott Lahteine ecfdcf7250 Tiny calc_timer speedup 9 years ago
Scott Lahteine dc22097b3a Fix some of array initializations
- In `stepper.h` init `count_direction` array
- In `ultralcd.cpp` init `autotune_temp` array
9 years ago
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
9 years ago
esenapaj 605808fe37 Additional follow-up the PR #3631(Encapsulate S...
Additional follow-up the PR #3631(Encapsulate Stepper, Planner, Endstops in singleton classes)

・Change from abort_on_endstop_hit to stepper.abort_on_endstop_hit in endstop.cpp, Marlin_main.cpp, and ultralcd.cpp
・Add include path to cardreader.h and temperature.h in endstop.cpp(for CardReader class and disable_all_heaters())
It fix compilation error when ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED and SDSUPPORT are enabled.

・Change from digipot_current() to stepper.digipot_current() in Marlin_main.cpp
・Change from digitalPotWrite() to stepper.digitalPotWrite() in Marlin_main.cpp
It fix compilation errors when HAS_DIGIPOTSS is enabled.

・Change from microstep_mode() to stepper.microstep_mode() in Marlin_main.cpp
・Change attribute of microstep_mode() from private to public in stepper.h
・Change from microstep_readings() to stepper.microstep_readings() in Marlin_main.cpp
・Change from microstep_ms() to stepper.microstep_ms() in Marlin_main.
It fix compilation errors when HAS_MICROSTEPS is enabled.
9 years ago
Scott Lahteine 96f51f400f Planner singleton class 9 years ago
Scott Lahteine 5e4e535ce8 Stepper and Endstops as singleton objects 9 years ago
Scott Lahteine e087a99a10 Some cleanup of st_get_pos functions 9 years ago
Scott Lahteine 0da744b7b0 Further cleanup of comments, partial Doxygen-style
Following up on #3231
9 years ago
jbrazio 5e5d250832 Added gplv3 header to all Marlin files 9 years ago
Scott Lahteine af32a7d5d6 M120/M121 also set endstops non-homing state 9 years ago
Scott Lahteine 5d0570cea0 Make digitalPotWrite depend on HAS_DIGIPOTSS 9 years ago
Scott Lahteine 89838cdb10 Move step macros to stepper_indirection.h 9 years ago
Scott Lahteine 1002eb67c8 Update name of st_get_axis_position_mm in stepper.h 9 years ago
Scott Lahteine 0c7f7ebcfb Styling adjustments (PR#2668 & PR#2670)
Keep "astyled" reformatting
9 years ago
Scott Lahteine c35fb88094 Overridable Options - Part 8 (PR#2560)
Apply `ENABLED` / `DISABLED` macros to stepper-related files.
9 years ago
Scott Lahteine ab6f1fdf8b Move & document ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED (PR#2528)
As suggested in #2521
- Move `ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED` because `SDSUPPORT` is
also required.
- Add a note that endstops must be enabled for the feature to have any
effect
9 years ago
Scott Lahteine 87a872e103 Use st_get_position_mm where possible (PR#2411) 9 years ago
Scott Lahteine c54a2ea042 Adjust spacing in Marlin_main.cpp and stepper.* 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 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 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
MagoKimbra 986e723eeb Add 4th extruder 10 years ago
Cylindric d819c55395 Various typo fixes - only in comments, no code changes. 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