4

My Setup

  • Ender 3 Pro
  • Creality Board v4.2.7
  • Klipper Firmware (worked great with the stock Creality Bowden hotend and Creality Direct Drive Extruder)
  • Brand new Creality Sprite Pro hotend.

Wiring

  • I have verified that the hotend heater cartridge is wired properly. In fact, if I reverse the polarity of the hotend heater, the LCD blinks on and off as if the board is continuously rebooting.

Problem

The hotend immediately starts heating at 100% (24 V DC) on startup without any command to do so.

What I've tried

  • I've unplugged the hot end heater (on the Sprite Pro head) and I see 24 V DC at the board nozzle output.
  • If I unplug the ribbon cable on the sprite end, I see ~ 300 mV at the nozzle output.

Question

How do I stop the hot end from heating up on startup?

Klipper printer.cfg:

[include moonraker_obico_macros.cfg]
# This file contains pin mappings for the Creality "v4.2.7" board. To
# use this config, during "make menuconfig" select the STM32F103 with
# a "28KiB bootloader" and serial (on USART1 PA10/PA9) communication.

If you prefer a direct serial connection, in "make menuconfig"

select "Enable extra low-level configuration options" and select

serial (on USART3 PB11/PB10), which is broken out on the 10 pin IDC

cable used for the LCD module as follows:

3: Tx, 4: Rx, 9: GND, 10: VCC

Flash this firmware by copying "out/klipper.bin" to a SD card and

turning on the printer with the card inserted. The firmware

filename must end in ".bin" and must not match the last filename

that was flashed.

See docs/Config_Reference.md for a description of parameters.

[skew_correction]

[filament_switch_sensor runout_sensor]

pause_on_runout: True

switch_pin: PA4

[stepper_x] step_pin: PB9 dir_pin: PC2 enable_pin: !PC3 microsteps: 16 rotation_distance: 39.83 endstop_pin: ^PA5 position_endstop: 0 position_max: 235 homing_speed: 50

[stepper_y] step_pin: PB7 dir_pin: PB8 enable_pin: !PC3 microsteps: 16 rotation_distance: 39.78 endstop_pin: ^PA6 position_endstop: 0 position_max: 235 homing_speed: 50

[stepper_z] step_pin: PB5 dir_pin: !PB6 enable_pin: !PC3 microsteps: 16 rotation_distance: 8

position_endstop: 0.0 # disable to use BLTouch

endstop_pin: ^PA7 # disable to use BLTouch

endstop_pin: probe:z_virtual_endstop # enable to use BLTouch position_min: -5 # enable to use BLTouch position_max: 250

[safe_z_home] # enable for BLTouch home_xy_position: 157.5,120.5 speed: 100 z_hop: 10 z_hop_speed: 5

[bltouch] # enable for BLTouch - fast-mode sensor_pin: PA7 control_pin: PB0 pin_up_touch_mode_reports_triggered: True probe_with_touch_mode: True

x_offset: -44 # modify as needed for bltouch location

y_offset: -6 # modify as needed for bltouch location

x_offset: -28 # For the sprite y_offset: -40 # For the sprite #z_offset: 0.0 # modify as needed for bltouch or run PROBE_CALIBRATE speed: 10 sample_retract_dist: 5.0 # Can be set lower, example 2.5 depending on height of bltouch from bed lift_speed: 40 samples_tolerance_retries: 3 speed: 10 samples: 1

[bed_mesh] speed: 80 horizontal_move_z: 5 mesh_min: 18,18 mesh_max: 175,202 probe_count: 5,5 algorithm: bicubic

manual Bed adjustment via BED_SCREWS_ADJUST

[bed_screws] screw1: 72.5, 41.5 screw1_name: front left screw screw2: 198.5,35.5 screw2_name: front right screw screw3: 198.5,205.5 screw3_name: rear right screw screw4: 28.5,205.5 screw4_name: rear left screw horizontal_move_z: 10 speed: 50

