1325 Commits
Author SHA1 Message Date
Kevin O'Connor c63b29510b docs: Minor wording improvement to PID_CALIBRATE notice in Config_Changes.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-10-18 22:58:12 -04:00
Kevin O'Connor e81223416c docs: Add more context to PID_CALIBRATE change in Config_Changes.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-10-18 22:53:30 -04:00
Timofey Titovets e761a2c762 pid_calibrate: Fix Ku formula
Ku = 4d/pi*a
Where `d` and `a` is an amplitude
For power change of 0 -> 1 -> 0
Amplitude is 0.5

Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
2026-10-18 22:40:40 -04:00
Uriah Kessman 2d9c7feff2 tmc5262: Add TMC5262 stepper driver
Add SPI access, internal-clock PLL setup, integrated-current-sense
current control, SpreadCycle, temperature reporting, and standard TMC
fault and status helpers. Check the PLL whenever registers are restored
and clear the phase offset when reinitializing the PLL.

Document the new configuration and include a Klippy regression case.
Derived from the GPLv3 TMC5262 driver by Rogerio Goncalves in Kalico.

Signed-off-by: Rogerio Goncalves <rogerlz@gmail.com>
Signed-off-by: Uriah Kessman <fishyfabspnw@gmail.com>
2026-10-18 22:27:41 -04:00
Satvik Mishra 6c8e313283 docs: Fix broken internal links and anchors
Several links pointed at heading anchors that no longer exist (renamed
or moved sections), so they did not jump to the intended section.
Update them to the current anchors, and use a relative path for the
sample-pwm-tool.cfg link so it resolves like the other config links.

Signed-off-by: Satvik Mishra <Satvikmishra.ipu146183@maims.ac.in>
2026-10-12 20:15:44 -04:00
Florian Hofer ce2ddbab09 hd44780: Make command delay configurable
Add an hd44780_delay config option so the minimum wait time after
sending a command or data byte to the hd44780 chip can be tuned.
Some displays need more than the default 40us. The value is limited
to a maximum of 60us, as the mcu busy-waits for this delay.

