Creatbot ver 9.2.3 config

I have an old Creatbot DX Plus (9.1.1 board) and managed to get klipper working.
Below is the printer.cfg file
It’s still a work in progress, but I can print things.
Beware that the Macros are from another printer. Test before use

I still need to do the following:

# This file contains common pin mappings for RUMBA boards.  To use
# this config, the firmware should be compiled for the AVR atmega2560.

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

[include fluidd.cfg]
[include mainsail.cfg] 

[stepper_x]
step_pin: PH0
dir_pin: !PH1
enable_pin: !PL1
microsteps: 16
rotation_distance: 40.64
endstop_pin: !PC0
#endstop_pin: ^PC0
#endstop_pin: ^PC1
position_endstop: 0
position_max: 305
homing_speed: 40

[stepper_y]
step_pin: PF0
dir_pin: PL2
enable_pin: !PF1
microsteps: 16
rotation_distance: 40.558
endstop_pin: !PC2
#endstop_pin: ^PC3
position_endstop: 0
position_max: 255
homing_speed: 40

[stepper_z]
step_pin: PF3
dir_pin: !PF2
enable_pin: !PK0
microsteps: 16
rotation_distance: 4
endstop_pin: !PC4
#endstop_pin: ^PC5
position_endstop: 0.5
position_max: 500
homing_speed: 10

[extruder]
step_pin: PA1
dir_pin: PA0
enable_pin: !PA2
microsteps: 16
rotation_distance: 5.33
nozzle_diameter: 0.400
filament_diameter: 1.750
heater_pin: PE4
sensor_type: AD597
sensor_pin: PK7
#control: pid
#pid_Kp: 12.9
#pid_Ki: 0.76
#pid_Kd: 55
min_temp: 0
max_temp: 250

#[extruder1]
#step_pin: PA4
#dir_pin: PA3
#enable_pin: !PA5
#heater_pin: PE5
#sensor_pin: PK6
#...

#[extruder2]
#step_pin: PA7
#dir_pin: PA6
#enable_pin: !PG2
#heater_pin: PH3
#sensor_pin: PK5
#...

[heater_bed]
heater_pin: PH6
sensor_type: EPCOS 100K B57560G104F
sensor_pin: PK3
#control: pid
#pid_Kp: 345.78
#pid_Ki: 14.59
#pid_Kd: 2047.99
min_temp: 0
max_temp: 130

[fan]
pin: PH4

[fan_generic extruder_fan]
pin: PH5

#[heater_fan fan1]
#pin: PH5

[output_pin on_pin]
pin: PL4

[output_pin off_pin]
pin: PG0

[virtual_sdcard]
path: /home/francois/printer_data/gcodes
on_error_gcode: CANCEL_PRINT

[mcu]
serial: /dev/serial/by-id/usb-Arduino__www.arduino.cc__0042_8543833383535191B100-if00

[printer]
kinematics: cartesian
max_velocity: 100
max_accel: 2000
max_z_velocity: 30
max_z_accel: 100

[input_shaper]
shaper_freq_x: 52.63
shaper_freq_y: 32.72

# "RepRapDiscount 2004 Smart Controller" type displays
#[display]
#lcd_type: hd44780
#rs_pin: PD2
#e_pin: PL7
#d4_pin: PD3
#d5_pin: PD7
#d6_pin: PG0
#d7_pin: PG1
#encoder_pins: ^PB5, ^PB6
#click_pin: ^!PL6

# "RepRapDiscount 128x64 Full Graphic Smart Controller" type displays
#[display]
#lcd_type: st7920
#cs_pin: PD2
#sclk_pin: PD3
#sid_pin: PL7
#encoder_pins: ^PB5, ^PB6
#click_pin: ^!PL6

#*********************************************************************#
#                                                                                                                                          #
#                                                                                                                                          #
#                            MACRO SECTION                            #
#                                                                                                                                          #
#                                                                                                                                          #
#*********************************************************************#
#[gcode_macro m900] 
#default_parameter_k = 0 
#gcode:
#    SET_PRESSURE_ADVANCE ADVANCE={K}