[screws_tilt_adjust] screw1: 72.5, 41.5 screw1_name: front left screw screw2: 220,41.5 screw2_name: front right screw screw3: 220,212.5 screw3_name: rear right screw screw4: 72.5,212.5 screw4_name: rear left screw horizontal_move_z: 10 speed: 50 screw_thread: CW-M4

[input_shaper] shaper_freq_x: 100 shaper_freq_y: 100 shaper_type: mzv

[gcode_macro G29] gcode: G28 BED_MESH_CALIBRATE G0 X0 Y0 Z10 F6000 BED_MESH_PROFILE save=default SAVE_CONFIG

[extruder] max_extrude_only_distance: 100.0 step_pin: PB3 dir_pin: PB4 enable_pin: !PC3 microsteps: 16 rotation_distance: 33.500 nozzle_diameter: 0.400 filament_diameter: 1.750 heater_pin: PA1 sensor_type: EPCOS 100K B57560G104F sensor_pin: PC5 control: pid pid_Kp: 21.527 pid_Ki: 1.063 pid_Kd: 108.982 min_temp: 0 max_temp: 250

[heater_bed] heater_pin: PA2 sensor_type: EPCOS 100K B57560G104F sensor_pin: PC4 control: pid pid_Kp: 54.027 pid_Ki: 0.770 pid_Kd: 948.182 min_temp: 0 max_temp: 130

#[fan] #pin: PA0

[fan] pin: PA0

[mcu] serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method: command

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

[display] lcd_type: st7920 cs_pin: PB12 sclk_pin: PB13 sid_pin: PB15 encoder_pins: ^PB14, ^PB10 click_pin: ^!PB2

[gcode_macro G29] gcode: G28 G1 Z10 F600 BED_MESH_CLEAR BED_MESH_CALIBRATE BED_MESH_PROFILE SAVE=default SAVE_CONFIG

[temperature_sensor raspberry_pi] sensor_type: temperature_host min_temp: 10 max_temp: 100

[temperature_sensor mcu_temp] sensor_type: temperature_mcu min_temp: 0 max_temp: 100

[board_pins] aliases: EXP1_1=PC6,EXP1_3=PB10,EXP1_5=PB14,EXP1_7=PB12,EXP1_9=<GND>, EXP1_2=PB2,EXP1_4=PB11,EXP1_6=PB13,EXP1_8=PB15,EXP1_10=<5V>, PROBE_IN=PB0,PROBE_OUT=PB1,FIL_RUNOUT=PC6

[exclude_object]

[include mainsail.cfg] [include timelapse.cfg]

[gcode_macro do_the_mesh] gcode: BED_MESH_PROFILE LOAD="default" SKEW_PROFILE LOAD=my_skew_profile

description: Either load the default mesh or perform a mesh load operation.

## <---------------------- SAVE_CONFIG ----------------------> ## DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. ## ## [bltouch] ## z_offset = 1.420 ## ## [bed_mesh default] ## version = 1 ## points = ## 0.005000, -0.022500, -0.015000, -0.015000, -0.017500 ## 0.032500, -0.022500, -0.015000, -0.042500, -0.047500 ## 0.105000, 0.022500, 0.020000, -0.045000, -0.077500 ## 0.140000, 0.080000, 0.055000, 0.015000, 0.022500 ## 0.225000, 0.182500, 0.147500, 0.077500, 0.067500 ## x_count = 5 ## y_count = 5 ## mesh_x_pps = 2 ## mesh_y_pps = 2 ## algo = bicubic ## tension = 0.2 ## min_x = 18.0 ## max_x = 175.0 ## min_y = 18.0 ## max_y = 202.0 ## ## [skew_correction my_skew_profile] ## xy_skew = -0.0008053242270892168 ## xz_skew = 0.0 #*# yz_skew = 0.0 ```

agarza
  • 1,734
  • 2
  • 16
  • 33
RQDQ
  • 171
  • 6

1 Answers1

3