Signed-off-by: Florian Hofer <SirDeath81_github@outlook.com>
2026-09-30 15:13:04 -04:00
Thijs Triemstra b413d3abcb docs: fix typos and formatting in Load_Cell.md (#7374)
Corrected typos and formatting inconsistencies in Load_Cell documentation.

Signed-off-by: Thijs Triemstra <info@collab.nl>
2026-09-28 13:08:36 -04:00
Timofey Titovets ce7002bedf docs: Describe TAP errors
Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
2026-09-18 22:31:31 -04:00
沐枫 8cdfdd98c0 load_cell: add CS1237 support (#7370)
Signed-off-by: Xiaoyue Cui <2508041672@qq.com>
2026-09-18 22:30:57 -04:00
Kevin O'Connor ad425fc22e docs: Fix spelling error in FAQ.md
Reported by @reitermarkus.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-09-17 12:26:59 -04:00
Kevin O'Connor 9871eeef13 docs: Note TEMPERATURE_PROBE_CALIBRATE MANUAL_METHOD in Config_Changes.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-09-15 11:14:11 -04:00
Timofey Titovets 7597e2bd6a temperature_probe: Use new MANUAL_METHOD instead of METHOD
Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
2026-09-15 11:10:06 -04:00
Timofey Titovets 3a89d29c52 manual_probe: Allow to use nozzle probes
Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
2026-09-15 11:10:06 -04:00
Morton Jonuschat 8c29c0a8e2 mcu: expose embedded build config in status
Read the identify dictionary's kconfig key and publish it as mcu_kconfig.
Return None when older firmware does not include the key.

Signed-off-by: Morton Jonuschat <mjonuschat@gmail.com>
2026-09-08 17:59:51 -04:00
Kevin O'Connor ac2a7f8b0e docs: Update G-Codes.md SAVE_GCODE_STATE description for M83
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-08-21 17:48:59 -04:00
Kevin O'Connor 58bd67db3c gcode_move: Update docs to clarify M82 does not force absolute extrusion mode
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-08-19 13:41:57 -04:00
Martin Hierholzer fe4eb8650b load_cell_probe: Improve precision for slow ADCs (#7301)
By applying a non-linear fit of a piecewise function with a linear
region for the Z positions below the point of contact and a constant
"tare" region, the optimal Z position can be determined with greater
precision, even beyond the ADC sample intervals. This is particularly
helpful when using a relatively slow ADC like the HX711.

Signed-off-by: Martin Hierholzer <martin@hierholzer.info>
2026-08-13 12:50:52 -04:00
freakyDude d6ea62542d docs: Corrected the z_thermal_adjust example
The 'z_thermal_adjust' config section example was named
and had a maximum deviation property missing.

Signed-off-by: Frank Roth <developer@freakydu.de>
2026-06-26 20:18:01 -04:00
Eric Callahan b4424a6582 docs: note fast spi option in sdcard_updates.md
Signed-off-by:  Eric Callahan <arksine.code@gmail.com>
2026-06-12 10:19:02 -04:00
Dmitry Butyugin 4c137ed3e5 docs: Added missing load_cell[_probe] fields, fixed formatting
Signed-off-by: Dmitry Butyugin <dmbutyugin@google.com>
2026-06-09 12:52:59 -04:00
Kevin O'Connor c250b7c86d docs: Note possibility of users observing "probe:z_virtual_endstop" change
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-05-25 17:17:44 -04:00
Kevin O'Connor 5a56830a01 docs: Homing correction macros no longer needed in Eddy_Probe.md
There is no longer a need for the correction macros now that the G28
code uses the standard probing interface.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-05-25 17:11:24 -04:00
Kevin O'Connor a9d441f70e load_cell_probe: Enable homing via "probe:z_virtual_endstop"
It is possible to home with load cells now that the G28 code uses the
standard probing interface.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-05-25 17:11:24 -04:00
Dmitry Butyugin e5394f3069 ads131m0x: Added ADS131M02 and ADS131M04 sensors support (#7264)
Signed-off-by: Dmitry Butyugin <dmbutyugin@google.com>
2026-05-23 19:30:38 -04:00
Timofey Titovets 4cc47cf565 temperature_probe: use tap for calibration
Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
2026-05-15 11:24:59 -04:00
Kevin O'Connor ca8230d505 ldc1612: Add support for a new 'max_sensor_hz' config parameter
Add a new option so that setting of sensor_div is more robust.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-05-11 20:50:21 -04:00
Kevin O'Connor 02cfc65eb6 docs: Note that Z "position_min" needed for "tap" in Eddy_Probe.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-05-08 10:37:06 -04:00
Kevin O'Connor 54f4827756 docs: Expand Eddy_Probe.md instructions for homing with an eddy probe
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-05-08 10:37:06 -04:00
Kevin O'Connor 72c054f938 docs: Updates to Eddy_probe.md document
Provide more information on the different probe types available when
using an eddy current probe.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-05-08 10:37:06 -04:00
Kevin O'Connor ef7b13b1f2 probe_eddy_current: Add new PROBE_EDDY_CURRENT_TAP_CALIBRATE command
Add a command to help configure the tap_threshold parameter.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-05-01 23:39:15 -04:00
Kevin O'Connor 460ee78340 probe_eddy_current: Rework tap_threshold to use hz/mm
Rework the tap_threshold to use units of hz/mm (instead of hz).  This
will make it easier to implement tap calibration based on results of
PROBE_EDDY_CURRENT_CALIBRATE and previous tap attempts.  It can also
make the tap_threshold more stable with different probe speeds and
sensor rates.

As a result of this change, existing user configurations will need to
be updated.  It is hoped that existing configurations will have a
value that is sufficiently low that they will reliably get an error
until they can recalibrate.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-05-01 23:31:17 -04:00
Dmitry Butyugin 530cd05122 input_shaper: Added documentation and tests for customizable parameters
Signed-off-by: Dmitry Butyugin <dmbutyugin@google.com>
2026-04-27 21:39:47 -04:00
Neelix 373f200ca6 polar: add velocity scaling (#7172)
Print near the origin lead in to fast motor movements, therefore the
movement needs to be scaled down. The start of the scaling is done via
a rotation velocity limit from the config.

Signed-off-by: Nils Hensch <nils.hensch@gmx.de>
2026-04-16 10:52:33 -04:00
Kevin O'Connor 22dbdf1029 trigger_analog: Store pre-generated 25hz lowpass filter (at 250sps)
Store the 12 constants needed for the common probe_eddy_current "tap"
filter in trigger_analog.py code.  This avoids requiring "tap" users
to have the scipy python package installed.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-04-12 12:05:39 -04:00
Kevin O'Connor f3db41c637 docs: Update FAQ now that heaters have a MAX_HEAT_TIME of 3 seconds
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-04-08 16:06:57 -04:00
Robert Schiele dbebcfd638 katapult: Add a Config_changes.md entry for flashtool.py renaming
Signed-off-by: Robert Schiele <rschiele@gmail.com>
2026-04-08 15:03:28 -04:00
Robert Schiele 29e2652777 katapult: Update flash_can.py to succesor tool flashtool.py
This updates the outdated CanBoot flash_can.py with the latest
version of Katapult flashtool.py, which should be fully backwards
compatible.

Signed-off-by: Robert Schiele <rschiele@gmail.com>
2026-04-08 15:03:28 -04:00
Ben Lye 3a0b834f3a hall_filament_width_sensor: Sync runout and width sensor states
Keeps the width sensor state in sync with the associated runout sensor and
normalizes the output when the width sensor is disabled.

When the width sensor was disabled the associated filament sensor remained
enabled but was no longer updated so would be 'stuck' in the last state it
was in before the width sensor was disabled.

The toggle switch and readings in the web interface could also be out of sync
with the actual sensor and filament states, misleading the user.

Now, when the width sensor is disabled:
- The filament sensor is disabled
- The reported filament state is 'present'
- The reported filament diameter is the nominal diameter

When the width sensor is enabled:
- The filament sensor is enabled
- The reported filament state is the derived state
- The reported filament diameter is the measured value

Finally, `min_diameter` is now used to determine the runout state rather than
a fixed value of `0.5`.

Signed-off-by: Ben Lye ben@lye.co.nz
2026-04-08 14:57:04 -04:00
Ben Lye 48446a5448 hall_filament_width_sensor: Add config validation
Adds two checks to prevent config settings which could lead to div-by-zero errors in specific circumstances:

- `raw_dia1` and `raw_dia2` must be different to prevent a possible exception in `adc2_callback`

- `max_difference` must be less than `default_nominal_filament_diameter` to prevent a possible exception in `extrude_factor_update_event`

Doc is also updated.

Signed-off-by: Ben Lye ben@lye.co.nz
2026-04-08 14:57:04 -04:00
Ben Lye 4fba8e4829 hall_filament_width_sensor: Toggle for flow compensation
Adds a toggle to enable or disable flow compensation based on the
filament width sensor readings without disabling the sensor entirely.

Useful on printers where the hall effect sensor is too inaccurate to
helpfully adjust the extrusion multiplier, but is good enough to act as
a filament runout sensor.

The new setting defaults to true to preserve the existing sensor
behavior.

Existing width sensor G-Code commands are updated to optionally enable
and disable flow compensation and to show the state of the sensor and
command outputs are normalized.

Also includes updates to the relevant doc pages.

Signed-off-by: Ben Lye ben@lye.co.nz
2026-04-08 14:57:04 -04:00
Ju Nan b0e6ca45fc docs: Fix warnings in re pattern and update py-gfm version
1. wipe out syntaxwarnings of "invalid escape sequence '\s'"
2. update py-gfm version to fit python3.8+

Signed-off-by: Ju Nan <junan76@163.com>
2026-04-01 11:50:21 -04:00
Kevin O'Connor e5c3dfe7a8 probe_eddy_current: Use different defaults for "scan", "rapid_scan" and "tap"
Add a new EddyParameterHelper to override ProbeParameterHelper.

Only use the printer.cfg lift_speed, samples, sample_retract_dist,
samples_result, samples_tolerance, and samples_tolerance_retries
settings for normal probe operations.  Don't use these defaults when
using a "METHOD" set to "scan", "rapid_scan", or "tap".  Each of these
probing mechanisms is distinct and it's unlikely a user could
meaningfully set a default for all of them.

Don't set sample_retract_dist when using "scan" and "rapid_scan"
modes.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-03-24 13:13:37 -04:00
Kevin O'Connor 6c8c8d24d7 probe_eddy_current: Support new tap_z_offset config parameter
Theoretically a "tap" probe should detect the exact point that the
nozzle contacts the bed.  In practice, however, there can be a
systemic bias that one may wish to account for.  This bias may be due
to backlash, thermal expansion, a detection bias, or similar issues.

Add a new tap_z_offset config parameter to allow users to specify an
offset.

Also, update the Z_OFFSET_APPLY_PROBE command to support modifying
this value.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-03-24 13:07:19 -04:00
Kevin O'Connor 20df766e21 probe_eddy_current: Rename config option z_offset to descend_z
The config option 'z_offset' name is confusing as its behavior is
notably different from how other probe hardware uses 'z_offset'.
Rename to 'descend_z' to make its behavior more clear.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-03-24 13:07:19 -04:00
Kevin O'Connor 4046b34a7b docs: Note probe options that can change via G-Code in Config_Reference.md
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-03-24 13:07:19 -04:00
Timofey Titovets 0c32f3bd99 tmc2240: allow enable SG4 threshold
Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
2026-03-04 19:56:26 -05:00
Kevin O'Connor 0624cce4b3 probe_eddy_current: Support TAP_THRESHOLD parameter on "tap" probes
Allow the "tap_threshold" to be overriden during PROBE type commands.
This makes it easier to calibrate an initial tap_threshold.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-02-28 20:11:16 -05:00
Kevin O'Connor 391834ba12 docs: Rework how METHOD= parameter works in G-Codes.md
Describe the METHOD= parameter in the probe_eddy_current chapter.

Use similar layout for both the load_cell_probe and probe_eddy_current
sections.

Avoid duplicating the METHOD= parmeter for other commands.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-02-27 20:20:33 -05:00
Kevin O'Connor 43b2d55d9b motan: Don't default to subscribing to all sensors in data_logger
Subscribing to all sensors can cause a burden on the MCU communication
channels.  Add a new '-s' command line option to data_logger.py that
allows a user to request the subscriptions that they wish to capture.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2026-02-24 10:05:21 -05:00
Dmitry Butyugin 187481e251 dual_carriage: Allow dual carriage inactivation
Signed-off-by: Dmitry Butyugin <dmbutyugin@google.com>
2026-02-19 21:37:18 -05:00