aboutsummaryrefslogtreecommitdiffstats
path: root/klippy
Commit message (Collapse)AuthorAgeFilesLines
* heater: add support for BME280Arksine2020-01-131-0/+1
| | | | Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* bme280: initial implementation of BME280 environmental sensorArksine2020-01-131-0/+195
| | | | Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* bed_mesh: detect incompatible mesh profilesArksine2020-01-091-5/+28
| | | | Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* bed_mesh: refactor print_generated_points()Arksine2020-01-091-9/+6
| | | | Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* bed_mesh: fix LOAD_PROFILEArksine2020-01-091-4/+10
| | | | Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* bed_mesh: Allow the default profile to be removedArksine2020-01-091-1/+1
| | | | Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* bed_mesh: improve interpolation checksArksine2020-01-091-20/+42
| | | | | | Move interpolation checks to _init_mesh_params() so they can be done whle the config is being parsed. Do not allow a probe_count higher than 6 for lagrange interpolation, as this typically leads to oscillation. Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* bed_mesh: Move BED_MESH_MAP to Bedmesh classArksine2020-01-091-27/+23
| | | | | | Don't force probing when BED_MESH_MAP is executed, output the existing mesh. If the user wants to probe each time before a map they can do so with a gcode_macro. Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* bed_mesh: Add x,y offsets to min/max points in probe_finalizeArksine2020-01-091-18/+13
| | | | | | This eliminates the need for the "mesh_params" dict to have references to the x and y offsets. Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* bed_mesh: refactoringArksine2020-01-091-99/+99
| | | | | | | | Renamed some variables in set_mesh() previous called "mesh_min" and "mesh_max" to alleviate confusion with the config options. Renamed several attributes for clarity. The "calibrate" attribute is now bmc, "probe_params" is now "mesh_params", "probed_z_table" is now "probed_matrix", "mesh_z_table" is now "mesh_matrix". Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* bed_mesh: improve logging of generated pointsArksine2020-01-091-20/+33
| | | | | | | | Points are now logged after the printer is ready. The formatting is improved, printing out the point index, and its corresponding automatic and manual points. BED_MESH_OUTPUT now includes a PGP parameter, if PGP=1 the generated points are printed to the terminal. Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* bed_mesh: add xy offsets to generated pointsArksine2020-01-091-10/+14
| | | | | | Rename min_point, max_point, and bed_radius to mesh_min, mesh_max, and mesh_radius respectively. Add "mesh_origin" option, that allows round beds to specificy the center of the mesh. Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* ProbePointsHelper: Optionally add xy offsets to probe pointsArksine2020-01-091-0/+6
| | | | Signed-off-by: Eric Callahan <arksine.code@gmail.com>
* tuning_tower: Support tuning of traditional g-code commandsKevin O'Connor2020-01-071-5/+8
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* gcode: Fix detection of some "extended" g-code commandsKevin O'Connor2020-01-071-4/+11
| | | | | | | Fix typo that resulted in _get_extended_params() being called for all commands. Allow "extended" g-code commands to contain numbers. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* rotary_delta: Initial support for rotary delta kinematicsKevin O'Connor2020-01-063-2/+305
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta_calibrate: Add support for manually entering a nozzle Z heightKevin O'Connor2020-01-061-3/+39
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* homing: Don't assume homing occurs with a constant step rateKevin O'Connor2020-01-061-3/+12
| | | | | | | | Some kinematics do not result in a constant step rate during homing operations. Calculate the endstop checking rate using the total distance traveled on the axis divided by the axis step distance. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* itersolve: Export itersolve_calc_position_from_coord()Kevin O'Connor2020-01-064-4/+13
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* stepper: Track if using units of radians instead of millimetersKevin O'Connor2020-01-063-9/+23
| | | | | | | | The STEPPER_BUZZ command needs to know if the axis is using radians instead of millimeters so that it can move a more appropriate distance. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Simplify DeltaCalibration state trackingKevin O'Connor2020-01-061-42/+46
| | | | | | Limit the use of coordinate descent "params". Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Move low-level delta calibration to delta.pyKevin O'Connor2020-01-062-72/+76
| | | | | | | Move the linear delta specific calibration code from delta_calibrate.py to delta.py. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta_calibrate: Move stable position conversion to its own classKevin O'Connor2020-01-062-86/+85
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder_stepper: Initial support for synchronized extruder steppersSimo Apell2020-01-062-0/+27
| | | | | Signed-off-by: Simo Apell <simo.apell@live.fi> Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* fan: Do not flush look-ahead queue on fan speed changeKevin O'Connor2020-01-031-4/+6
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* toolhead: Add register_lookahead_callback() methodKevin O'Connor2020-01-031-0/+13
| | | | | | | Add a mechanism for obtaining the print_time via a callback instead of by flushing the look-ahead queue. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* heater: Do not flush look-ahead queue on a heater temperature updateKevin O'Connor2020-01-034-15/+10
| | | | | | | | | The print_time parameter of heater.set_temp() is not currently used and it isn't necessary to flush the look-ahead queue just get the print_time. Remove the parameter from heater.set_temp() to avoid flushing the look-ahead queue. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* kin_extruder: Convert pressure advance to use "weighted average"Kevin O'Connor2019-12-201-19/+54
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* trapq: Limit the duration of "null" sentinal moves on the trapqKevin O'Connor2019-12-201-1/+7
| | | | | | | | | If a null move is added as the first move on the trapezoid motion queue then it could have a very large move->move_t value. This could cause numerical stability issues with some advanced kinematic formulas. Place a limit on the move_t value to avoid this. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* gcode_arcs: use correct current position from gcodeDaniel Kucera2019-12-181-1/+1
| | | | Signed-off-by: Daniel Kucera <github@danman.eu>
* display: Revert "display: Add ST7567 display support (#1540)"Kevin O'Connor2019-12-182-36/+1
| | | | | | | | | This reverts commit 1b92af60784ea811a7ca04dfbce75224874cf84a. The standard "uc1701" lcd_type can now be used in place of the custom "st7567" lcd_type. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* mathutil: Disable queuelogger in background_coordinate_descent()Kevin O'Connor2019-12-172-4/+17
| | | | | | | | | If the queuelogger was holding the lock when the process is forked then any attempt to log from the background process would result in a deadlock. Attempt a workaround by disabling the queuelogger at the start of the background process. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder: No need to track extrude_pos locallyKevin O'Connor2019-12-171-4/+2
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder: Flush step generation on ACTIVATE_EXTRUDERKevin O'Connor2019-12-171-0/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder: Move M104/M140 commands from gcode.py to extruder.pyKevin O'Connor2019-12-162-33/+31
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* heater_bed: Move M140/M190 commands from gcode.py to heater_bed.pyKevin O'Connor2019-12-162-14/+32
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* gcode: Rename bg_temp() to wait_for_temperature()Kevin O'Connor2019-12-162-3/+4
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* heater: Use printer.command_error() instead of internal heater.error()Kevin O'Connor2019-12-163-12/+6
| | | | | | | Use the more standard command_error to report invalid temperature requests. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* neopixel: Add support for delaying updates in SET_LED commandKevin O'Connor2019-12-152-0/+6
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* temperature_sensor: Add get_status() functionSimon Kühling2019-12-131-0/+2
| | | | | | | Provide printer.<sensor-config-name>.temperature variable to gcode macro environment Signed-off-by: Simon Kühling <mail@simonkuehling.de>
* heater: Add PrinterHeater get_status() functionSimon Kühling2019-12-131-0/+7
| | | | | | | | Provide a list of available heater and sensor names to gcode macro templates through the printer.heater.available_heaters and printer.heater.available_sensors variables Signed-off-by: Simon Kühling <mail@simonkuehling.de>
* itersolve: Improve numerical stability of gen_steps_pre_active checkKevin O'Connor2019-12-101-1/+2
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* itersolve: Rename scan_pre/_post to gen_steps_pre/post_activeKevin O'Connor2019-12-103-9/+10
| | | | | | Rename the variables to make it a little more clear what they do. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* gcode: Remove builtin T0/T1/T2/... command supportKevin O'Connor2019-12-102-39/+1
| | | | | | | | The builtin Tn command is not sufficiently flexible to control some multi-extruder printers. Remove the command and encourage users to define individual gcode_macros for each Tn instance. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder: Add an ACTIVATE_EXTRUDER commandKevin O'Connor2019-12-102-0/+19
| | | | | | | Add support for an extended g-code command to change the currently active extruder. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* gcode: Remove support for the M206 commandKevin O'Connor2019-12-101-9/+1
| | | | | | | | The M206 command isn't particularly standardized and isn't issued by default from 3rd party software in their standard configurations. Encourage users to use the more powerful SET_GCODE_OFFSET command. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* kin_extruder: Apply pressure advance in kin_extruder.cKevin O'Connor2019-12-083-75/+37
| | | | | | | | Implement the pressure advance calculations while performing the definitive integral calculations. This simplifies both the extruder.py and kin_extruder.c code. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* kin_extruder: Move integration code from trapq.c to kin_extruder.cKevin O'Connor2019-12-083-67/+65
| | | | | | | Move the code that calculates the definitive integral to the kin_extruder.c file. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* mathutil: Propagate errors from background_coordinate_descent()Kevin O'Connor2019-12-051-4/+11
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* tuning_tower: Fix typo causing tuning tower to break when homingKevin O'Connor2019-12-041-1/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>