[gcode_macro TEST_SPEED] # Andrew Ellis' speed testing macro
gcode:
    # Speed
    {% set speed  = params.SPEED|default(printer.configfile.settings.printer.max_velocity)|int %}
    # Iterations
    {% set iterations = params.ITERATIONS|default(5)|int %}
    # Acceleration
    {% set accel  = params.ACCEL|default(printer.configfile.settings.printer.max_accel)|int %}
    # Bounding inset for large pattern (helps prevent slamming the toolhead into the sides after small skips, and helps to account for machines with imperfectly set dimensions)
    {% set bound = params.BOUND|default(20)|int %}
    # Size for small pattern box
    {% set smallpatternsize = SMALLPATTERNSIZE|default(20)|int %}
    
    # Large pattern
        # Max positions, inset by BOUND
        {% set x_min = printer.toolhead.axis_minimum.x + bound %}
        {% set x_max = printer.toolhead.axis_maximum.x - bound %}
        {% set y_min = printer.toolhead.axis_minimum.y + bound %}
        {% set y_max = printer.toolhead.axis_maximum.y - bound %}
    
    # Small pattern at center
        # Find X/Y center point
        {% set x_center = (printer.toolhead.axis_minimum.x|float + printer.toolhead.axis_maximum.x|float ) / 2 %}
        {% set y_center = (printer.toolhead.axis_minimum.y|float + printer.toolhead.axis_maximum.y|float ) / 2 %}
        
        # Set small pattern box around center point
        {% set x_center_min = x_center - (smallpatternsize/2) %}
        {% set x_center_max = x_center + (smallpatternsize/2) %}
        {% set y_center_min = y_center - (smallpatternsize/2) %}
        {% set y_center_max = y_center + (smallpatternsize/2) %}

    # Save current gcode state (absolute/relative, etc)
    SAVE_GCODE_STATE NAME=TEST_SPEED
    
    # Output parameters to g-code terminal
    { action_respond_info("TEST_SPEED: starting %d iterations at speed %d, accel %d" % (iterations, speed, accel)) }
    
    # Home and get position for comparison later:
        M400 # Finish moves - https://github.com/AndrewEllis93/Print-Tuning-Guide/issues/66
        G28
        # QGL if not already QGLd (only if QGL section exists in config)
        {% if printer.configfile.settings.quad_gantry_level %}
            {% if printer.quad_gantry_level.applied == False %}
                QUAD_GANTRY_LEVEL
                G28 Z
            {% endif %}
        {% endif %} 
        # Move 50mm away from max position and home again (to help with hall effect endstop accuracy - https://github.com/AndrewEllis93/Print-Tuning-Guide/issues/24)
        G90
        G1 X{printer.toolhead.axis_maximum.x-50} Y{printer.toolhead.axis_maximum.y-50} F{30*60}
        M400 # Finish moves - https://github.com/AndrewEllis93/Print-Tuning-Guide/issues/66
        G28 X Y
        G0 X{printer.toolhead.axis_maximum.x-1} Y{printer.toolhead.axis_maximum.y-1} F{30*60}
        G4 P1000 
        GET_POSITION

    # Go to starting position
    G0 X{x_min} Y{y_min} Z{bound + 10} F{speed*60}

    # Set new limits
    SET_VELOCITY_LIMIT VELOCITY={speed} ACCEL={accel} ACCEL_TO_DECEL={accel / 2}

    {% for i in range(iterations) %}
        # Large pattern diagonals
        G0 X{x_min} Y{y_min} F{speed*60}
        G0 X{x_max} Y{y_max} F{speed*60}
        G0 X{x_min} Y{y_min} F{speed*60}
        G0 X{x_max} Y{y_min} F{speed*60}
        G0 X{x_min} Y{y_max} F{speed*60}
        G0 X{x_max} Y{y_min} F{speed*60}
        
        # Large pattern box
        G0 X{x_min} Y{y_min} F{speed*60}
        G0 X{x_min} Y{y_max} F{speed*60}
        G0 X{x_max} Y{y_max} F{speed*60}
        G0 X{x_max} Y{y_min} F{speed*60}
    
        # Small pattern diagonals
        G0 X{x_center_min} Y{y_center_min} F{speed*60}
        G0 X{x_center_max} Y{y_center_max} F{speed*60}
        G0 X{x_center_min} Y{y_center_min} F{speed*60}
        G0 X{x_center_max} Y{y_center_min} F{speed*60}
        G0 X{x_center_min} Y{y_center_max} F{speed*60}
        G0 X{x_center_max} Y{y_center_min} F{speed*60}
        
        # Small patternbox
        G0 X{x_center_min} Y{y_center_min} F{speed*60}
        G0 X{x_center_min} Y{y_center_max} F{speed*60}
        G0 X{x_center_max} Y{y_center_max} F{speed*60}
        G0 X{x_center_max} Y{y_center_min} F{speed*60}
    {% endfor %}

    # Restore max speed/accel/accel_to_decel to their configured values
    SET_VELOCITY_LIMIT VELOCITY={printer.configfile.settings.printer.max_velocity} ACCEL={printer.configfile.settings.printer.max_accel} ACCEL_TO_DECEL={printer.configfile.settings.printer.max_accel_to_decel} 

    # Re-home and get position again for comparison:
        M400 # Finish moves - https://github.com/AndrewEllis93/Print-Tuning-Guide/issues/66
        G28 # This is a full G28 to fix an issue with CoreXZ - https://github.com/AndrewEllis93/Print-Tuning-Guide/issues/12
        # Go to XY home positions (in case your homing override leaves it elsewhere)
        G90
        G0 X{printer.toolhead.axis_maximum.x-1} Y{printer.toolhead.axis_maximum.y-1} F{30*60}
        G4 P1000 
        GET_POSITION

    # Restore previous gcode state (absolute/relative, etc)
    RESTORE_GCODE_STATE NAME=TEST_SPEED

