Fysetc Cheetah v1.2 boards require a special sequence to reset reliably.
This sequence works for me in all cases. Simpler sequences without
double reset did not work correctly. This is likely because of a weird
stateful circuitry for toggling the bootloader state.
Cheetah boards use RTS to configure bootloader triggering. By default,
pySerial sets RTS on connect, which unfortunately configures the board
to start the bootloader on reset.
Add a toggle for the RTS state to allow users to workaround. The RTS state
is set before the serial connection is opened, so there are no glitches.
Addresses #2026.
Signed-off-by: Grigori Goronzy <greg@chown.ath.cx>
This config was not yet available - I have updated all the pin defines, starting with the BTT SKR board which is the most similar board + tested it on my printer which is currently working with the TMC5160 drivers using software SPI. I have not tested it with other drivers etc but the config should work for them.
Signed-off-by: Chester Lowrey <hilo90mhz@gmail.com>
Disable support for customizing the main lcd display content via the
menu system. Advise users to use the new display_data config sections
as a replacement.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Introduce a new config based system for specifying the on-screen
contents of an lcd screen. The default screen configuration (found in
klippy/extras/display/display.cfg) is the same as the previous
hard-coded display, so this should not change behavior for existing
users.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Correct TMC2130 diag1_pin logic - the diag1_pin logic should be inverted and pulled up.
Use pullup for endstops - pullups should be used here.
Signed-off-by: Wen-Jeng Hsiao <isuperwilly@gmail.com>
Update printer-seemecnc-rostock-max-v2-2015.cfg to include the [display] and [board_pins] sections needed for Reprap 20x4 LCD display (#2561).
Signed-off-by: Angelo Lagis <angelo_lagis@hotmail.com>
Support probing the corner washers for the bed tilt using G29,
flesh out the rest of the configuration for the display, and add
support for the Aerostruder (commented out by default).
Signed-Off-By: Chris Lee <clee@mg8.org>
Also applies to the Monoprice Maker Pro MK1.
This config is based on the version from Chris Barnes (https://www.facebook.com/Jarannis)
found on https://pastebin.com/raw/wm8PQezy. This config was mostly working and I
only had to change a few things:
- updated key names for min_point and max_point to mesh_min and mesh_max
- enabled PID control
- tweaked bounds to allow movement during mesh leveling
- removed all comments
- decreased homing speed slightly
- sane bed mesh sample defaults
In response to Kevin O'Connor:
- remove pressure_advance setting from extruder section
- remove respond section
- remove pause_resume section
Signed-off-by: Matt Shirley <mdshw5@gmail.com>
A default config file for Monoprice Mini Delta printers.
Works when firmware is flashed via ST-Link V2 and when a
10A power supply is available. Lots of comments about wanting
to try pressure advance on the FB group, so I figured it was
a good time to get this added.
Signed-off-by: Chris Hammond <chammond@georgefox.edu>
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>
Add note about numbers in macro names. Add note about variable name case restriction. Add set variable example.
Signed-off-by: David O Smith <davidosmith@gmail.com>
This reverts commit 1b92af6078.
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>
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>
Add description to default_parameter of g-code macro description of method to call macro with a non-default value.
Signed-off-by: David Smith <davidosmith@gmail.com>
Add support for an optional uc1701 rst_pin. Use the same reset pin
code handling with the SSD1306 code.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Large increases in fan speed can suffer from acceleration lag, so this
change kick starts the fan for a change of 50% or more in the same way
that starting the fan from 0% does.
Signed-off-by: Justin Schuh <code@justinschuh.com>
Support averaging the extruder position over a time range to "smooth
out" the velocity changes that occur during pressure advance.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Now that the tmc drivers perform automatic soft stepper enabling,
there is no need to be able to list multiple pins in the enable_pin
config setting.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Automatically detect if the stepper has a dedicated enable line. If
it does not, then automatically enable virtual enable support.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Update BLTouch.md, FAQ.md, and sample-probe-as-z-endstop.cfg to
recommend using a safe_z_home config section over a homing_override
config section.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
No longer allow the primary extruder to be named "extruder0". This
avoids internal and external confusion between the printer objects and
config section names.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Do not apply max_extrude_cross_section check, and do apply
extrude_only_xxx checks to Z only moves that also extrude. Some
printer start scripts will prime the extruder while moving the Z.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Add to printers.test test case. Don't disable the
max_extrude_cross_section check by default (users should verify they
want that safety feature off).
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Don't specify a default for pressure_advance. Don't specify values
that are already at their default. Add to printers.test test case.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Based on the configuration for the CR20-2018.
Added support for BLtouch, save z-homing and
automatic bed leveling.
Signed-off-by: Matthias Roggo <bskp@posteo.ch>
Move the common temperature amplifier config descriptions to
example-extras.cfg.
Also, minor changes to wording of some example-extra.cfg sections.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
PR #1970 introduced a new parameter, controlling the default behavior of the safe_z_home-module. To avoid unexpected changes, the default of the move_to_previous is now defaulted to False.
Signed-off-by: Nils Friedchen <Nils.Friedchen@googlemail.com>
Below off_below the fan will be turned off. When configured correctly this
can prevent stalling, which may lead to overheating and failed fans. To
simplify calibration and use of this setting, off_below is applied in the
input duty cycle domain, prior to any scaling due to e.g. max_power.
Signed-off-by: Nicholas Seckar <nseckar@gmail.com>
Since the previous config file was laid out only for TMC2208 drivers and was missing most other pins, I made a comprehensive configuration file, with hardware names for all available functionality.
Signed-off-by: Tobias Weiß <t.weiss@bk.ru>
Once a hop is performed, it will only be re-issued if the z-axis has been
moved in the meantime. Usually it is only moved by a z-homing so doing so
will cause safe_z_home to do the hop on the next homing action.
When z-axis is homed, x and y positions are known. When setting this
boolean option, these are set back to their last positions.
Whenever a hop is specified it is re-issued after the Z axis has been
homed. This is especially necessary when a pressure-based probe is used.
Also, the module decides if a hop is necessary, based on either a known
Z position or a flag that is set whenever the motors are disabled.
Signed-off-by: Nils Friedchen <Nils.Friedchen@googlemail.com>
As per 18e6772010
This lowers the voltage and thus brings the stepper motor temperature to
an acceptable level. Beforehand, motors would get very hot.
Signed-off-by: Piotr Usewicz <piotr@layer22.com>
The SKR mini E3 is marketed as being for the Ender 3, so it makes
sense for the example electronics config to be more similar to the
Ender 3 config.
Reported by @TheDogee.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
R Still missing, also might be somewhat dirty since code is converted
into G1 commands.
Signed-off-by: Aleksej Vasiljkovic <achmed21@gmail.com>
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Add a sample-lcd.cfg with the defintions for several common "reprap"
style LCD displays that use the EXP1/EXP2 plugs. Update several
config files to add EXP1/EXP2 board aliases.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
The current z_hop support did not work correctly with common slicers
that change Z height between retract and unretract, and it did not
work correctly with slicers that issue a retract at the end of a print
and then at the beginning of the next print.
The z_hop support is therefore being removed until these issues can be
fixed.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Add support for enabling the stepper via the communication channel.
This improves support for boards with a shared enable line.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
An extra to execute gcode when a hardware button is pressed or released. Uses the jinja2 templating system.
Inspired by pull request #545 from Miguel Moitinho miguel@moitinho.net and pull request #1098 from Paulo Drugos paulodrugos@gmail.com
Signed-off-by: Alec Plumb <alec@etherwalker.com>
Support retrying Z_TILT_ADJUST a configurable number of times
to a configurable tolerance both in the config or as parameters.
- By default keeps original behavior of no retries.
- Adds parameters RETRIES and RETRY_TOLERANCE to QUAD_GANTRY_LEVEL gcode.
- adds config options retries and retry_tolerance to uad_gantry_level]
- issues an error if we are getting worse intead of approaching tolerance
- issues an error if retries were requested but we did not reach the tolerance
in the specified number of retries
the minimum change should be a single z step for those
probing 2 points for 2 stepper motors and 3 for 3 stepper motors.
at one point it was suggested to use the amount of z adjustment instead of the
range of the probed points as a trigger for retry. I've chosen not to do this.
using z adustment in these cases means the minimum unit of change is related to
the angle created by the probed points and the distance to stepper motor and
can be more than a couple steps which is rather unintuitive.
for the case when someone is using more probed points than z steppers the
probed points range will have some fixed minimum value that can't be reduced
which is also unintuitive but that case should idealy be the rarer case, and
the user can learn to set a higher tolerance that matches their probing setup.
Signed-off-by: John "Fess" Fessenden <fess@fess.org>
Support retrying QUAD_GANTRY_LEVEL a configurable number of times
to a configurable tolerance both in the config or as parameters.
- By default keeps original behavior of no retries.
- Adds parameters RETRIES and RETRY_TOLERANCE to QUAD_GANTRY_LEVEL gcode.
- adds config options retries and retry_tolerance to `[quad_gantry_level]`
- issues an error if we are getting worse intead of approaching tolerance
- issues an error if retries were requested but we did not reach the tolerance
in the specified number of retries
Signed-off-by: John "Fess" Fessenden <fess@fess.org>
No need to describe the SET_TMC_CURRENT command in the
example-extras.cfg - it's describe in docs/G-Codes.md and is now
supported on all tmc drivers.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
List all the configurable parameters in the tmc5160 example block and
use similar wording as the other tmc drivers.
Also, don't allow DEDGE to be configured as it would just break the
current code.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This changes the config file so that the configuration of
multi-samples is now done in the [probe] (and [bltouch]) section
instead of the various delta, bed_mesh, z_tilt, etc. config sections.
With this change, PROBE and PROBE_CALIBRATE commands now also utilize
multi-sampling.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Reformat some of the comments. Add section headers. Don't comment
out the config sections (so that it is more clear what needs to be
copied to the main config).
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
There are reports that SPI does not work correctly on the Fysetc F6 if
the PB0 (sdcard cs enable line) isn't pulled high. Update the default
config to enable that line.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This config is based on the existing Ender 3 example config but some of
the directions for the steppers have been reversed. It works for me so
far, but feel free to modify.
Signed-off-by: Billy Jones <billyajones@gmail.com>
Minor updates to the kit-zav3d-2019.cfg to make it look more like
other config files: specify the micro-controller type, use the
klipper3d.org site for documentation links, avoid using SAVE_CONFIG
sections in the example configs, add config to printers.test.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Zav3d - a popular russian corexy plywood printer.
Official web site is https://www.zav3d.ru/
Social network community is https://vk.com/zav3d
Signed-off-by: Nurmukhamed Artykaly <nurmukhamed.artykaly@hdfilm.kz>
safety feature that prevents quad_gantry_level from trying to do a
correction that might break things - if your probe fires early for
whatever reason and tries to do an 8mm correction in one corner instead
we abort if a correction is over a configurable limit by default 4mm
configurable via `max_adjust` parameter in the config
Signed-off-by: John "Fess" Fessenden <fess@fess.org>
The servo pins (P9_14/P9_16) are muxed to the SOCs hardware PWM unit
driven by a 13MHz GP timer. They have to be driven by the linux host
mcu. This commits adds hardware PWM support using the linux sysfs
user space interface.
The servo pins can be specified as "replicape:servo0" and
"replicape:servo1". Removes the "servo0_enable", "servo1_enable"
configuration parameters.
Fixes#1105.
Signed-off-by: Janne Grunau <janne-3d@jannau.net>
Adds parameter for bed meshes to be adjusted relative to a probed point
during calibration. This allows the probe z offset to be ignored for
probes that are not stable over time (for example, the thermal drift of
inductive probes). An endstop other than the probe is then necessary to
determine the bed-nozzle offset.
Signed-off-by: Matt Baker <baker.matt.j@gmail.com>
Use the field names from the trinamic specification. This makes the
field similar to all the other driver_XXX config options.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
sense_resistor is now a mandatory parameter for tmc2660 blocks. Duet2 users should use a value of 0.051
Signed-off-by: Florian Heilmann <Florian.Heilmann@gmx.net>
Using the Duet2 config as a base for your own config will no longer turn
on all heaters and fans at full power during the (almost inevitable) MCU
shutdown that will occur during initial Klipper setup.
Signed-off-by: Benoit Miller <github@benoitmiller.ca>
Support reading a "gcode_id" parameter from heater/sensor config
sections.
Signed-off-by: Douglas Hammond <wizhippo@gmail.com>
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
The 'bed_shape' option has been removed. The user will enter a 'bed_radius' if they have a round be, otherwise they should enter 'min_point' and 'max_point'. When the bed is round the user should supply a 'round_probe_count' option, otherwise just 'probe_count'.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Support added for filament diameter sensor. Sample configuration parameters added to example-extras.cfg.
Signed-off-by: Mustafa YILDIZ <mydiz@hotmail.com>
Adds the ability to register a custom/generic heater through a new extra called heater_generic.
This takes a gcode_id that is reported by M105. Adds a new command to set the temperature for any heater using the syntax:
SET_HEATER_TEMPERATURE HEATER=<heater_name> TARGET=<target_temp>
Signed-off-by: John Jardine <john@gprime.net>
Example config file for a stock 250mm build VORON2 printer that
matches the manual diagrams exactly for the controller layout and pins
used.
Signed-off-by: Ben Warren <boffdroid@gmail.com>
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Marlin examples use the "ATC Semitec 104GT-2" thermistor for the CR10,
CR10S, and CR10mini. Reported by @dovcharov.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Add updates to example-extras.cfg and G-Codes.md documenting pause_resume. Also add M600 (filament change) to sample-macros.cfg.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Add support for performing linear interpolation between a set of
measured temperature/resistance pairs.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Rework the undocumented test_sensor_pin config option into a
pin_up_touch_mode_reports_triggered option and document it.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Query the bltouch state during the pin_up command to try and verify
that the probe does actually retract. This may be useful to detect if
the bltouch enters into an "error" state.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Whenever a stepper driver or a heater becomes active, it is desirable to turn on a fan cooling the associated parts on the controller board. This module implements such a fan that turns on whenever a stepper or specified heater turns on, decelerates to a configurable speed when all of the watched parts turn off, and returns to an off-speed, when a user-defined timeout is met.
Signed-off-by: Nils Friedchen <Nils.Friedchen@googlemail.com>
This is my current config file for Fysect F6 + TMC2208 running on my
Ender 3 with stock creality display.
Signed-off-by: Simone Bonacini <bonacini.simone@gmail.com>
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
- changes that make easier to use menu as module UI
- new helper method for delayed callbacks
- method for getting the menu instance from display
- new action for sending menu:action events
- allow_without_selection option for cards
Signed-off-by: Janar Sööt <janar.soot@gmail.com>
- long press with timer (button release is not needed anymore)
- initial support for edit mode long press gcode
Signed-off-by: Janar Sööt <janar.soot@gmail.com>
The sam3 i2c code and the linux code use a 7-bit i2c address, while
the avr, lpc176x, and samd21 i2c code uses an 8-bit address with the
least significant bit always zero. A similar issue occurred in the
host code (sx1509.py and replicape.py use 7-bit addresses while
uc1701.py and mcp4451.py use 8-bit addresses).
Consistently use 7-bit addresses in all the code. This breaks
compatibility between host and mcu software, so make a change to the
config_i2c command to force users to synchronize software updates.
This also breaks common Smoothieboard configs, so update the mcp4451
code to validate the i2c_address.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
I have made one change to `gcode.py` to support quoted parameter
values.
I have added support for the basic `M118` command (see
https://reprap.org/wiki/G-code#M118:_Echo_message_on_host). I have
also added a `RESPOND` command that takes extended parameters.
`ECHO` might be a better name than `RESPOND` but is already defined
in `gcode.py`.
Signed-off-by: Alec B. Plumb <alec@etherwalker.com>
There is concern that the bltouch.py module may not perform adequately
on some bltouch "clones". Document that.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
It appears some bltouch "clones" do not report the probe as triggered
when put in "touch mode" while the pin is raised. Add a config option
to allow users to disable the test.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Added options necessary for basic extruder calibration expected of a new install. Fixed bed size to correct 235x235. Removed 0.5 position_endstop setting as this crashes hot end into the bed on stock Ender 3's.
Signed-off-by: Troy nadeau <troyboy162@hotmail.com>
Update documentation about the fade options. Also inform the user that it is recommended to home toward the center of the print area when using a probe for z homing.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
The example configuration information is more useful for general probe
as z_endstop than as a bltouch example.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Cheap mechanical servos have small flickering. When this servo stay on one position, this flickering slowly destroy internal potentiometer and make servo unusable. Many mechanisms need servo only to change position. Therefore I create this minor path to enable/disable servo. It stop pulses for this servo, that's all.
Corresponding G-code is:
SET_SERVO SERVO=config_name [WIDTH=] [ENABLE=<0|1>]
SET_SERVO SERVO=config_name [ANGLE=] [ENABLE=<0|1>]
For example:
SET_SERVO SERVO=touch ANGLE=80 ENABLE=1 ; enable servo and set position
G4 P200 ; wait 200ms
SET_SERVO SERVO=touch ENABLE=0 ; disable servo
This patch add one option to servo configuration:
enable: <False/True> # default True
It not have impact to user code existing already because it is optional parameter and default value is same as original behavior.
Signed-off-by: Jiri Dobry <jdobry@centrum.cz>
This adds a generic duet config with quad-z and quad extruders which also tests TMC2660 and SX1509 extras
Signed-off-by: Florian Heilmann <Florian.Heilmann@gmx.net>
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>
The Trinamic stepper motor drivers are capable of reporting the
stepper phase - add support for using that capability to the
enddstop_phases module.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Configuration for ADIMLab printer. tested and working including LCD support.
This printer was previously known as the HCmaker7
Signed-off-by: Jason Rahaim <jason@jasonr.com>
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>
The comment for the algorithm setting had a spelling error, it said:
[...]May be either "langrange"[...]
Removed the n.
Signed-off-by: Victor Lazaro <lazarofilm@gmail.com>
Don't require (or permit) the user to specify a stepper_z
position_endstop when using the probe:z_virtual_offset mechanism. In
that case the position_endstop should always equal the probe's
z_offset - so no need to have the user specify it.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>