After much gnashing of teeth, I determined that the problem revolved around the Z-stop wire from the 40 conductor cable being connected.

The Sprite Pro is equipped with a 5-pin BL Touch connector. For whatever reason, having the 2-pin connector plugged into the Z-stop port causes the nozzle heater output to peg at 24 V DC.

Updated printer.cfg

[include moonraker_obico_macros.cfg]
# This file contains pin mappings for the Creality "v4.2.7" board. To
# use this config, during "make menuconfig" select the STM32F103 with
# a "28KiB bootloader" and serial (on USART1 PA10/PA9) communication.

If you prefer a direct serial connection, in "make menuconfig"

select "Enable extra low-level configuration options" and select

serial (on USART3 PB11/PB10), which is broken out on the 10 pin IDC

cable used for the LCD module as follows:

3: Tx, 4: Rx, 9: GND, 10: VCC

Flash this firmware by copying "out/klipper.bin" to a SD card and

turning on the printer with the card inserted. The firmware

filename must end in ".bin" and must not match the last filename

that was flashed.

See docs/Config_Reference.md for a description of parameters.

[skew_correction]

[filament_switch_sensor runout_sensor]

pause_on_runout: True

switch_pin: PA4

[stepper_x] step_pin: PB9 dir_pin: PC2 enable_pin: !PC3 microsteps: 16 rotation_distance: 39.83 endstop_pin: ^PA5 position_endstop: 0 position_max: 235 homing_speed: 50

[stepper_y] step_pin: PB7 dir_pin: PB8 enable_pin: !PC3 microsteps: 16 rotation_distance: 39.78 endstop_pin: ^PA6 position_endstop: 0 position_max: 235 homing_speed: 50

[stepper_z] step_pin: PB5 dir_pin: !PB6 enable_pin: !PC3 microsteps: 16 rotation_distance: 8

position_endstop: 0.0 # disable to use BLTouch

endstop_pin: ^PA7 # disable to use BLTouch

endstop_pin: probe:z_virtual_endstop # enable to use BLTouch position_min: -5 # enable to use BLTouch position_max: 250

[safe_z_home] # enable for BLTouch

home_xy_position: 157.5,120.5

home_xy_position: 139.5,169 speed: 100 z_hop: 10 z_hop_speed: 5

[bltouch] # enable for BLTouch - fast-mode

sensor_pin: PA7 # 3 pin connector plus separate z endstop

sensor_pin: ^PB1 # 5 pin connector: https://www.reddit.com/r/ender3v2/comments/pw1eyq/printercfg_with_bltouch_for_klipper/ control_pin: PB0 pin_up_touch_mode_reports_triggered: True probe_with_touch_mode: True

x_offset: -44 # modify as needed for bltouch location

y_offset: -6 # modify as needed for bltouch location

x_offset: -30 # For the sprite y_offset: -41.5 # For the sprite #z_offset: 0.0 # modify as needed for bltouch or run PROBE_CALIBRATE speed: 10 sample_retract_dist: 5.0 # Can be set lower, example 2.5 depending on height of bltouch from bed lift_speed: 40 samples_tolerance_retries: 3 speed: 10 samples: 1

[bed_mesh] speed: 80 horizontal_move_z: 5 mesh_min: 18,18 mesh_max: 175,202 probe_count: 5,5 algorithm: bicubic

manual Bed adjustment via BED_SCREWS_ADJUST

[bed_screws] screw1: 72.5, 41.5 screw1_name: front left screw screw2: 198.5,35.5 screw2_name: front right screw screw3: 198.5,205.5 screw3_name: rear right screw screw4: 28.5,205.5 screw4_name: rear left screw horizontal_move_z: 10 speed: 50

[screws_tilt_adjust] screw1: 72.5, 41.5 screw1_name: front left screw screw2: 220,41.5 screw2_name: front right screw screw3: 220,212.5 screw3_name: rear right screw screw4: 72.5,212.5 screw4_name: rear left screw horizontal_move_z: 10 speed: 50 screw_thread: CW-M4

