aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/kinematics
Commit message (Collapse)AuthorAgeFilesLines
...
* toolhead: Remove kinematic move() callKevin O'Connor2019-11-066-12/+0
| | | | | | | Now that all kinematics use the trapq system, there is no need to call into the kinematics on each g-code move. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder: Convert step generation to use trapq systemKevin O'Connor2019-11-061-7/+10
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* winch: Convert step generation to use trapq systemKevin O'Connor2019-11-061-11/+4
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* polar: Convert step generation to use trapq systemKevin O'Connor2019-11-061-21/+4
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Convert step generation to use trapq systemKevin O'Connor2019-11-061-11/+7
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* corexy: Convert step generation to use trapq systemKevin O'Connor2019-11-061-23/+5
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* cartesian: Convert step generation to use trapq systemKevin O'Connor2019-11-061-16/+10
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* polar: Implement bed angle wrapping adjustments in chelper codeKevin O'Connor2019-11-061-8/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* kinematics: Add get_status() method to kinematicsFlorian Heilmann2019-08-096-0/+19
| | | | Signed-off-by: Florian Heilmann <Florian.Heilmann@gmx.net>
* homing: Remove no longer needed homing time delay codeKevin O'Connor2019-07-104-14/+4
| | | | | | | | Now that homing is implemented via "drip moves", it is no longer necessary to round the homing speed and it is no longer necessary to add a delay for cpu processing time. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* polar: Add initial support for multiple bed rotationsKevin O'Connor2019-06-281-2/+9
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder: Use template evaluation on gcodeKevin O'Connor2019-06-071-4/+7
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder: add get_status methodJanar Sööt2019-06-041-0/+6
| | | | Signed-off-by: Janar Sööt <janar.soot@gmail.com>
* corexy: Fix minimum halt velocityKevin O'Connor2019-03-301-2/+3
| | | | | | | | | Due to the corexy kinematics, the individual steppers may have a velocity of sqrt(2) times faster than the cartesian velocity _and_ can have an acceleration of sqrt(2) times faster. Make sure to calculate in the higher acceleration. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* gcode: Change respond_info() to log by defaultKevin O'Connor2019-03-041-1/+1
| | | | | | | It makes sense to log most respond_info() content, so do that by default. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder: Wrap code to 80 columnsKevin O'Connor2019-02-271-3/+4
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* heater: take a gcode_id when setting up a heater (#1028)john--2019-01-021-4/+5
| | | | | Allow an arbitrary gcode_id to be supplied during heater setup. This allows future extras to register additional IDs beyond B, and T#. Signed-off-by: John Jardine <john@gprime.net>
* winch: Add experimental support for cable winch kinematicsKevin O'Connor2018-12-241-0/+62
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* polar: Experimental support for polar kinematicsKevin O'Connor2018-12-241-0/+131
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* kinematics: Add a "none" debugging kinematicsKevin O'Connor2018-12-241-0/+26
| | | | | | Add a dummy kinematics class for development testing. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Make sure to clear limit_xy2 after a homing moveKevin O'Connor2018-10-271-0/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Make sure to also exempt the homing retract move from boundary checksKevin O'Connor2018-10-271-8/+11
| | | | | | | | | Commit 459e5219 added a special case to the boundary checks to permit homing moves. In some cases, the second home retract could also be outside the normal boundary checks - extend the special case to also permit that move. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder: Don't use max_extrude_cross_section in max_extrude_only defaultsKevin O'Connor2018-10-251-4/+5
| | | | | | | | | | Some users increase max_extrude_cross_section to avoid issues with some slicers. However, increasing that value also increases the defaults for the max_extrude_only parameters which is not obvious. Base the max_extrude_only defaults only on the configured nozzle diameter. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* homing: Move homing offset adjustment logic to generic homing codeKevin O'Connor2018-10-103-11/+0
| | | | | | | Move the "stepper phase" adjustment logic from the kinematic classes to the generic homing.py code. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Add a special case to the limit checks for the homing positionKevin O'Connor2018-10-101-4/+5
| | | | | | | | | | When a delta printer has different arm lengths or different endstop positions then the homing position falls outside of the normal printable area. Add a special check to the range checking code to permit this move instead of homing to a position near the actual homing position. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Reorganize init()Kevin O'Connor2018-10-101-18/+18
| | | | | | Just code movement. Move boundary check init to after tower init. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* homing: Implement second home from homing.pyKevin O'Connor2018-10-103-70/+28
| | | | | | | Move the logic for performing the second home from the kinematics classes to the generic homing code. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Wrap lines to 80 columnsKevin O'Connor2018-10-101-5/+6
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* cartesian: Use homing_speed for homing retract speedKevin O'Connor2018-10-093-3/+3
| | | | | | | | Commit b0d859f2 introduced a second_homing_speed parameter, and it also changed the retract speed. Revert the retract speed change (use homing_speed when the head retracts). Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* cartesian: Make sure to constrain second_homing_speed to max_z_velocityKevin O'Connor2018-10-082-0/+3
| | | | | | | Commit b0d859f2 introduced a second_homing_speed parameter; that parameter needs to also be constrained to the max_z_velocity. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* stepper: Adding support for a second_homing_speed parameter (#677)Chris Whiteford2018-10-043-6/+9
| | | Signed-off-by: Chris Whiteford <chris@chrisandtennille.com>
* delta: Move "stable position" logic to delta_calibrate.pyKevin O'Connor2018-09-251-33/+9
| | | | | | | Move the "stable position" logic from the delta.py kinematics code to the delta_calibrate.py calibration code. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Fix maximum halt velocity calculationKevin O'Connor2018-09-121-2/+3
| | | | | | | | | | | If an arm is nearly parallel to the bed then that tower's carriage may have a velocity up to 3 times greater than the toolhead's maximum velocity (relative to the print). Take that into account when calculating the stepper's maximum halt velocity. This fixes some rare "No next step" shutdowns on delta printers. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* kinematics: Convert get_rails() method to get_steppers()Kevin O'Connor2018-07-163-8/+8
| | | | | | | All callers of get_rails() actually just want the steppers, so return them directly. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Store stable positions as integersKevin O'Connor2018-07-151-11/+13
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Minor change to get_position_from_stable()Kevin O'Connor2018-07-141-12/+16
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* mcu: Enhance itersolve stepper kinematics allocationKevin O'Connor2018-07-134-22/+15
| | | | | | | Allocate the stepper_kinematics directly in mcu.py - that way the kinematic classes don't have to interact with the chelper code. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* toolhead: Fill cmove in toolhead instead of in each kinematic classKevin O'Connor2018-07-133-27/+3
| | | | | | This simplifies the kinematic classes. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* toolhead: Move kinematic modules to new kinematics/ directoryKevin O'Connor2018-07-125-0/+780
Move extruder.py, cartesian.py, corexy.py, and delta.py to a new kinematics/ sub-directory. This is intended to make adding new kinematics a little easier. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>