klipper/klippy/extras
Kevin O'Connor 03f69cd81a tmc: Query latest value during _init_registers()
The set_register() code may block, and it therefore may be possible
that the loop in _init_registers() could occur in parallel with other
updates.  That could result in a "OrderedDict mutated during
iteration" error.

Avoid the error by querying the latest value during each iteration of
the loop.

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2023-11-28 21:24:41 -05:00
..
display menu: Conditional display of common Control utils 2022-11-03 16:05:24 -04:00
__init__.py
ad5206.py
adc_scaled.py
adc_temperature.py klippy: Replace deprecated logger.warn with logger.warning (#6385) 2023-11-16 22:06:13 -05:00
adxl345.py adxl345: Apply correct scaling for X,Y and Z axes 2022-10-25 14:41:00 -04:00
aht10.py aht10: update comments and docs for AHT20/AHT21 support 2023-04-24 11:10:00 -04:00
angle.py tmc2240: initial implementation 2023-03-01 20:43:53 -05:00
axis_twist_compensation.py axis_twist_compensation: Add X twist compensation module (#6149) 2023-08-01 13:08:53 -04:00
bed_mesh.py bed_mesh: fix fade regression 2023-06-21 21:17:17 -04:00
bed_screws.py bed_screws: Reset on move error 2023-11-02 13:08:53 -04:00
bed_tilt.py
bltouch.py mcu: Return time of trigger from home_wait() 2021-08-17 22:01:23 -04:00
bme280.py bmp280: Add support for BMP180 sensor (#6370) 2023-11-16 22:27:44 -05:00
board_pins.py board_pins: Use config list helpers 2021-08-21 18:08:11 -04:00
bus.py i2c_software: Implementation of software i2c (#6141) 2023-06-07 20:55:46 -04:00
buttons.py button: Support half-stepping encoders 2021-10-11 11:29:53 -04:00
canbus_ids.py canbus_ids: Use 4 as the first nodeid to reduce id bitstuffing 2022-07-29 11:40:54 -04:00
controller_fan.py controller_fan: Use config.getlist() for heater and stepper config parameters 2021-08-21 18:08:11 -04:00
dac084S085.py dac084S085: SPI DAC DAC084S085 implementation (#5134) 2022-02-22 10:28:28 -05:00
delayed_gcode.py
delta_calibrate.py delta_calibrate: Fix Python3 error in DELTA_ANALYZE 2022-06-13 13:51:07 -04:00
display_status.py display_status: Implement SET_DISPLAY_TEXT command 2022-06-27 10:09:02 -04:00
dotstar.py dotstar: Update to use LEDHelper class 2022-03-31 13:08:12 -04:00
ds18b20.py ds18b20: fix string conversion error on startup (#5559) 2022-06-08 18:05:27 -04:00
duplicate_pin_override.py duplicate_pin_override: Use config.getlist() for pins config option 2021-08-21 18:08:11 -04:00
endstop_phase.py tmc2240: initial implementation 2023-03-01 20:43:53 -05:00
exclude_object.py exclude_object: Don't use gcmd.respond_error() (#6407) 2023-11-22 11:53:38 -05:00
extruder_stepper.py extruder_stepper: Support configuring pressure advance from config 2022-09-01 14:53:12 -04:00
fan.py fan: add enable_pin option (#5732) 2022-09-03 12:23:55 -04:00
fan_generic.py
filament_motion_sensor.py filament_motion_sensor: add get_status (#4281) 2021-05-11 13:17:22 -04:00
filament_switch_sensor.py
firmware_retraction.py gcode: Update gcode descriptions (#4335) 2021-06-02 10:45:27 -04:00
force_move.py kinematics: Convert to Python3 string encoding 2021-10-01 19:12:30 -04:00
gcode_arcs.py gcode_arcs: Allow either one of I, J, K to be default-zero on G2/G3 (#5939) 2022-12-14 12:06:11 -05:00
gcode_button.py gcode_button: Use config.getfloatlist() for analog_range config option 2021-08-21 18:08:11 -04:00
gcode_macro.py gcode_macro: Catch variable encoding errors 2023-04-19 12:22:20 -04:00
gcode_move.py gcode: Update gcode descriptions (#4335) 2021-06-02 10:45:27 -04:00
hall_filament_width_sensor.py hall_filament_width_sensor: fix range check error (#4113) 2021-03-27 12:53:40 -04:00
heater_bed.py
heater_fan.py heater_fan: Use config.getlist() for heater config option 2021-08-21 18:08:11 -04:00
heater_generic.py
heaters.py heaters: adds temperature monitors 2023-08-01 20:32:03 -04:00
homing.py homing: Fix bug in multi_complete() 2022-05-13 13:53:17 -04:00
homing_heaters.py homing_heaters: Use config.getlist() for heaters and steppers config options 2021-08-21 18:08:11 -04:00
homing_override.py
htu21d.py klippy: Replace deprecated logger.warn with logger.warning (#6385) 2023-11-16 22:06:13 -05:00
idle_timeout.py idle_timeout: exit the timer if the printer is shutdown 2021-10-29 18:39:47 -04:00
input_shaper.py Revert "toolhead: Use dict for step generation flush times. (#6303)" 2023-10-21 15:46:08 -04:00
led.py led: Remove has_white check from LEDHelper 2022-04-18 09:34:25 -04:00
lis2dw.py lis2dw12: Add support for lis2dw12 accelerometer 2023-08-21 14:26:46 -04:00
lm75.py lm75: round reported temps to 2 decimal places 2021-10-15 18:01:19 -04:00
manual_probe.py manual_probe: Add Z_OFFSET_APPLY_ENDSTOP for delta 2022-12-19 13:14:06 -05:00
manual_stepper.py kinematics: Convert to Python3 string encoding 2021-10-01 19:12:30 -04:00
mcp4018.py mcp4018: Add SET_DIGIPOT command to mcp4018 implementation (#5737) 2022-09-02 10:30:06 -04:00
mcp4451.py
mcp4728.py
motion_report.py motion_report: Ensure startstop_cb is called atomically 2022-02-21 22:22:14 -05:00
mpu9250.py sensor_mpu9250: Fix or improve reliability (#6170) 2023-04-19 12:34:22 -04:00
multi_pin.py multi_pin: Use config.getlist() for pins config option 2021-08-21 18:08:11 -04:00
neopixel.py neopixel: Simplify color_order parsing 2022-04-18 12:55:32 -04:00
output_pin.py output_pin: fix time difference calculation 2021-08-17 14:45:53 -04:00
palette2.py palette2: Fix errors with bad handling of NoneType in a few locations 2022-12-31 21:03:37 -05:00
pause_resume.py pause_resume: Do not clobber default state name by accident (#5156) 2022-01-16 13:00:24 -05:00
pca9533.py led: Remove has_white check from LEDHelper 2022-04-18 09:34:25 -04:00
pca9632.py pca9632: Fix color_order assignment 2022-04-18 11:07:05 -04:00
pid_calibrate.py pid_calibrate: Improve Python3 compatibility in debug file output 2022-03-29 20:37:03 -04:00
print_stats.py print_stats: add `SET_PRINT_STATS_INFO` G-Code for pass slicer variables to Klipper (#5726) 2022-10-05 15:02:28 -04:00
probe.py axis_twist_compensation: Add X twist compensation module (#6149) 2023-08-01 13:08:53 -04:00
pulse_counter.py pulse_counter: Use "clock" suffix instead of "time" in commands 2021-04-30 11:40:37 -04:00
pwm_tool.py pwm_tool: Add support for high-speed PWM pin updates 2023-11-16 22:07:15 -05:00
quad_gantry_level.py quad_gantry_level: Use config.getlists() for gantry_corners config option 2021-08-21 18:08:11 -04:00
query_adc.py
query_endstops.py
replicape.py replicape: Only call note_pwm_enable() in main thread 2023-01-17 18:39:47 -05:00
resonance_tester.py resonance_tester: Apply input shaper params on SHAPER_CALIBRATE 2023-05-25 12:52:29 -04:00
respond.py respond: No forced spaces (#5152) 2022-06-30 13:56:35 -04:00
safe_z_home.py safe_z_home: Fix final z hop to use relative z coordinates (#5879) 2022-11-22 18:55:43 -05:00
samd_sercom.py samd_sercom: Specify the sercom explicitly in a config option 2021-07-04 09:48:45 -04:00
save_variables.py save_variables: Verify filename path is writeable at startup 2022-12-11 21:07:47 -05:00
screws_tilt_adjust.py screws_tilt_adjust: add max_deviation to report status 2023-08-01 12:14:15 -04:00
sdcard_loop.py loop_sdcard: Add loopable SD card file sections 2021-05-26 11:57:57 -04:00
servo.py
shaper_calibrate.py resonance_tester: Apply input shaper params on SHAPER_CALIBRATE 2023-05-25 12:52:29 -04:00
shaper_defs.py input_shaper: Define input shapers in a single place in Python code 2021-10-26 16:14:50 -04:00
skew_correction.py skew_corrections: Fix typo (gmcd vs gcmd) 2022-03-17 20:52:10 -04:00
smart_effector.py smart_effector: Initial support of programmable SmartEffector 2022-04-09 19:04:57 -04:00
spi_temperature.py klippy: Replace deprecated logger.warn with logger.warning (#6385) 2023-11-16 22:06:13 -05:00
static_digital_output.py static_digital_output: Use config.getlist() for pins config option 2021-08-21 18:08:11 -04:00
statistics.py statistics: Improve Python3 compatibility 2021-12-15 11:27:08 -05:00
stepper_enable.py stepper_enable: report status 2023-02-13 12:16:17 -05:00
sx1509.py
temperature_combined.py temperature_combined: A class that can combine several other temperature sensors (#6230) 2023-08-01 13:18:03 -04:00
temperature_fan.py temperature_fan: Fix divide by zero error when pid_Ki is zero 2022-04-07 12:11:54 -04:00
temperature_host.py temperature_host: Remove support for deprecated rpi_temperature alias 2021-11-02 12:45:11 -04:00
temperature_mcu.py stm32: add STM32H723 support 2022-12-02 13:55:23 -05:00
temperature_sensor.py temperature_sensor: round reported temps to 2 decimal places 2021-10-15 18:01:19 -04:00
temperature_sensors.cfg temperature_combined: A class that can combine several other temperature sensors (#6230) 2023-08-01 13:18:03 -04:00
thermistor.py klippy: Replace deprecated logger.warn with logger.warning (#6385) 2023-11-16 22:06:13 -05:00
tmc.py tmc: Query latest value during _init_registers() 2023-11-28 21:24:41 -05:00
tmc2130.py tmc: SET_TMC_FIELD VELOCITY 2023-03-20 10:58:25 -04:00
tmc2208.py tmc: Configurable `multistep_filt` 2023-06-16 16:38:42 -04:00
tmc2209.py tmc: Configurable `multistep_filt` 2023-06-16 16:38:42 -04:00
tmc2240.py tmc2240: Adding UART interface support to tmc2240 (#6305) 2023-09-10 14:41:59 -04:00
tmc2660.py tmc: SET_TMC_FIELD VELOCITY 2023-03-20 10:58:25 -04:00
tmc5160.py tmc5160: Increase maximum current error check 2023-11-20 18:15:46 -05:00
tmc_uart.py tmc: SET_TMC_FIELD VELOCITY 2023-03-20 10:58:25 -04:00
tsl1401cl_filament_width_sensor.py
tuning_tower.py tuning_tower: add is_active() method 2022-06-03 14:12:04 -04:00
verify_heater.py
virtual_sdcard.py virtual_sdcard: reset file position and size to integer zero 2023-06-23 20:33:42 -04:00
z_thermal_adjust.py z_thermal_adjust: get_temp hotfix 2022-09-30 11:19:01 -04:00
z_tilt.py z_tilt: Improve python3 compatibility 2023-01-17 18:11:57 -05:00