aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* sht3x: reads should be retried with at least 0.5s pauseTimofey Titovets2025-07-112-3/+17
| | | | | | | | | | | | | SHT3x would return a read NACK on host retries. When the MCU receives the I2C CMD, it reads out data. SHT3x clears the data buffer. The MCU fails to deliver a response to the host. The host retries, the device returns NACK, then the MCU goes into the shutdown state. Make sure there is at least 0.5s between retries. Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* mcu: allow disable send retriesTimofey Titovets2025-07-112-8/+15
| | | | Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* stm32: f0 do not send empty write on readTimofey Titovets2025-07-091-9/+11
| | | | Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* stm32: f0 make i2c distinguish I2C NACKsTimofey Titovets2025-07-091-1/+11
| | | | | | | | | | Some devices can return a read NACK on host retries. When the MCU receives the I2C CMD, reads out data, but fails to deliver a response to the host. The host retries, the device returns NACK, and the MCU goes into the shutdown state. Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* ads1x1x: Rename local 'config' variable to pcfgKevin O'Connor2025-07-081-22/+22
| | | | | | | Avoid using the name "config" as a local register storage variable as it can be confused with the common "config" configfile reference. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* ads1x1x: Revert incorrect removal of assignment to self.configKevin O'Connor2025-07-081-0/+1
| | | | | | | | Commit d120a313b incorrectly removed an assignment to self.config - in this instance the reference was to a local variable not related to the global configfile storage. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* load_cell_probe: Fix warnings on avr buildsKevin O'Connor2025-06-181-2/+2
| | | | | | | On AVR, integers are 16bit, so be sure to promote math to 32bit where needed. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* stm32: Adding more hardware pwm capable pins for STM32Hx series chips (#6965)jimmyjon7112025-06-181-0/+22
| | | Signed-off-by: Jim Madill <jcmadill1@gmail.com>
* sos_filter: Fix validate_section_index() checkKevin O'Connor2025-06-111-2/+3
| | | | | | A section_idx equal to max_sections is also invalid. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* ar100: Convert to or1k-elf toolchainKevin O'Connor2025-06-083-12/+10
| | | | | | | | | The more.musl.cc site is blocking downloads from all github actions, which makes it difficult to use that site for the ar100 cross build toolchain. Convert to the openrisc or1k-elf toolchain as a replacement. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* docs: Fix typo in Benchmarks.mdKevin O'Connor2025-06-081-1/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* input_shaper: fix printer obj referenceTimofey Titovets2025-06-061-1/+1
| | | Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* docs: Note 'config' object shouldn't be accessed after initial loadKevin O'Connor2025-06-044-4/+6
| | | | | | | | | | Update Code_Overview.md to note that the config object should not be stored after the "config loading phase". Remove a few inadvertent cases where a 'config' object was stored in module member variables. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* input_shaper: Track kinematics updates by dual_carriageDmitry Butyugin2025-06-045-38/+95
| | | | Signed-off-by: Dmitry Butyugin <dmbutyugin@google.com>
* rp2040: Prefer larger postdiv1 on rp2040 chipsKevin O'Connor2025-06-021-2/+2
| | | | | | | The rp2040 uses a pll vco divider of 6. Prefer setting postdiv1=6 and postdiv2=1 (instead of the previous postdiv1=3 and postdiv2=2). Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* klippy-requirements: Update setuptools revision to 78.1.1Kevin O'Connor2025-06-021-1/+1
| | | | | | | A security vulnerability was found in setuptools - increase package dependency to fixed version. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* htu21: fix crash on unknown dev idTimofey Titovets2025-06-021-16/+22
| | | | Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* stm32: Add comments on PLL frequency requirements to clock setup codeKevin O'Connor2025-06-029-0/+22
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* docs: Update benchmarks with stm32g431 chipKevin O'Connor2025-06-022-0/+20
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* stm32: Run stm32g431 at 170MhzKevin O'Connor2025-05-313-5/+8
| | | | | | The chip supports 170Mhz, so no need to run at 150Mhz. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* print_stats: Fix for filament statistics bug in print_stats.py for ↵Ingo Donasch2025-05-311-0/+5
| | | | | | | toolchangers (#6946) added extruder:activate_extruder event hook to print_stats.py to update self.last_epos Signed-off-by: Ingo Donasch <ingo@donasch.net>
* docs: Update CAN bus command rate benchmarksKevin O'Connor2025-05-311-7/+12
| | | | | | | | | Add a benchmark for the rp2350 device when running via CAN bus. Remove the old stm32f042 CAN bus benchmark as that test predates a number of importnat CAN bus code changes and is likely no longer accurate. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* stm32: Fix spi overflow issue on stm32h7Kevin O'Connor2025-05-301-8/+6
| | | | | | | | Completely filling the spi transmit fifo could lead to a situation where the rx fifo overflows. Make sure not to write past the rx fifo size. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* rp2040: Fix spi overflow issueKevin O'Connor2025-05-301-4/+9
| | | | | | | | | | | Completely filling the spi transmit fifo could lead to a situation where the rx fifo overflows. Make sure not to write past the rx fifo size. Also, be sure to wait for the transmission to fully complete before exiting spi_transfer(). Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* rp2040: spi - enable fifoTimofey Titovets2025-05-301-4/+8
| | | | Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* stm32: Support using CANBUS on PB5/PB6 on stm32h7 chipsKevin O'Connor2025-05-302-2/+6
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* stm32: Simplify Kconfig HAVE_STM32_CANBUS checksKevin O'Connor2025-05-301-7/+7
| | | | | | | | | Avoid unnecessary (HAVE_STM32_CANBUS && MACH_STM32xx) checks in Kconfig. The HAVE_STM32_CANBUS is a helper symbol for all the chips that support canbus, there's no need to mix it with a check for a chip that is already known to have canbus. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* sos_filter: Improve error checking on section_idxKevin O'Connor2025-05-292-6/+14
| | | | | | | | | | Validate host provided index prior to accessing memory using that index. Also, consistently use a uint8_t for max_sections (to account for integer overflow issues). Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* load_cell_probe: Avoid peeking directly at config.section member variableKevin O'Connor2025-05-291-1/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* docs: Load Cell Probe DocumentationGareth Farrington2025-05-295-12/+502
| | | | | | Add documentation updates for Homing & Probing with load cell probe Signed-off-by: Gareth Farrington <gareth@waves.ky>
* filter_workbench: Add Filter WorkbenchGareth Farrington2025-05-291-0/+517
| | | | | | Add a filter workbench Jupiter notebook to help printer developers tune filters based on probing data Signed-off-by: Gareth Farrington <gareth@waves.ky>
* load_cell_probe: Create LoadCellProbeGareth Farrington2025-05-291-0/+658
| | | | | | Initial setup of Load Cell Probing. This implementation supports triggering from the Load Cell Probe on the MCU. It also supports, optiopnal, filtering of the force signal by sos filter to eliminate drift caused by bowden tubes or other mechanical causes. Signed-off-by: Gareth Farrington <gareth@waves.ky>
* probe: Create ProbeVirtualEndstopDeprecationGareth Farrington2025-05-291-0/+11
| | | | | | As probes stop supporting `probe:z_virtual_endstop` this class will give users a polite and specific configuration error. Signed-off-by: Gareth Farrington <gareth@waves.ky>
* sensor_hx71x: Update Sensors to report to load_cell_probeGareth Farrington2025-05-294-0/+45
| | | | Signed-off-by: Gareth Farrington <gareth@waves.ky>
* load_cell_probe: Create load_cell_probe MCU objectGareth Farrington2025-05-294-1/+314
| | | | | | Implement MCU features that enable using an adc to stop an axis Signed-off-by: Gareth Farrington <gareth@waves.ky>
* sos_filter: Second Order Sections MCU FilterGareth Farrington2025-05-295-0/+407
| | | | | | | | | | This is an implementation of the SOS fliltering algorithm that runs on the MCU. The filter opperates on data in fixed point format to avoid use of the FPU as klipper does not support FPU usage. This host object handles duties of initalizing and resetting the filter so client dont have to declare their own commands for these opperations. Clients can select how many integer bits they want to use for both the filter coefficients and the filters output value. An arbitrary number of filter sections can be configured. Filters can be designed on the fly with the SciPy library or loaded from another source. Signed-off-by: Gareth Farrington <gareth@waves.ky>
* lis2dw: if spi is used - disable i2cTimofey Titovets2025-05-261-0/+3
| | | | Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* stm32: h7 spi - add a delay on SCK polarity changeTimofey Titovets2025-05-261-2/+9
| | | | Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* spi_software: add a delay on mode changeTimofey Titovets2025-05-261-5/+8
| | | | Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* rp2040: add a delay on SCK polarity changeTimofey Titovets2025-05-261-0/+7
| | | | Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* dual_carriage: Fixed input shaper stepper kinematics initializationDmitry Butyugin2025-05-222-3/+13
| | | | Signed-off-by: Dmitry Butyugin <dmbutyugin@google.com>
* docs: Remove SHAPER_CALIBRATE and usb-to-canbus bridge warning in CANBUS.mdKevin O'Connor2025-05-191-5/+0
| | | | | | | | There have been several optimization to the usb to canbus bridge code since that statement and it is likely many setups can run a SHAPER_CALIBRATE with all activity on a single 1mbit canbus. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* stm32: Allow stm32g4 chips to select a bootloaderKevin O'Connor2025-05-191-1/+1
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* docs: Update Installation.md - Flash loop protection (#6935)JamesH19782025-05-191-0/+19
| | | | | Added a paragraph about flash loop protection on some motherboards. It has been noted that not all people know about the need to change the bin filename on some stock boards or other methods that may hinder progress. Signed-off-by: James Hartley <james@hartleyns.com>
* stm32: spi enable fifo if supported (#6936)Timofey Titovets2025-05-191-7/+21
| | | | Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com> Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* stm32: H7 spi enable use of fifoTimofey Titovets2025-05-191-4/+8
| | | | Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
* stm32: Avoid read-modify-write register access in stm32h7_spi.cKevin O'Connor2025-05-161-20/+16
| | | | Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* docs: Fix index.md linksKevin O'Connor2025-05-161-7/+5
| | | | | | | Use relative links in index.md and correct the location of the COPYING file. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
* docs: BED_MESH_CALIBRATE makes a mesh that is immediately available. (#6919)Rowland2025-05-142-2/+9
| | | | | The docs aren't particularly clear that if you generate a mesh in our start g-code, you can just use it without additional commands. This is causing issues with support on r/klippers Signed-off-by: Rowland Straylight <rowlandstraylight@gmail.com>
* resonance_tester: Fix typoKevin O'Connor2025-05-131-1/+1
| | | | | | Fix typo introduced in 307c03e48. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>