Skip to content

Commit

Permalink
Squashed commit of the following:
Browse files Browse the repository at this point in the history
commit 3f3d378
Merge: c3cd269 7884129
Author: Rogerio Goncalves <[email protected]>
Date:   Tue Apr 23 22:37:40 2024 +0100

    Merge branch 'master' into upstream_pr

commit 7884129
Author: Frédéric Beaucamp <[email protected]>
Date:   Tue Apr 23 22:38:38 2024 +0200

    Some improvements to dockable_probe (KalicoCrew#175)

    * add restore_toolhead, extract_position, insert_position settings

    * Fix : Black format

    .

    Signed-off-by: Frédéric Beaucamp <[email protected]>

    * add parameters in test config

    ---------

    Signed-off-by: Frédéric Beaucamp <[email protected]>

commit b97b4bd
Author: Rogerio Goncalves <[email protected]>
Date:   Tue Apr 23 16:26:00 2024 -0400

    update to latest Klipper3d/klipper (2f6e94c) (KalicoCrew#216)

    * stm32: fix support for USARTs on STM32G0B0

    Signed-off-by: Robert Cambridge <[email protected]>

    * makefile: Replace CFLAGS -I with -iquote

    The -iquote tells GCC to only search that path when resolving a quoted
    "include" (vs <angle brackets>) which by convention imples a include from
    the projects own soruce tree. This prevents a conflict between Klippers
    "sched.h" and "gpio.h" and <linux/gpio.h> and glibc <sched.h>.

    Signed-off-by: Michael 'ASAP' Weinrich <[email protected]>

    * linux: Don't use absolute paths for include

    Not all systems (i.e. Nix) repect the standard Linux filesystem hierarchy,
    instead relative paths should be used and allowing GCC to rely on it's
    builtin search paths.

    Signed-off-by: Michael 'ASAP' Weinrich <[email protected]>

    * manual_stepper: Add basic status. (#6527)

    Adding position and enabled in manual_stepper status. Enabled is already available through stepper_enable object. But this makes it more straightforward to access it.

    Signed-off-by: Viesturs Zarins <[email protected]>

    * klippy: remove a few unused variable assignments (#6504)

    Signed-off-by: Kamil Domański <[email protected]>

    * mcu: Separate trdispatch handling from MCU_endstop class

    Create a new TriggerDispatch class to track the low-level handling of
    the trdispatch mechanism.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * probe: Add a probing_move() wrapper to low-level mcu_probe class

    This allows the low-level probe class more control on the probing
    implementation.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * sensor_ldc1612: Initial support for bulk reading ldc1612 sensor

    Signed-off-by: Alan.Ma from BigTreeTech <[email protected]>
    Signed-off-by: Kevin O'Connor <[email protected]>

    * ldc1612: Initial host support for reading ldc1612 bulk sensor data

    Signed-off-by: Kevin O'Connor <[email protected]>

    * ldc1612: Add LDC_CALIBRATE_DRIVE_CURRENT calibration command

    Add a command to calibrate the sensor DRIVE_CURRENT0 register.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * probe_eddy_current: Support calibrating Z height to sensor frequency

    Add a calibration tool that can be used to correlate sensor frequency
    to bed Z height.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * probe_eddy_current: Initial support for PROBE command

    Signed-off-by: Kevin O'Connor <[email protected]>

    * probe_eddy_current: Use sensor value at halt position for "trigger" position

    Calculate the sensor Z position after the probe halts and return that
    as the "probed position".  This sensor position provides a more
    accurate measurement.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * docs: Add documentation for probe_eddy_current

    Signed-off-by: Kevin O'Connor <[email protected]>

    * docs: Add a new Eddy_Probe.md document

    Signed-off-by: Kevin O'Connor <[email protected]>

    * motan: Add support for graphing ldc1612 coil frequencies

    Signed-off-by: Kevin O'Connor <[email protected]>

    * manual_stepper: Revert "manual_stepper: Add basic status. (#6527)"

    This reverts commit b029d04.

    The MCU_Stepper class does not have a is_motor_enabled() method, so
    the change above results in an internal exception.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * homing_override: Adds rawparams support

    Signed-off-by: Pedro Lamas <[email protected]>

    * docs: Fix typo in Resonance_Compensation.md

    Signed-off-by: Plynskiy Nikita <[email protected]>

    * config: Artillery Sidewinder X3 (#6534)

    Signed-off-by: Phil Timpson <[email protected]>

    * virtual_sdcard: Define a default for on_gcode_error

    If on_gcode_error is not specified, default to running the
    TURN_OFF_HEATERS command.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * docs: Recommend using "ip" instead of "ifconfig" in CANBUS.md

    Some Linux systems do not install ifconfig, while ip should always be
    available.  So, update the canbus documentation to recommend that.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * docs: Add information on txqueuelen to CANBUS_Troubleshooting.md

    Provide some background information on the Linux can interface
    txqueuelen parameter, errors that it can cause, and considerations
    when configuring it.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * adxl345: Move sample timestamp calculation to reusable code

    Add a new extract_samples() method to the ChipClockUpdater class that
    calculates the sample timestamp for each sample in a list of bulk
    sensor reports.

    Update the adxl345 code to use that extract_samples() code.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * lis2dw: Use extract_samples() for sample timestamp calculation

    Signed-off-by: Kevin O'Connor <[email protected]>

    * mpu9250: Use extract_samples() for sample timestamp calculation

    Signed-off-by: Kevin O'Connor <[email protected]>

    * ldc1612: Use extract_samples() for sample timestamp calculation

    Signed-off-by: Kevin O'Connor <[email protected]>

    * bulk_sensor: Refactor ChipClockUpdater constructor

    Build the clock_sync and struct.Struct() in the ChipClockUpdater
    constructor.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * bulk_sensor: Rework ChipClockUpdater class into FixedFreqReader

    Move the sensor_bulk_data message queuing into the class, and then
    rename that class.  This simplifies the users of the code.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * bulk_sensor: Rename BulkDataQueue methods

    Rename pull_samples() to pull_queue() and rename clear_sample() to
    clear_queue().  This avoids confusion between the queue of response
    messages and the larger list of samples stored within those messages.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * docs: Update CANBUS_Troubleshooting.md to avoid formatting error

    Avoid starting a line with "128." as that confused markdown.

    Signed-off-by: Kevin O'Connor <[email protected]>

    * sht3x: Add sht31 support (#6560)

    Signed-off-by: Timofey Titovets <[email protected]>

    * docs: Fix typo in Bed_Mesh.md (#6572)

    Signed-off-by: Maggi Alessandro <[email protected]>

    * format

    ---------

    Signed-off-by: Robert Cambridge <[email protected]>
    Signed-off-by: Michael 'ASAP' Weinrich <[email protected]>
    Signed-off-by: Viesturs Zarins <[email protected]>
    Signed-off-by: Kamil Domański <[email protected]>
    Signed-off-by: Kevin O'Connor <[email protected]>
    Signed-off-by: Alan.Ma from BigTreeTech <[email protected]>
    Signed-off-by: Pedro Lamas <[email protected]>
    Signed-off-by: Plynskiy Nikita <[email protected]>
    Signed-off-by: Phil Timpson <[email protected]>
    Signed-off-by: Timofey Titovets <[email protected]>
    Signed-off-by: Maggi Alessandro <[email protected]>
    Co-authored-by: Robert Cambridge <[email protected]>
    Co-authored-by: Michael 'ASAP' Weinrich <[email protected]>
    Co-authored-by: Viesturs Zariņš <[email protected]>
    Co-authored-by: Kamil Domański <[email protected]>
    Co-authored-by: Kevin O'Connor <[email protected]>
    Co-authored-by: Pedro Lamas <[email protected]>
    Co-authored-by: trofen <[email protected]>
    Co-authored-by: TheFeralEngineer <[email protected]>
    Co-authored-by: Timofey Titovets <[email protected]>
    Co-authored-by: Alessandro Maggi <[email protected]>

commit c3cd269
Author: Rogerio Goncalves <[email protected]>
Date:   Tue Apr 23 16:03:51 2024 +0100

    format

commit 5ed6d70
Merge: ca37123 2f6e94c
Author: Rogerio Goncalves <[email protected]>
Date:   Tue Apr 23 15:59:52 2024 +0100

    Merge upstream Klipper3d:klipper

commit 2f6e94c
Author: Alessandro Maggi <[email protected]>
Date:   Sun Apr 21 00:57:58 2024 +0200

    docs: Fix typo in Bed_Mesh.md (#6572)

    Signed-off-by: Maggi Alessandro <[email protected]>

commit 713b509
Author: Timofey Titovets <[email protected]>
Date:   Sun Apr 21 00:42:31 2024 +0200

    sht3x: Add sht31 support (#6560)

    Signed-off-by: Timofey Titovets <[email protected]>

commit 28faf81
Author: Kevin O'Connor <[email protected]>
Date:   Sat Apr 20 13:23:42 2024 -0400

    docs: Update CANBUS_Troubleshooting.md to avoid formatting error

    Avoid starting a line with "128." as that confused markdown.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 8195993
Author: Kevin O'Connor <[email protected]>
Date:   Sun Apr 14 12:39:27 2024 -0400

    bulk_sensor: Rename BulkDataQueue methods

    Rename pull_samples() to pull_queue() and rename clear_sample() to
    clear_queue().  This avoids confusion between the queue of response
    messages and the larger list of samples stored within those messages.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit abb7910
Author: Kevin O'Connor <[email protected]>
Date:   Sun Apr 14 12:33:22 2024 -0400

    bulk_sensor: Rework ChipClockUpdater class into FixedFreqReader

    Move the sensor_bulk_data message queuing into the class, and then
    rename that class.  This simplifies the users of the code.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 9ceaae3
Author: Kevin O'Connor <[email protected]>
Date:   Sat Apr 13 21:02:04 2024 -0400

    bulk_sensor: Refactor ChipClockUpdater constructor

    Build the clock_sync and struct.Struct() in the ChipClockUpdater
    constructor.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 56829b0
Author: Kevin O'Connor <[email protected]>
Date:   Sat Apr 13 20:26:16 2024 -0400

    ldc1612: Use extract_samples() for sample timestamp calculation

    Signed-off-by: Kevin O'Connor <[email protected]>

commit f73e6dc
Author: Kevin O'Connor <[email protected]>
Date:   Sat Apr 13 20:20:59 2024 -0400

    mpu9250: Use extract_samples() for sample timestamp calculation

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 144af05
Author: Kevin O'Connor <[email protected]>
Date:   Sat Apr 13 20:17:20 2024 -0400

    lis2dw: Use extract_samples() for sample timestamp calculation

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 95fdb68
Author: Kevin O'Connor <[email protected]>
Date:   Sat Apr 13 20:03:47 2024 -0400

    adxl345: Move sample timestamp calculation to reusable code

    Add a new extract_samples() method to the ChipClockUpdater class that
    calculates the sample timestamp for each sample in a list of bulk
    sensor reports.

    Update the adxl345 code to use that extract_samples() code.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit c106955
Author: Kevin O'Connor <[email protected]>
Date:   Fri Apr 12 14:25:05 2024 -0400

    docs: Add information on txqueuelen to CANBUS_Troubleshooting.md

    Provide some background information on the Linux can interface
    txqueuelen parameter, errors that it can cause, and considerations
    when configuring it.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 12e9b63
Author: Kevin O'Connor <[email protected]>
Date:   Fri Apr 12 11:37:01 2024 -0400

    docs: Recommend using "ip" instead of "ifconfig" in CANBUS.md

    Some Linux systems do not install ifconfig, while ip should always be
    available.  So, update the canbus documentation to recommend that.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 2425a74
Author: Kevin O'Connor <[email protected]>
Date:   Thu Mar 21 23:22:10 2024 -0400

    virtual_sdcard: Define a default for on_gcode_error

    If on_gcode_error is not specified, default to running the
    TURN_OFF_HEATERS command.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 36f9b26
Author: TheFeralEngineer <[email protected]>
Date:   Fri Apr 12 12:27:36 2024 -0400

    config: Artillery Sidewinder X3 (#6534)

    Signed-off-by: Phil Timpson <[email protected]>

commit 75d7c17
Author: trofen <[email protected]>
Date:   Thu Apr 11 17:58:47 2024 +0300

     docs: Fix typo in Resonance_Compensation.md

    Signed-off-by: Plynskiy Nikita <[email protected]>

commit c37329e
Author: Pedro Lamas <[email protected]>
Date:   Thu Apr 11 10:26:01 2024 +0100

    homing_override: Adds rawparams support

    Signed-off-by: Pedro Lamas <[email protected]>

commit ca37123
Author: Rogerio Goncalves <[email protected]>
Date:   Fri Apr 12 06:08:35 2024 -0400

    hotfix: disable min_cruise_ratio correctly (KalicoCrew#209)

    * hotfix: disable min_cruise_ratio correctly

    * duplicated code

commit fc4abbf
Author: Zeanon <[email protected]>
Date:   Thu Apr 11 23:48:52 2024 +0200

    Custom threshold for PROBE_POINTS_INCREASING check on QGL and Z_TILT (KalicoCrew#189)

    * Initial Implementation

    * Added readme

    * added ci tests

    ---------

    Co-authored-by: Rogerio Goncalves <[email protected]>

commit 4cfa266
Author: Kevin O'Connor <[email protected]>
Date:   Wed Apr 10 10:38:48 2024 -0400

    manual_stepper: Revert "manual_stepper: Add basic status. (#6527)"

    This reverts commit b029d04.

    The MCU_Stepper class does not have a is_motor_enabled() method, so
    the change above results in an internal exception.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit d209dee
Author: Zeanon <[email protected]>
Date:   Wed Apr 10 15:27:56 2024 +0200

    Save without restart (KalicoCrew#191)

    * SAVE_CONFIG without restart

    * black formatting

    * Added caution warning

    * Update README.md

    * Added test case

    ---------

    Co-authored-by: Rogerio Goncalves <[email protected]>

commit c906c80
Author: Zeanon <[email protected]>
Date:   Wed Apr 10 15:02:54 2024 +0200

    Use recursive globs to include config files (KalicoCrew#200)

    * Initial Implementation

    * Updated Readme

    * Added CI tests

    * writing the right name for what you want to include actually helps

commit 2e67d37
Author: Zeanon <[email protected]>
Date:   Wed Apr 10 15:02:00 2024 +0200

    Also expose temperature_fan and temperature_sensor (KalicoCrew#201)

    * Update mcu.py

    * Include Temperature_fan

    * removed ununsed paranthesis

    * cleaned up the code and removed loops

    * Added Thermocouples

    * code cleanup

commit 898009a
Author: Zeanon <[email protected]>
Date:   Wed Apr 10 13:44:14 2024 +0200

    Fixed issues with HappyHare (KalicoCrew#188)

    * Fixed issues with HappyHare

    * Added doc and fixed reset behaviour

    * Removed unused import

commit a8b493a
Author: Kevin O'Connor <[email protected]>
Date:   Fri Dec 15 19:05:25 2023 -0500

    motan: Add support for graphing ldc1612 coil frequencies

    Signed-off-by: Kevin O'Connor <[email protected]>

commit b098972
Author: Kevin O'Connor <[email protected]>
Date:   Mon Jan 8 00:36:32 2024 -0500

    docs: Add a new Eddy_Probe.md document

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 30e0fdd
Author: Kevin O'Connor <[email protected]>
Date:   Sun Jan 7 23:53:57 2024 -0500

    docs: Add documentation for probe_eddy_current

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 28281c5
Author: Kevin O'Connor <[email protected]>
Date:   Mon Jan 8 21:56:04 2024 -0500

    probe_eddy_current: Use sensor value at halt position for "trigger" position

    Calculate the sensor Z position after the probe halts and return that
    as the "probed position".  This sensor position provides a more
    accurate measurement.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 13b2926
Author: Kevin O'Connor <[email protected]>
Date:   Sun Jan 7 13:32:41 2024 -0500

    probe_eddy_current: Initial support for PROBE command

    Signed-off-by: Kevin O'Connor <[email protected]>

commit b0d90fd
Author: Kevin O'Connor <[email protected]>
Date:   Sat Dec 30 21:07:19 2023 -0500

    probe_eddy_current: Support calibrating Z height to sensor frequency

    Add a calibration tool that can be used to correlate sensor frequency
    to bed Z height.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit d84fc43
Author: Kevin O'Connor <[email protected]>
Date:   Sun Jan 7 00:06:44 2024 -0500

    ldc1612: Add LDC_CALIBRATE_DRIVE_CURRENT calibration command

    Add a command to calibrate the sensor DRIVE_CURRENT0 register.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit da2b258
Author: Kevin O'Connor <[email protected]>
Date:   Fri Dec 15 17:50:34 2023 -0500

    ldc1612: Initial host support for reading ldc1612 bulk sensor data

    Signed-off-by: Kevin O'Connor <[email protected]>

commit b8f1df3
Author: Kevin O'Connor <[email protected]>
Date:   Fri Dec 15 12:23:32 2023 -0500

    sensor_ldc1612: Initial support for bulk reading ldc1612 sensor

    Signed-off-by: Alan.Ma from BigTreeTech <[email protected]>
    Signed-off-by: Kevin O'Connor <[email protected]>

commit acdf8bb
Author: Kevin O'Connor <[email protected]>
Date:   Mon Jan 8 21:33:56 2024 -0500

    probe: Add a probing_move() wrapper to low-level mcu_probe class

    This allows the low-level probe class more control on the probing
    implementation.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit fa5fa74
Author: Kevin O'Connor <[email protected]>
Date:   Sat Jan 6 19:27:56 2024 -0500

    mcu: Separate trdispatch handling from MCU_endstop class

    Create a new TriggerDispatch class to track the low-level handling of
    the trdispatch mechanism.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 5c196ee
Author: Rogerio Goncalves <[email protected]>
Date:   Tue Apr 9 12:52:13 2024 -0400

    hotfix: replace max_accel_to_decel by minimum_cruise_ratio (KalicoCrew#203)

commit 8b7ac26
Author: Zeanon <[email protected]>
Date:   Tue Apr 9 18:40:31 2024 +0200

    Fix for CANCEL_PRINT issues (KalicoCrew#205)

commit 5c43763
Author: B <[email protected]>
Date:   Sat Apr 6 13:35:22 2024 -0400

    HEATER_INTERRUPT command and INTERRUPT mutex (KalicoCrew#94)

    fix

    refactor with wait_while util

    cancel print too

    back to interrupt command

    fix gcode ref

    readme stuff

commit b6e2228
Author: Rogerio Goncalves <[email protected]>
Date:   Sat Apr 6 13:24:07 2024 -0400

    PR template (KalicoCrew#199)

commit 3a1a98b
Author: B <[email protected]>
Date:   Sat Apr 6 13:02:46 2024 -0400

    Danger Options interface rework + new logging flags (KalicoCrew#197)

    * switch danger options to a directly-imported singleton

    * no relative import

    * fix import again

    * add not loaded yet exception

commit 6b94dfe
Merge: ac005d9 8b18d6b
Author: Rogerio Goncalves <[email protected]>
Date:   Sat Apr 6 13:01:17 2024 -0400

    Merge branch 'master' into upstream_pr

commit 8b18d6b
Author: Ryan Ghosh <[email protected]>
Date:   Sat Apr 6 10:01:01 2024 -0700

    Add trad_rack module (KalicoCrew#184)

    * Add trad_rack module and related documentation

    * trad_rack: update to match Annex-Engineering/TradRack@97d7582

commit ac005d9
Merge: 9c40d07 d6b0a6a
Author: Rogerio Goncalves <[email protected]>
Date:   Sat Apr 6 12:40:47 2024 -0400

    Merge branch 'master' into upstream_pr

commit 9c40d07
Author: Bea Nance <[email protected]>
Date:   Sat Apr 6 12:29:02 2024 -0400

    accel to decel fix

commit d6b0a6a
Author: Zeanon <[email protected]>
Date:   Fri Apr 5 23:51:53 2024 +0200

    Fix small error for pid_profiles (KalicoCrew#196)

    I forgot to add one line...

commit 01c7bef
Author: Kamil Domański <[email protected]>
Date:   Fri Apr 5 23:43:43 2024 +0200

    klippy: remove a few unused variable assignments (#6504)

    Signed-off-by: Kamil Domański <[email protected]>

commit b029d04
Author: Viesturs Zariņš <[email protected]>
Date:   Thu Apr 4 22:46:30 2024 +0200

    manual_stepper: Add basic status. (#6527)

    Adding position and enabled in manual_stepper status. Enabled is already available through stepper_enable object. But this makes it more straightforward to access it.

    Signed-off-by: Viesturs Zarins <[email protected]>

commit 6f16e11
Author: Michael 'ASAP' Weinrich <[email protected]>
Date:   Thu Feb 15 20:17:08 2024 -0800

    linux: Don't use absolute paths for include

    Not all systems (i.e. Nix) repect the standard Linux filesystem hierarchy,
    instead relative paths should be used and allowing GCC to rely on it's
    builtin search paths.

    Signed-off-by: Michael 'ASAP' Weinrich <[email protected]>

commit 24c884e
Author: Michael 'ASAP' Weinrich <[email protected]>
Date:   Thu Feb 15 20:11:47 2024 -0800

    makefile: Replace CFLAGS -I with -iquote

    The -iquote tells GCC to only search that path when resolving a quoted
    "include" (vs <angle brackets>) which by convention imples a include from
    the projects own soruce tree. This prevents a conflict between Klippers
    "sched.h" and "gpio.h" and <linux/gpio.h> and glibc <sched.h>.

    Signed-off-by: Michael 'ASAP' Weinrich <[email protected]>

commit 75a40e8
Author: Robert Cambridge <[email protected]>
Date:   Fri Mar 29 18:35:16 2024 +0100

    stm32: fix support for USARTs on STM32G0B0

    Signed-off-by: Robert Cambridge <[email protected]>

commit 1816834
Author: Rogerio Goncalves <[email protected]>
Date:   Wed Apr 3 10:46:19 2024 +0100

    disable stm32f031 tests for now

commit cdd0456
Author: Rogerio Goncalves <[email protected]>
Date:   Wed Apr 3 10:23:30 2024 +0100

    reformat

commit b581d17
Author: Rogerio Goncalves <[email protected]>
Date:   Wed Apr 3 10:21:32 2024 +0100

    missing line

commit af714dc
Merge: b9654d6 5e28068
Author: Rogerio Goncalves <[email protected]>
Date:   Wed Apr 3 10:13:22 2024 +0100

    Merge upstream Klipper3d:klipper

commit 5e28068
Author: John Unland <[email protected]>
Date:   Tue Apr 2 20:08:35 2024 -0600

    makefile: fix warning about lto serial compilation (#6543)

    Signed-off-by: John Unland <[email protected]>

commit 67c1527
Author: FOG_Yamato <[email protected]>
Date:   Wed Apr 3 05:02:22 2024 +0300

    stm32: Add i2c3 bus to STM32H7 (#6541)

    Signed-off-by: Balanuta Simion <[email protected]>

commit 9e1cbdc
Author: Kevin O'Connor <[email protected]>
Date:   Thu Mar 21 22:10:27 2024 -0400

    virtual_sdcard: Fix handling of unicode characters on Python2

    Commit 600e89a fixed unicode handling on Python3, but broke Python2
    support.  Use an alternate implementation that should work for both
    Python3 and Python2.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 0aacbc3
Author: Kevin O'Connor <[email protected]>
Date:   Thu Mar 21 22:00:32 2024 -0400

    toolhead: Populate minimum_cruise_ratio to printer.configfile.settings

    The default minimum_cruise_ratio setting does not get populated to the
    printer.configfile.settings information due to the way the
    max_accel_to_decel backwards compatibility support was implemented.
    Slightly rework the config reading so that the default for
    minimum_cruise_ratio is populated there.

    Reported by @ReXT3D.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit bedec55
Author: Kevin O'Connor <[email protected]>
Date:   Wed Mar 20 20:02:27 2024 -0400

    motion_report: Don't negate step_distance on steppers with inverted dir pin

    When querying the stepper motion queue, the resulting "interval",
    "count", and "add" are already normalized to the correct direction.
    That is, the "count" field will be positive if moving in a positive
    axis direction and negative if moving in the reverse direction.  So,
    negating the step_distance field just complicates the readers.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 239f8e5
Author: Mathias Pihl <[email protected]>
Date:   Wed Apr 3 02:57:19 2024 +0200

    scripts: Mark install-ubuntu-22.04 as executable (#6505)

    Signed-off-by: Mathias Pihl <[email protected]>

commit e37b007
Author: TheParanoidEngineer <[email protected]>
Date:   Mon Mar 25 13:05:22 2024 -0400

    docs: Update Measuring_Resonances.md (#6515)

    Changed "libopenblas-base" to "libopenblas-dev"

    Signed-off-by: Philip Weber <[email protected]>

commit d904334
Author: Carl Richard Theodor Schneider <[email protected]>
Date:   Wed Mar 13 22:24:05 2024 +0100

    linux: Allow for more i2c buses

    Similar to commit df79893, this allows klipper to use up to
    /dev/i2c-14. Similar to before, this limit is arbitrary.

    This is required for some other SoCs, which have even
    more i2c buses available, e.g. the rk3399:

    $ ls -1 /dev/i2c-*
    /dev/i2c-0
    /dev/i2c-3
    /dev/i2c-7

    Signed-off-by: Carl Richard Theodor Schneider <[email protected]>

commit 40728e9
Author: Kevin O'Connor <[email protected]>
Date:   Fri Dec 15 18:04:17 2023 -0500

    motan: Support recording lis2dw and mpu9250 sensors from data_logger.py

    Signed-off-by: Kevin O'Connor <[email protected]>

commit de1cf21
Author: Kevin O'Connor <[email protected]>
Date:   Sun Jan 7 23:34:59 2024 -0500

    docs: Sort axis_twist_compensation in G-Codes.md

    Signed-off-by: Kevin O'Connor <[email protected]>

commit e6df93f
Author: Kamil Domański <[email protected]>
Date:   Wed Feb 21 00:23:57 2024 +0100

    tmc2240: add ADC voltage formatters

    Signed-off-by: Kamil Domański <[email protected]>

commit 235b75b
Author: Mad Beggar <[email protected]>
Date:   Tue Mar 19 16:16:42 2024 -0400

    hc32f460: Adding support for 100pin version of H32F460 (#6488)

    Signed-off-by: Guillaume Giraudon <[email protected]>

commit 78a15b6
Author: Markus Küffner <[email protected]>
Date:   Fri Mar 15 16:29:35 2024 +0100

    scripts: use greenlet version depending on python version

    Signed-off-by: Markus Küffner <[email protected]>

commit bfb71bc
Author: BIGTREETECH <[email protected]>
Date:   Fri Mar 15 22:12:05 2024 +0800

    stm32: Add i2c3_PC0_PC1 for stm32g0 (#6529)

    Signed-off-by: Alan.Ma from BigTreeTech <[email protected]>

commit 09a78c3
Author: Kevin O'Connor <[email protected]>
Date:   Thu Mar 7 19:32:28 2024 -0500

    buildcommands: Add Klipper app name and license to mcu data dictionary

    Add the Klipper name and license to the mcu data dictionary so that it
    can be found in the flash.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 0291a15
Author: Kevin O'Connor <[email protected]>
Date:   Tue Mar 5 21:45:16 2024 -0500

    configfile: Add support for reporting runtime_warnings via the API server

    Add a new runtime_warning() method that will add a 'runtime_warning'
    type message to the printer.configfile.warnings object.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit d99d1a8
Author: Kevin O'Connor <[email protected]>
Date:   Tue Mar 5 21:32:36 2024 -0500

    mcu: Write a warning to the log if an incorrect mcu frequency is detected

    Signed-off-by: Kevin O'Connor <[email protected]>

commit bb512ef
Author: Kevin O'Connor <[email protected]>
Date:   Tue Mar 5 20:50:09 2024 -0500

    heaters: Clarify reported stats after a shutdown

    The pid logic can continue after a shutdown, even though the pin
    commands sent to the mcu are ignored.  However, this behavior can
    result in confusing "stats" messages in the log.  Explicitly disable
    updates after a shutdown event so that the log statistics are more
    clear.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit bddefdd
Author: Kevin O'Connor <[email protected]>
Date:   Tue Mar 5 19:24:03 2024 -0500

    pid_calibrate: Fix PID_CALIBRATE command when used with heater_generic

    Make sure the SAVE_CONFIG command saves the calculated PID parameters
    to the correct config name.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 0105aa3
Author: Kevin O'Connor <[email protected]>
Date:   Sun Dec 3 18:50:44 2023 -0500

    toolhead: Replace max_accel_to_decel with minimum_cruise_ratio

    The user facing max_accel_to_decel setting is complicated and
    confusing.  Replace it with a new minimum_cruise_ratio parameter.
    Internally this user-facing parameter will calculate the existing
    low-level "accel_to_decel" mechanism.

    Signed-off-by: Kevin O'Connor <[email protected]>

commit 18de421
Author: Attila <[email protected]>
Date:   Sun Mar 10 15:48:48 2024 -0700

    stm32: Fix USART3 ALT pinout on STM32G0 (#6523)

    Signed-off-by: Attila Rakosi <[email protected]>

commit 71604b7
Author: Ulf D <[email protected]>
Date:   Fri Mar 8 17:49:29 2024 +0100

    config: "static_value" in [output_pin enable_pin] is deprecated (#6520)

    Signed-off-by: Ulf Dieckmann <[email protected]>
  • Loading branch information
Zeanon committed Apr 25, 2024
1 parent 9f7b2d1 commit 6f71898
Show file tree
Hide file tree
Showing 93 changed files with 5,648 additions and 480 deletions.
9 changes: 9 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
_Enter a good description of whats being changed and WHY

## Checklist

- [ ] pr title makes sense
- [ ] squashed to 1 commit
- [ ] added a test case if possible
- [ ] if new feature, added to the readme
- [ ] ci is happy and green
7 changes: 4 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,11 @@ dirs-y = src
cc-option=$(shell if test -z "`$(1) $(2) -S -o /dev/null -xc /dev/null 2>&1`" \
; then echo "$(2)"; else echo "$(3)"; fi ;)

CFLAGS := -I$(OUT) -Isrc -I$(OUT)board-generic/ -std=gnu11 -O2 -MD \
-Wall -Wold-style-definition $(call cc-option,$(CC),-Wtype-limits,) \
CFLAGS := -iquote $(OUT) -iquote src -iquote $(OUT)board-generic/ \
-std=gnu11 -O2 -MD -Wall \
-Wold-style-definition $(call cc-option,$(CC),-Wtype-limits,) \
-ffunction-sections -fdata-sections -fno-delete-null-pointer-checks
CFLAGS += -flto -fwhole-program -fno-use-linker-plugin -ggdb3
CFLAGS += -flto=auto -fwhole-program -fno-use-linker-plugin -ggdb3

OBJS_klipper.elf = $(patsubst %.c, $(OUT)src/%.o,$(src-y))
OBJS_klipper.elf += $(OUT)compile_time_request.o
Expand Down
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ If I want my printer to light itself on fire, I should be able to make my printe

- [gcode: expose math functions to gcode macros](https://github.com/DangerKlippers/danger-klipper/pull/173) ([klipper#4072](https://github.com/Klipper3d/klipper/pull/4072))

- [gcode: HEATER_INTERRUPT gcode command](https://github.com/DangerKlippers/danger-klipper/pull/94)

- [probe: dockable Probe](https://github.com/DangerKlippers/danger-klipper/pull/43) ([klipper#4328](https://github.com/Klipper3d/klipper/pull/4328))

- [probe: drop the first result](https://github.com/DangerKlippers/danger-klipper/pull/2) ([klipper#3397](https://github.com/Klipper3d/klipper/issues/3397))
Expand Down Expand Up @@ -88,6 +90,12 @@ If I want my printer to light itself on fire, I should be able to make my printe

- [filament_switch|motion_sensor: runout distance, smart and runout gcode](https://github.com/DangerKlippers/danger-klipper/pull/158)

- [z_tilt|qgl: custom threshold for probe_points_increasing check](https://github.com/DangerKlippers/danger-klipper/pull/189)

- [save_config: save without restarting the firmware](https://github.com/DangerKlippers/danger-klipper/pull/191)

- [configfile: recursive globs](https://github.com/DangerKlippers/danger-klipper/pull/200) / ([klipper#6375](https://github.com/Klipper3d/klipper/pull/6375))

- [temperature_fan: curve control algorithm](https://github.com/DangerKlippers/danger-klipper/pull/193)

If you're feeling adventurous, take a peek at the extra features in the bleeding-edge branch [feature documentation](docs/Bleeding_Edge.md)
Expand Down
1 change: 0 additions & 1 deletion config/printer-anycubic-4maxpro-2.0-2021.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,6 @@ restart_method: arduino
kinematics: cartesian
max_velocity: 150
max_accel: 3000
max_accel_to_decel: 1500
max_z_velocity: 7
max_z_accel: 50
square_corner_velocity: 5
Expand Down
2 changes: 1 addition & 1 deletion config/printer-anycubic-kobra-go-2022.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ cycle_time: 0.00005 #20kHz

[output_pin enable_pin]
pin: PB6
static_value: 1
value: 1
#This pin enables the bed, hotend, extruder fan, part fan.

[mcu]
Expand Down
188 changes: 188 additions & 0 deletions config/printer-artillery-sidewinder-x3-plus-2024.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,188 @@
# For the Artillery Sidewinder X3 Pro/Plus that came factory installed with V1.29 firmware, follow these steps.
# - Compile with the processor model STM32F401.
# - Select the 48KiB bootloader,
# - Select USB PA11/PA12 for USB communication interface.
# - Select USART2 PA3/PA2 for UART communication via the Wi-Fi Tx/Rx pins
# To set 48KiB bootloader, you need to make a change to make menuconfig Kconfig file
# Here is a link to a how-to video: https://youtu.be/dpc76zN7Dh0
# Rename klipper.bin to yuntu.bin
# Copy the file out/yuntu.bin to an SD card and then restart the printer with that SD card
#
# For models that did not come with V1.29 installed
# - Compile with the processor model STM32F401.
# - Select the NO BOOTLOADER
# - Select USB PA11/PA12 for USB communication interface.
# - Select USART2 PA3/PA2 for UART communication via the Wi-Fi Tx/Rx pins
# - quit, save, make
# - Connect your printer to a computer running Pronterface, Octoprint, Repetier, BedLeveler5000 (anything with Console capability)
# - Power on the machine and send M997 through console into Marlin, this will put the board into "DFU" mode
# - DO NOT TURN OFF THE PRINTER
# - Connect your Linux/Klipper device to the USB port
# - Run lsusb and verify that the STM32 DFU device is visible (Bus 001 Device 006: ID 0483:df11 STMicroelectronics STM Device in DFU Mode)
# - Run sudo make flash 0483:df11
# - Run lsusb again and there should be two devices:
# Bus 001 Device 007: ID 1d50:614e OpenMoko, Inc. stm32f401xc
# Bus 001 Device 003: ID 0cf3:e010 Qualcomm Atheros Communications stm32f401xc
# See docs/Config_Reference.md for a description of parameters.

[mcu]
serial: /dev/ttyACM0
restart_method: command

[printer]
kinematics: cartesian
max_velocity: 300
max_accel: 3000
max_z_velocity: 15
max_z_accel: 100
square_corner_velocity: 5

[led LED_Light]
white_pin: PC2
initial_white: 1.0

[neopixel hotend_neopixel]
pin: PD2
color_order: GRB
initial_RED: 1.0
initial_GREEN: 1.0
initial_BLUE: 1.0

[stepper_x]
step_pin: PA8
dir_pin: PC9
enable_pin: !PA15
microsteps: 16
rotation_distance: 40
endstop_pin: !PB9
position_min: 0
position_endstop: 0
position_max: 315
homing_speed: 50

[stepper_y]
step_pin: PC7
dir_pin: !PC6
enable_pin: !PC8
microsteps: 16
rotation_distance: 40
endstop_pin: !PB8
position_endstop: 0
position_max: 315
homing_speed: 50

[stepper_z]
step_pin: PB10
dir_pin: !PA4
enable_pin: !PC4
rotation_distance: 8
microsteps: 16
position_min: -1
position_max: 400
endstop_pin: probe:z_virtual_endstop # Use Z- as endstop
#homing_speed: 10.0

[extruder]
max_extrude_only_distance: 100.0
step_pin: PC11
dir_pin: !PC10
enable_pin: !PC12
microsteps: 64
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin: PA6
sensor_type: EPCOS 100K B57560G104F #Generic 3950
sensor_pin: PC5
min_extrude_temp: 170
min_temp: 0
max_temp: 300
# Calibrate E-Steps https://www.klipper3d.org/Rotation_Distance.html#calibrating-rotation_distance-on-extruders
rotation_distance: 17.75
# Calibrate PID: https://www.klipper3d.org/Config_checks.html#calibrate-pid-settings
# - Example: PID_CALIBRATE HEATER=extruder TARGET=200
control: pid
pid_kp: 30.356
pid_ki: 1.857
pid_kd: 124.081
# Calibrate PA: https://www.klipper3d.org/Pressure_Advance.html

[heater_bed]
heater_pin: PA7
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PC0
max_temp: 100
min_temp: 0
# Calibrate PID: https://www.klipper3d.org/Config_checks.html#calibrate-pid-settings
# - Example: PID_CALIBRATE HEATER=heater_bed TARGET=60
control: pid
pid_kp: 64.230
pid_ki: 0.723
pid_kd: 1425.905

[heater_fan hotend_fan]
pin: PB1
heater: extruder
heater_temp: 50.0

[fan]
pin: PB0

[temperature_fan Artillery_MCU]
sensor_type: temperature_mcu
pin: PA5
max_temp: 60.0
target_temp: 40.0
min_temp: 0
shutdown_speed: 0.0
kick_start_time: 0.5
off_below: 0.19
max_speed: 1.0
min_speed: 0.0
control: watermark

[filament_switch_sensor filament_sensor]
pause_on_runout: true
switch_pin: PC1

[probe]
pin: PC14
x_offset:45.2
y_offset:11.6
speed:5
lift_speed:15
z_offset: 2.350

[safe_z_home]
home_xy_position: 110, 145 # X, Y coordinate (e.g. 100, 100) where the Z homing should be
speed: 300.0
z_hop: 10
z_hop_speed: 15.0

[bed_mesh]
speed: 300
horizontal_move_z: 6
mesh_min: 46,15
mesh_max: 300,300
probe_count: 10, 10
fade_start: 1.0
fade_end: 0.0
algorithm: bicubic

[screws_tilt_adjust]
screw1: 120, 153
screw1_name: center reference
screw2: 7, 45
screw2_name: front left
screw3: 210, 45
screw3_name: front right
screw4: 227, 145
screw4_name: right center
screw5: 210, 245
screw5_name: rear right
screw6: 7, 245
screw6_name: rear left
screw7: 7, 145
screw7_name: left center
horizontal_move_z: 8
speed: 300
screw_thread: CW-M4
2 changes: 1 addition & 1 deletion config/printer-sovol-sv05-2022.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ restart_method: command
kinematics: cartesian
max_velocity: 300
max_accel: 1000
max_accel_to_decel: 1000
minimum_cruise_ratio: 0.0
max_z_velocity: 5
max_z_accel: 100

Expand Down
7 changes: 3 additions & 4 deletions docs/Bed_Mesh.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,9 @@ probe_count: 5, 3

- `mesh_max: 240, 198`\
_Required_\
The probed coordinate farthest farthest from the origin. This is not
necessarily the last point probed, as the probing process occurs in a
zig-zag fashion. As with `mesh_min`, this coordinate is relative to
the probe's location.
The probed coordinate farthest from the origin. This is not necessarily
the last point probed, as the probing process occurs in a zig-zag fashion.
As with `mesh_min`, this coordinate is relative to the probe's location.

- `probe_count: 5, 3`\
_Default Value: 3, 3_\
Expand Down
4 changes: 2 additions & 2 deletions docs/CANBUS.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ adapter. This is typically done by creating a new file named
allow-hotplug can0
iface can0 can static
bitrate 1000000
up ifconfig $IFACE txqueuelen 128
up ip link set $IFACE txqueuelen 128
```

## Terminating Resistors
Expand Down Expand Up @@ -113,7 +113,7 @@ Some important notes when using this mode:
allow-hotplug can0
iface can0 can static
bitrate 1000000
up ifconfig $IFACE txqueuelen 128
up ip link set $IFACE txqueuelen 128
```

* The "bridge mcu" is not actually on the CAN bus. Messages to and
Expand Down
50 changes: 50 additions & 0 deletions docs/CANBUS_Troubleshooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,56 @@ Reordered messages is a severe problem that must be fixed. It will
result in unstable behavior and can lead to confusing errors at any
part of a print.

## Use an appropriate txqueuelen setting

The Klipper code uses the Linux kernel to manage CAN bus traffic. By
default, the kernel will only queue 10 CAN transmit packets. It is
recommended to [configure the can0 device](CANBUS.md#host-hardware)
with a `txqueuelen 128` to increase that size.

If Klipper transmits a packet and Linux has filled all of its transmit
queue space then Linux will drop that packet and messages like the
following will appear in the Klipper log:
```
Got error -1 in can write: (105)No buffer space available
```
Klipper will automatically retransmit the lost messages as part of its
normal application level message retransmit system. Thus, this log
message is a warning and it does not indicate an unrecoverable error.

If a complete CAN bus failure occurs (such as a CAN wire break) then
Linux will not be able to transmit any messages on the CAN bus and it
is common to find the above message in the Klipper log. In this case,
the log message is a symptom of a larger problem (the inability to
transmit any messages) and is not directly related to Linux
`txqueuelen`.

One may check the current queue size by running the Linux command `ip
link show can0`. It should report a bunch of text including the
snippet `qlen 128`. If one sees something like `qlen 10` then it
indicates the CAN device has not been properly configured.

It is not recommended to use a `txqueuelen` significantly larger
than 128. A CAN bus running at a frequency of 1000000 will typically
take around 120us to transmit a CAN packet. Thus a queue of 128
packets is likely to take around 15-20ms to drain. A substantially
larger queue could cause excessive spikes in message round-trip-time
which could lead to unrecoverable errors. Said another way, Klipper's
application retransmit system is more robust if it does not have to
wait for Linux to drain an excessively large queue of possibly stale
data. This is analogous to the problem of
[bufferbloat](https://en.wikipedia.org/wiki/Bufferbloat) on internet
routers.

Under normal circumstances Klipper may utilize ~25 queue slots per
MCU - typically only utilizing more slots during retransmits.
(Specifically, the Klipper host may transmit up to 192 bytes to each
Klipper MCU before receiving an acknowledgment from that MCU.) If a
single CAN bus has 5 or more Klipper MCUs on it, then it might be
necessary to increase the `txqueuelen` above the recommended value
of 128. However, as above, care should be taken when selecting a new
value to avoid excessive round-trip-time latency.

## Obtaining candump logs

The CAN bus messages sent to and from the micro-controller are handled
Expand Down
14 changes: 14 additions & 0 deletions docs/Config_Changes.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,20 @@ All dates in this document are approximate.

## Changes

20240415: The `on_error_gcode` parameter in the `[virtual_sdcard]`
config section now has a default. If this parameter is not specified
it now defaults to `TURN_OFF_HEATERS`. If the previous behavior is
desired (take no default action on an error during a virtual_sdcard
print) then define `on_error_gcode` with an empty value.

20240313: The `max_accel_to_decel` parameter in the `[printer]` config
section has been deprecated. The `ACCEL_TO_DECEL` parameter of the
`SET_VELOCITY_LIMIT` command has been deprecated. The
`printer.toolhead.max_accel_to_decel` status has been removed. Use the
[minimum_cruise_ratio parameter](./Config_Reference.md#printer)
instead. The deprecated features will be removed in the near future,
and using them in the interim may result in subtly different behavior.

20240215: Several deprecated features have been removed. Using "NTC
100K beta 3950" as a thermistor name has been removed (deprecated on
20211110). The `SYNC_STEPPER_TO_EXTRUDER` and
Expand Down
Loading

0 comments on commit 6f71898

Please sign in to comment.