[input_shaper] shaper_freq_x: 100 shaper_freq_y: 100 shaper_type: mzv

[gcode_macro G29] gcode: G28 BED_MESH_CALIBRATE G0 X0 Y0 Z10 F6000 BED_MESH_PROFILE save=default SAVE_CONFIG

[extruder] max_extrude_only_distance: 100.0 step_pin: PB3 dir_pin: PB4 enable_pin: !PC3 microsteps: 16

rotation_distance: 33.500 # for stock extruder

rotation_distance: 7.53 # for sprite pro nozzle_diameter: 0.400 filament_diameter: 1.750 heater_pin: PA1 sensor_type: EPCOS 100K B57560G104F sensor_pin: PC5 #control: pid #pid_Kp: 21.527 #pid_Ki: 1.063 #pid_Kd: 108.982 min_temp: 0 max_temp: 250

[heater_bed] heater_pin: PA2 sensor_type: EPCOS 100K B57560G104F sensor_pin: PC4 control: pid pid_Kp: 54.027 pid_Ki: 0.770 pid_Kd: 948.182 min_temp: 0 max_temp: 130

#[fan] #pin: PA0

[fan] pin: PA0

[mcu] serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 restart_method: command

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

[display] lcd_type: st7920 cs_pin: PB12 sclk_pin: PB13 sid_pin: PB15 encoder_pins: ^PB14, ^PB10 click_pin: ^!PB2

[gcode_macro G29] gcode: G28 G1 Z10 F600 BED_MESH_CLEAR BED_MESH_CALIBRATE BED_MESH_PROFILE SAVE=default SAVE_CONFIG

[temperature_sensor raspberry_pi] sensor_type: temperature_host min_temp: 10 max_temp: 100

[temperature_sensor mcu_temp] sensor_type: temperature_mcu min_temp: 0 max_temp: 100

[board_pins] aliases: EXP1_1=PC6,EXP1_3=PB10,EXP1_5=PB14,EXP1_7=PB12,EXP1_9=<GND>, EXP1_2=PB2,EXP1_4=PB11,EXP1_6=PB13,EXP1_8=PB15,EXP1_10=<5V>, PROBE_IN=PB0,PROBE_OUT=PB1,FIL_RUNOUT=PC6

[exclude_object]

[include mainsail.cfg] [include timelapse.cfg]

[gcode_macro do_the_mesh] gcode: BED_MESH_PROFILE LOAD="default" SKEW_PROFILE LOAD=my_skew_profile

description: Either load the default mesh or perform a mesh load operation.

## <---------------------- SAVE_CONFIG ----------------------> ## DO NOT EDIT THIS BLOCK OR BELOW. The contents are auto-generated. ## ## [bltouch] ## z_offset = 4.350 ## ## [bed_mesh default] ## version = 1 ## points = ## 0.005000, -0.022500, -0.015000, -0.015000, -0.017500 ## 0.032500, -0.022500, -0.015000, -0.042500, -0.047500 ## 0.105000, 0.022500, 0.020000, -0.045000, -0.077500 ## 0.140000, 0.080000, 0.055000, 0.015000, 0.022500 ## 0.225000, 0.182500, 0.147500, 0.077500, 0.067500 ## x_count = 5 ## y_count = 5 ## mesh_x_pps = 2 ## mesh_y_pps = 2 ## algo = bicubic ## tension = 0.2 ## min_x = 18.0 ## max_x = 175.0 ## min_y = 18.0 ## max_y = 202.0 ## ## [skew_correction my_skew_profile] ## xy_skew = -0.0008053242270892168 ## xz_skew = 0.0 ## yz_skew = 0.0 ## ## [extruder] ## control = pid ## pid_kp = 19.488 ## pid_ki = 1.101 #*# pid_kd = 86.236 ```

agarza
  • 1,734
  • 2
  • 16
  • 33
RQDQ
  • 171
  • 6