Commit Graph

77 Commits

Author SHA1 Message Date
Kevin O'Connor 4acfd8d7c8 stepper: Make step pulse duration customizable at run-time
Remove the STEP_DELAY Kconfig option and replace it with a per-stepper
step_pulse_duration printer.cfg config option.

The AVR code will continue to have optimized code to step and "unstep"
in the same function (which is automatically activated when the step
delay is 40 ticks or less).  This change removes the Kconfig option
for single function step/unstep on 32bit processors.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-11-04 12:06:27 -04:00
Kevin O'Connor 5d9d91d3a6 docs: Should be "LM75" instead of "lm75" in Config_Reference.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-11-01 11:34:29 -04:00
Kevin O'Connor 86fee2d517 tmc: Track requested hold_current so SET_TMC_CURRENT doesn't reduce it
The code automatically reduces the hold_current so that it is no
greater than the run_current.  However, this could lead to confusing
behavior if one reduced and then increased the run_current via
SET_TMC_CURRENT commands.  To avoid that, this change adds support for
tracking the requested hold_current - thus changes to run_current
don't subtly alter the hold_current.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-10-27 12:13:38 -04:00
Rufo Sanchez b336a21fe7 button: Support half-stepping encoders
Adds support for half-stepping encoders (encoders that only emit two
steps per detent, instead of four). Incorporates the feedback from
@susisstrolch's PR: https://github.com/KevinOConnor/klipper/pull/4202
, which was itself built upon a previous PR from @nickbrennan01:
https://github.com/KevinOConnor/klipper/pull/730

Uses the table from the Rotary Arduino library linked in buttons.py:
6b784cca67/Rotary.cpp (L21-L40)

Signed-off-by: Rufo Sanchez <rufo@rufosanchez.com>
2021-10-11 11:29:53 -04:00
Kevin O'Connor c84956befe heaters: Change default smooth_time from 2 seconds to 1 second
A larger smooth_time results in a slower reaction time for the PID.
This increased delay can cause temperature oscillations with high
power heaters.  Many boards produce good results without any
smoothing.  So, it seems a smooth_time of 1 second is a better
default.

Reported by @ReXT3D.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-09-03 18:11:05 -04:00
Kevin O'Connor 950477849d mcu: Support multi-mcu homing
Support endstops and probes attached to a different micro-controller
than their associated steppers.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-08-28 16:08:57 -04:00
Kevin O'Connor 4edab5b3da docs: Add comment on additional stepper fields available in extruder section
Reported by @alexsomesan.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-08-17 14:21:45 -04:00
Damien cff61605fb docs : make modifications to all md files to make them compatible with mkdocs
all markdown files must have a single H1 heading at the top.

Signed-off-by: Damien Martin <damlobster@gmail.com>