[gcode_macro M300] # Corono's beeper macro
gcode:
    # Use a default 1kHz tone if S is omitted.
    {% set S = params.S|default(1000)|int %}
    # Use a 10ms duration is P is omitted.
    {% set P = params.P|default(100)|int %}
    SET_PIN PIN=beeper VALUE=0.5 CYCLE_TIME={ 1.0/S if S > 0 else 1 }
    G4 P{P}
    SET_PIN PIN=beeper VALUE=0

[gcode_macro CLEAN_NOZZLE] # this is my macro to clean the nozzle on the little wiper block at the back of the bed
gcode:
  {% if "xyz" not in printer.toolhead.homed_axes %} # conditional homing
      G28
  {% endif %}
  G90                   # absolute coords
  G0 X1 Y100 Z5 F3000  # move through the brush on the left side
  G0 X5 Y0 Z5 F1060            # and back
  

[gcode_macro START_PRINT]
gcode:
    {% set BED_TEMP = params.BED_TEMP|default(60)|float %}
    {% set EXTRUDER_TEMP = params.EXTRUDER_TEMP|default(200)|float %}
    # Start bed heating (but don't wait for it)
    M190 S{BED_TEMP}
    # Go and oooze somewhere else
    G90 # use absolute coordinates
    G28
    #G1 X2 Y200 F3000
    # Start extruder fan
    SET_FAN_SPEED FAN=extruder_fan SPEED=100
    # Set and wait for nozzle to reach temperature
    M109 S{EXTRUDER_TEMP}
    CLEAN_NOZZLE
    
    #M83 # extruder relative mode
    G28                                        # move X/Y/Z to min endstops
    #BED_MESH_PROFILE LOAD="default"
    # Removing below in favour of a good old brim
    #G1 Z0.28                                   # lift nozzle a bit 
    #G92 E0                                     # zero the extruded length 
    #G1 X3 Y3 Z0.28 F1800                                    
    #G1 X60 E10 F500                       # Extrude 25mm of filament in a 5cm line. 
    #G92 E0                                     # zero the extruded length again 
    #G1 E-4 F500            # Retract a little 
    #G1 X70 F4000           # Quickly wipe away from the filament line
    M117
    G21 # set units to millimeters
    G90 # use absolute coordinates
    M82 # use absolute distances for extrusion
    G92 E0
    M107
    
[gcode_macro END_PRINT]
gcode:
    M104 S0                ; Extruder off 
    M140 S0                ; Heatbed off 
    M107                   ; Fan off 
    G91                    ; relative positioning 
    G1 E-5 F3000  
    G1 Z+0.3 F3000         ; lift print head 
    G28 X0  F3000
    M84                    ; disable stepper motors

[gcode_macro M600]
description: Filament change
gcode:
    M300 
    PAUSE
2 Likes

Uploading: 20240420_162827.jpg…

I have this old D600 that using a board 9.2.1. I am not sure if this can be flashed witht the newer firmware that can allowed me to use klipper and add the bltouch. (the china seller was not helping). I would like to know if its possible to flash with firmware for F430 using motherboard 9.2.3 ?(using
this : CreatBot-F430-Info/Firmware at main · kForth/CreatBot-F430-Info · GitHub).
Anyone have any idea please let me know.

This should be for the Configs Sub-Forum.

Also, when you want to publish a config, just do not use the config you are running your printer on. It includes config parameters, that my be not work error free with other printers.

Meant is this section and all according settings in the config.

I’m looking for those! would you have the DX02 by any chance ?

I’m in the same situation. I’m trying to flash the motherboard and I’m looking for some configurations