aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* fan: Clarify hardware_pwm and allow cycle_time to be set on software pwmKevin O'Connor2018-01-299-51/+46
| | | | | | | | Specify hardware pwm cycle times using the same method as software pwm (in seconds, not clock ticks). Allow the fan code to be configured with an explicit cycle time even when using software pwm. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* avr: Round hardware pwm clock ticks to nearest divisorKevin O'Connor2018-01-291-12/+12
| | | | | | | Instead of rounding down to the nearest supported pwm divisor, round to the nearest divisor. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* mcu: Default the restart method to 'command' on non-serial portsKevin O'Connor2018-01-292-4/+11
| | | | | | | | If the mcu supports command restarts and it does not appear to use a real serial port, then default the restart method to 'command'. This is a better default on boards with native USB support. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* msgproto: Support default values in get_constant() callsKevin O'Connor2018-01-292-7/+11
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* heater: Add stats reportingKevin O'Connor2018-01-282-1/+10
| | | | | | | Report the current temperature, current pwm setting, and target temperature as statistics in the log. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* docs: Remove bed level probe from todoKevin O'Connor2018-01-281-2/+0
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* config: Add SeeMeCNC Rostock Max V2 Delta Printer ConfigKevin O'Connor2018-01-281-0/+94
| | | | | | As provided by @FEsmondeWhite Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* homing_override: Allow moves prior to homing an axisKevin O'Connor2018-01-287-14/+42
| | | | | | | Add support for disabling homing checks via the homing_override mechanism. This may be useful to move an axis prior to homing it. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* probe: Create a probe:z_virtual_endstop pinKevin O'Connor2018-01-282-2/+20
| | | | | | | Create a virtual pin that may be used as the z endstop pin on cartesian printers that use the probe in place of a z endstop. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* probe: Support activate/deactivate scripts on each probeKevin O'Connor2018-01-284-0/+43
| | | | | | | | Allow a set of g-code scripts to be run on each probe invocation. This may be useful for probes that need to be setup before they are useful (eg, with servo actuated probes). Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* homing_override: Add basic support for running custom g-code on G28Kevin O'Connor2018-01-282-0/+41
| | | | | | | | Allow users to override the behavior of G28 using a new "homing_override" config section. This may be used on printers that require specific steps during the homing process. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* bed_tilt: Add support for automatic bed tilt move transformationKevin O'Connor2018-01-283-3/+144
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta_calibrate: Add initial support for a DELTA_CALIBRATE commandKevin O'Connor2018-01-284-30/+249
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* probe: Initial support for Z-Probe hardwareKevin O'Connor2018-01-287-6/+91
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* delta: Allow the user to specify a minimum z positionKevin O'Connor2018-01-282-1/+5
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* replicape: Move the replicape code from chipmisc.py to extras directoryKevin O'Connor2018-01-283-274/+279
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* ad5206: Move the ad5206 code from chipmisc.py to extras directoryKevin O'Connor2018-01-282-27/+30
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* servo: Move the servo code from chipmisc.py to extras directoryKevin O'Connor2018-01-282-56/+59
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* multi_pin: Move the multi_pin code from chipmisc.py to extras directoryKevin O'Connor2018-01-282-50/+57
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* fan: Move fan code to extras directoryKevin O'Connor2018-01-284-66/+78
| | | | | | | The print cooling fan and printer heater_fan are independent modules that can reside in the extras directory. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* klippy: Add support for dynamic loading of python modulesKevin O'Connor2018-01-282-3/+22
| | | | | | | | Check if a config section matches a python filename in the klippy/extras/ directory. If it does, load that python code to handle the config section. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* klippy: Support generic printer_state() and stats() callbacksKevin O'Connor2018-01-284-57/+71
| | | | | | | | | | | Instead of hardcoding which objects are called on state transitions, allow any "printer object" to be invoked if it has a printer_state() method. Convert connect, ready, shutdown, and disconnect callbacks to this mechanism. Similarly, allow all printer objects to provide a stats() callback. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* klippy: Add access methods and avoid peeking into the printer classesKevin O'Connor2018-01-2810-85/+103
| | | | | | | | | Add get_reactor(), lookup_object(), lookup_module_objects(), and set_rollover_info() to the main Printer class so that callers do not need to peek into the class' members. Similarly, add get_printer() and get_name() methods to the ConfigWrapper class. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* gcode: Add a run_script() helper method to run g-code scriptsKevin O'Connor2018-01-281-4/+4
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* gcode: Extend register_command() so that it can also unregister a commandKevin O'Connor2018-01-281-0/+6
| | | | | | | If register_command() is passed None as the function to call, then treat it as an unregister command request. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Fix for print_stall detectionKevin O'Connor2018-01-281-5/+5
| | | | | | | The print_stall logic could cause large portions of the graph to show up as 100% host utilized. Rework the logic to avoid that. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* logextract: Fix error in config file name printKevin O'Connor2018-01-281-1/+1
| | | | | | Fix typo causing an error during the printing of the config file name. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* config: Update anycubic-i3-mega-2017.cfg with stepstick fanKevin O'Connor2018-01-221-0/+3
| | | | | | Based on conversation with Marcin Jedliński. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder: Add support for extruders sharing the same heaterKevin O'Connor2018-01-212-1/+12
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* config: Update wanhao-duplicator-i3-plus-2017.cfg heater settingsKevin O'Connor2018-01-211-5/+10
| | | | | | Update config based on discussion with Max Holden and Josh Sutinen. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* config: Update anycubic-i3-mega-2017.cfg heater settingsKevin O'Connor2018-01-211-7/+10
| | | | | | | Updates to heater settings. Based on discussion with @bartolomeus and Marcin Jedliński. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* logextract: Better handle the case of a missing config sectionKevin O'Connor2018-01-211-4/+6
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* docs: Try to make the klippy.log bug reporting more clearKevin O'Connor2018-01-212-15/+15
| | | | | | | Emphasize that the log file needs to be attached to the issue. Encourage M112 to be issued on every bug report. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* config: Add example generic-mini-rambo.cfg config fileKevin O'Connor2018-01-171-0/+103
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* config: Add tronxy x5s configDouglas Hammond2018-01-161-0/+79
| | | | | Signed-off-by: Douglas Hammond <wizhippo@gmail.com> Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* gcode: Use reset_last_position() from cmd_G28()Kevin O'Connor2018-01-161-2/+1
| | | | | | | Use the existing reset_last_position() code in cmd_G28() instead of manually implementing the logic. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* extruder: Remove unused variable self.configKevin O'Connor2018-01-161-3/+2
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* Add a CR-10S configuration file.Cymen Vig2018-01-161-0/+75
| | | | | Signed-off-by: Cymen Vig <cymenvig@gmail.com> Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Use alpha transparency when plotting the statsKevin O'Connor2018-01-141-9/+7
| | | | | | | | | | | | | Use an alpha transparency on each of the stats, so that it is possible to see how the values overlap. Also, always enable the "awake time" stat - just use a lower alpha transparency for it. Also, explicitly set the graph size as some version of matplotlib have a different default. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* graphstats: Fix filtering of normal buffer_time runoff statsKevin O'Connor2018-01-141-19/+25
| | | | | | | Update the mechanism to filter out cases where buffer_time is below MAXBUFFER so that it works with the statistics currently generated. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* docs: Add a FAQ item on steps to upgrade the softwareKevin O'Connor2018-01-121-0/+36
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* toolhead: Improve tracking of print_stallKevin O'Connor2018-01-121-7/+9
| | | | | | | | | | | | | | The previous code increases print_stall if a move is proactively flushed due to buffer_time_low and a follow up move is ready to send before the existing moves are fully retired. However, this would not track the case where a move is proactively flushed and it takes an extended amount of time to get sufficient moves to refill the queue. Change the code so that print_stall increases anytime a new move is queued after a proactive flush and there are existing moves not yet fully retired. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* logextract: Fix parsing of "is_shutdown" messagesKevin O'Connor2018-01-121-1/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* config: Update avrsim.cfg to use unique pinsKevin O'Connor2018-01-121-1/+1
| | | | | | | | Commit 3833669c added checking that each pin is used once in the config. This exposed an error in the avrsim.cfg testing config - analog1 conflicts with ar25. Use analog7 to avoid this. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* docs: Update Debugging.md with information on logextractKevin O'Connor2018-01-111-5/+28
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* heater: Report PID tuning results via the g-code terminalKevin O'Connor2018-01-101-5/+20
| | | | | | | | Determine the median period from the pin tuning tests and use that to recommend a set of PID parameters. Report the results over the g-code terminal. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* chipmisc: Enable replicape steppers dynamicallyKevin O'Connor2018-01-101-4/+25
| | | | | | | | | | Enable all the steppers via the shift registers when the first stepper is enabled, and disable all the steppers once all steppers are disabled. This avoids having to enable all the steppers all of the time. Note that, this support is independent from the current control for each stepper, which is still done individually. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* chipmisc: Fix replicape enable line setupKevin O'Connor2018-01-102-1/+14
| | | | | | | The enable lines are not one per stepper - instead there are 5 distinct enable settings. Handle them properly. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* chipmisc: Support start values on pca9685 pinsKevin O'Connor2018-01-101-18/+25
| | | | | | | Default the pca9685 enable line on if any of the pins attached to it have a non-zero start value. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* pins: Check if the same pin is referenced via different aliasesKevin O'Connor2018-01-103-28/+37
| | | | | | | | Change the update_command() call to use a new PinResolver class. In that new class, verify that the same pin isn't referenced in two different parts of the config using different aliases for the pin. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>