Update CNAME
2021-07-27 13:15:25 -04:00
Sophie Hirn de57ce3a99
controller_fan: Add "stepper" config option (#4447)
Allows contoller_fan sections to monitor only certain steppers instead of
all of them, similar to how heaters are currently handled.

Signed-off-by: Sophie Hirn <sophie.hirn@wyvernscale.com>
2021-07-20 10:19:59 -04:00
Kevin O'Connor d1bdde56cc samd_sercom: Specify the sercom explicitly in a config option
Do not infer the sercom from the config section name, as that
prevents one from using SPI buses on multiple samd mcus.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-07-04 09:48:45 -04:00
Kevin O'Connor 7fd7853785 duplicate_pin_override: Debugging tool to permit multiple use pins
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-06-27 18:50:51 -04:00
github@matthewlloyd.net 478f26cab6 config: Specify gear_ratio for Prusa Mini+ extruder
Also clarifies the documentation for rotation_distance in the
stepper docs.

Signed-off-by: Matthew Lloyd <github@matthewlloyd.net>
2021-06-18 10:54:51 -04:00
Kevin O'Connor 6db40df6af docs: Deprecate pid_integral_max config option
The default pid_integral_max setting should be sufficient; it's not
necessary to complicate the documentation and config to support
customization.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-06-12 13:29:11 -04:00
Kevin O'Connor 977c334e2e docs: Avoid link descriptions that span multiple lines
The Jekyll markdown renderer gets confused by links that span multiple
lines.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-05-28 20:58:32 -04:00
Kevin O'Connor 624d94f6ac docs: Fix link in Config_Reference.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-05-28 20:42:06 -04:00
Kevin O'Connor 3a25db1247 docs: Move description of menu templates to Command_Templates.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-05-28 20:30:28 -04:00
Alex Zellner 341fc64a67
gcode_macro: add description property (#4317)
Signed-off-by: Alex Zellner <alexander.zellner@googlemail.com>
2021-05-26 14:21:21 -04:00
Florian Heilmann bd42d497ae safe_z_home: Update documentation
Signed-off-by: Florian Heilmann <Florian.Heilmann@gmx.net>
2021-05-26 12:57:31 -04:00
Kevin O'Connor 391ebd32c1 docs: Minor updates to sdcard_loop documentation
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-05-26 12:05:49 -04:00
Jason S. McMullan 913649de2e loop_sdcard: Add loopable SD card file sections
To support continuous belt printing, add nestable repeat
loop support via an `[sdcard_loop]` module.

Supported G-Code:
  - SDCARD_LOOP_BEGIN COUNT=n  ; Loop for N times, or infinitely if N is 0
  - SDCARD_LOOP_END            ; End of loop
  - SDCARD_LOOP_DESIST         ; Complete all loops without iterating

Marlin M808 compatibility example in `config/sample-macros.cfg`:
  - M808 Ln        ; Loop for N times, or infinitely if N is 0
  - M808           ; End of loop
  - M808 K         ; Complete all loops without iterating

Added unit tests in test/klippy/sdcard_loop.test

See https://reprap.org/wiki/G-code#M808:_Set_or_Goto_Repeat_Marker

Signed-off-by: Jason S. McMullan <jason.mcmullan@gmail.com>
2021-05-26 11:57:57 -04:00
Kevin O'Connor 7bf379d75d docs: Fix typo in Config_Reference.md
Should be "hybrid-corexy" instead of "hybrid-codexy".  Reported by
@mak0t0san.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-05-06 11:46:35 -04:00
Tircown f2c74ec023
kinematics: Add hybrid-corexy and hybrid-corexz (#4229)
Signed-off-by: Fabrice GALLET <tircown@gmail.com>
2021-05-03 14:31:23 -04:00
Kevin O'Connor f10247a498 gcode_macro: Deprecate default_parameter_<name>
The Jinja2 "set" directive is more flexible and easier to understand
than default_parameter_XXX parameters.  Deprecate it and encourage
using "set" as a replacement.

This also deprecates direct access to parameters via parameter name in
a macro.  Going forward, the `params` pseudo-variable must be used to
access a parameter.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-05-03 12:43:53 -04:00
Kevin O'Connor e77bf7431e docs: Move palette2 location in Config_Reference.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-04-28 20:40:24 -04:00
nlef 2d2db0f839
probe: Add deactivate_on_each_sample: param for Probe (#4161)
Signed-off-by: Nick Lefskiy <n.lefskiy@yandex.ru>
2021-04-24 13:39:58 -04:00
Clifford Roche e7b0e7b43b
palette2: Add ping variation + ping status reports (#4114)
Signed-off-by: Clifford Roche <clifford.roche@gmail.com>
2021-04-14 11:37:24 -04:00
Arksine a93d09cdf4 docs: document bed mesh "faulty_regions"
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2021-04-10 11:16:07 -04:00
Kevin O'Connor cacf1197b6 docs: Minor changs to pca9533 in Config_Reference.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-04-09 17:50:30 -04:00
le-Bark eb4abdd830
pca9533: RGB support for the mightyboard (#4150)
Signed-off-by: Marc-André Denis <marcadenis@msn.com>
2021-04-09 17:47:16 -04:00
Kevin O'Connor b1b2488538 docs: Minor display sectoin updates to Config_Reference.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-04-09 13:07:40 -04:00
Kevin O'Connor cf0c165361 Docs: Split the display section of Config_Reference.md into multiple sections
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-04-09 12:59:13 -04:00
Kevin O'Connor 26603e8369 docs: Minor copy-and-paste fix to Config_Reference.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-04-09 12:02:18 -04:00
le-Bark 317402d5ba
hd44780_spi: added lcd support to the mightyboard (#4121)
Signed-off-by: Marc-André Denis <marcadenis@msn.com>
2021-04-07 21:07:23 -04:00
Pascal P 88f6061cd7
output_pin: Support setting max_duration (#3995)
Also added documentation for using powered tools.

Signed-off-by: Pascal Pieper <accounts@pascalpieper.de>
2021-03-26 11:25:09 -04:00
Clifford Roche e2a3217289
palette2: Add support for P2 devices (#4057)
Module which bring support for P2 devices running in connected mode. This enables using a Palette2 directly with Klippy without Octoprint, or without Palette2 plugins for Octoprint which are not functional out of the box with Klipper.

Signed-off-by: Clifford Roche <clifford.roche@gmail.com>
2021-03-26 11:21:10 -04:00
Kevin O'Connor 5c2c43b05f docs: Revise sensorless homing configuration guide
Recommend finding the minimum and maximum stallguard settings while
tuning sensorless homing.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-03-25 12:21:13 -04:00
Kevin O'Connor dd4f2d81b6 docs: Deprecate support for the pin_map config option
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-03-25 10:50:56 -04:00
Kevin O'Connor 36b1ccd598 replicape: Don't require a host alias for the enable_pin default
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-03-25 10:49:17 -04:00
Michael Kurz b4437f8eee
bme280: Add support for BMP280 and BME680 sensors (#4040)
This adds support for BMP280 and BME680 sensor ICs,
along with fixing calibration data readout for BME280.

Gas sensor readout for the BME680 is just the raw compensated value.
To get actual meaningful values, more research is needed.

Signed-off-by: Michael Kurz <michi.kurz@gmail.com>
2021-03-15 11:50:29 -04:00
TheJoshW bf8f7133b4
filament_motion_sensor: Add filament_motion_sensor (#3857)
Add functionality to support a Filament Motion Sensor for detecting extruder jams as well as runouts.  Works by an encoder toggling the switch_pin 0/1 as the filament is pulled through the sensor.

Signed-off-by: Joshua Wherrett <thejoshw.code@gmail.com>
2021-03-14 21:36:19 -04:00
Kevin O'Connor 041692828c mcu: Add support for connecting to devices on a CAN bus
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-03-13 11:29:41 -05:00
Kevin O'Connor 715b89ce0c docs: Rename Sensorless_homing.md to TMC_Drivers.md and extend
Add additional information on configuring and using TMC drivers.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-03-10 20:09:34 -05:00
Kevin O'Connor 3ea2e4fc58 tmc2660: Do not enable SFILT by default
None of the other TMC driver enable SFILT by default and it seems
enabling SFILT may not be ideal for sensorless homing.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-03-10 12:07:18 -05:00
teeminus bc2096f543
st7920: Better support for emulated ST7920 displays (#3979)
Added new ST7920E display driver which is better suited for displays with emulated ST7920

Signed-off-by: Christian Kehe <teeminus@posteo.net>
2021-03-01 18:23:06 -05:00
Adrian Keet 16d85d1a78 fan: Add tachometer support
This adds new config options for fans:  'tachometer_pin' to specify the
GPIO pin, and 'tachometer_ppr' (default 2) to specify the number of
signal pulses per revolution.  The rpm is also exposed by get_status for
command templates and the API server.  For fast fans (at least 10000
RPM), the polling interval can be shortened using the
'tachometer_poll_interval' option.

There is a new mcu object for a generic edge counter, which repeatedly
polls a GPIO pin and periodically reports the count to the host.

Signed-off-by: Adrian Keet <arkeet@gmail.com>
2021-03-01 14:53:13 -05:00
Marco D'Alessio c7688c6bca tmc2130: Add spi daisy chain support
This patch adds the ability to daisy-chain multiple tmc2130 and
tmc5160 drivers.

Signed-off-by: Marco D'Alessio <marco@wrecklab.com>
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-02-26 10:54:47 -05:00
Stefan Dej 6b6ab45bac
docs: Use BME280 (uppercase) in Config_Reference.md (#3896)
Signed-off-by: Stefan Dej <meteyou@gmail.com>
2021-02-22 15:42:14 -05:00
Kevin O'Connor c29585f7f3 temperature_host: Rename "path" config to "sensor_path"
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-02-20 09:23:13 -05:00
Evgenii 3d35c003db temperature_host: Rename rpi_temperature and add support for custom paths
Signed-off-by: Evgenii Shavrin <shavrin0591@gmail.com>
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2021-02-19 18:44:28 -05:00
Alan Lord 7d4df65920
ds18b20: new module for 1-wire temperature sensor (#3462)
Initial commit of code to support 1-wire (Dallas) sensors such
as the DS18B20. Requires Linux kernel drivers to create a file
in /sysfs which is read by this module, and temperature
typically returned to a temperature_fan.

Signed-off-by: Alan Lord <alanslists@gmail.com>
Signed-off-by: Josh Headapohl <joshhead@gmail.com>
2021-02-02 14:34:56 -05:00