Closed rakirizu closed 1 year ago
The board and TMC2209 I have tried on the klipper firmware, it works fine. This is klipper config:
[include mainsail.cfg]
[virtual_sdcard]
path: /home/kirizu/printer_data/gcodes
on_error_gcode: CANCEL_PRINT
[mcu]
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
[printer]
kinematics: cartesian
max_velocity: 60
max_accel: 2000
max_z_accel: 30
max_z_velocity: 20
[safe_z_home]
home_xy_position: 0,0
z_hop: 5
[probe]
pin: PC13
z_offset: 6
[output_pin TOOL]
pin: !PB1 # use your fan's pin number
pwm: True
hardware_pwm: True
cycle_time: 0.00001
shutdown_value: 0
maximum_mcu_duration: 5
# Default: 0 (disabled)
# Amount of time in which the host has to acknowledge
# a non-shutdown output value.
# Suggested value is around 5 seconds.
# Use a value that does not burn up your stock.
# Please note that during homing, your tool
# needs to be in default speed.
[gcode_macro M3]
gcode:
{% set S = params.S|default(0.0)|float %}
SET_PIN PIN=TOOL VALUE={S / 255.0}
[gcode_macro M4]
gcode:
{% set S = params.S|default(0.0)|float %}
SET_PIN PIN=TOOL VALUE={S / 255.0}
[gcode_macro M5]
gcode:
SET_PIN PIN=TOOL VALUE=0
[stepper_x]
step_pin: PB4
dir_pin: !PB5
enable_pin: !PB7
rotation_distance: 40
homing_speed: 20
microsteps: 16
full_steps_per_rotation: 200
endstop_pin: tmc2209_stepper_x:virtual_endstop
homing_retract_dist: 0
position_min: 0
position_endstop: 0
position_max: 310
[tmc2209 stepper_x]
uart_pin: PA3
#tx_pin: PA2
interpolate: True
run_current: 0.6
uart_address: 2
diag_pin: ^PB6
sense_resistor: 0.110
stealthchop_threshold: 0
driver_SGTHRS: 23
[stepper_y]
step_pin: PD5
dir_pin: !PD6
enable_pin: !PB3
rotation_distance: 40
microsteps: 16
full_steps_per_rotation: 200
endstop_pin: PE5
position_min: 0
position_endstop: 0
position_max: 312
homing_speed: 40
homing_retract_dist: 5.0
homing_retract_speed: 20
second_homing_speed: 20
[tmc2209 stepper_y]
uart_pin: PA3
#tx_pin: PA2
interpolate: True
run_current: 0.4
hold_current: 0.4
uart_address: 0
diag_pin: ^PD7
sense_resistor: 0.110
stealthchop_threshold: 0
[stepper_y1]
step_pin: PD1
dir_pin: !PD2
enable_pin: !PD4
microsteps: 16
rotation_distance: 40
endstop_pin: PE6
full_steps_per_rotation: 200
[tmc2209 stepper_y1]
uart_pin: PA3
#tx_pin: PA2
interpolate: True
run_current: 0.4
hold_current: 0.4
uart_address: 1
diag_pin: ^PD3
sense_resistor: 0.110
stealthchop_threshold: 0
[stepper_z]
step_pin: PC11
dir_pin: PC10
enable_pin: !PD0
rotation_distance: 8
microsteps: 16
full_steps_per_rotation: 200
endstop_pin: probe:z_virtual_endstop
position_max: 200
homing_speed: 5
[tmc2209 stepper_z]
uart_pin: PA3
#tx_pin: PA2
interpolate: True
run_current: 1
hold_current: 1
uart_address: 3
diag_pin: ^PC12
sense_resistor: 0.110
stealthchop_threshold: 0
[stepper_z1]
step_pin: PA11
dir_pin: PA8
enable_pin: !PA15
rotation_distance: 8
microsteps: 16
full_steps_per_rotation: 200
endstop_pin: probe:z_virtual_endstop
[tmc2209 stepper_z1]
uart_pin: PB10
#tx_pin: PB11
interpolate: True
run_current: 1
hold_current: 1
uart_address: 0
diag_pin: ^PA12
sense_resistor: 0.110
stealthchop_threshold: 0
[stepper_z2]
step_pin: PC7
dir_pin: !PC6
enable_pin: !PC9
rotation_distance: 8
microsteps: 16
full_steps_per_rotation: 200
endstop_pin: probe:z_virtual_endstop
[tmc2209 stepper_z2]
uart_pin: PB10
#tx_pin: PB11
interpolate: True
run_current: 1
hold_current: 1
uart_address: 2
diag_pin: ^PC8
sense_resistor: 0.110
stealthchop_threshold: 0
[stepper_z3]
step_pin: PD10
dir_pin: !PD9
enable_pin: !PD12
rotation_distance: 8
microsteps: 16
full_steps_per_rotation: 200
endstop_pin: probe:z_virtual_endstop
[tmc2209 stepper_z3]
uart_pin: PB10
#tx_pin: PB11
interpolate: True
run_current: 1
hold_current: 1
uart_address: 1
diag_pin: ^PD11
sense_resistor: 0.110
stealthchop_threshold: 0
[force_move]
enable_force_move: True
[temperature_sensor mcu_temp]
sensor_type: temperature_mcu
[temperature_sensor host_temp]
sensor_type: temperature_host
Thanks for the report. I will check it.
Could you submit the Web Builder Config Setting (json) file?
{"VERSION":10780,"MCU":"MCU_STM32F1X","KINEMATIC":"KINEMATIC_CARTESIAN","AXIS_COUNT":3,"TOOL_COUNT":1,"BAUDRATE":115200,"ENABLE_COOLANT":true,"ENABLE_WIFI":null,"ENABLE_BLUETOOTH":null,"ENABLE_SKEW_COMPENSATION":null,"SKEW_COMPENSATION_XY_ONLY":null,"ENABLE_LINACT_PLANNER":null,"ENABLE_LINACT_COLD_START":null,"ENABLE_BACKLASH_COMPENSATION":null,"S_CURVE_ACCELERATION_LEVEL":0,"BRESENHAM_16BIT":true,"ENABLE_EXTRA_SYSTEM_CMDS":true,"RAM_ONLY_SETTINGS":null,"STATUS_AUTOMATIC_REPORT_INTERVAL_ENABLE":null,"BOARD":"BOARD_CUSTOM","BOARD_NAME":"\"Kirizu-laser\"","ITP_TIMER":2,"SERVO_TIMER":3,"ONESHOT_TIMER":1,"STEP0_BIT":4,"STEP0_PORT":"B","STEP0_IO_OFFSET":null,"STEP1_BIT":5,"STEP1_PORT":"D","STEP1_IO_OFFSET":null,"STEP2_BIT":1,"STEP2_PORT":"D","STEP2_IO_OFFSET":null,"STEP3_BIT":11,"STEP3_PORT":"C","STEP3_IO_OFFSET":null,"STEP4_BIT":11,"STEP4_PORT":"A","STEP4_IO_OFFSET":null,"STEP5_BIT":7,"STEP5_PORT":"C","STEP5_IO_OFFSET":null,"STEP6_BIT":10,"STEP6_PORT":"D","STEP6_IO_OFFSET":null,"STEP7_BIT":14,"STEP7_PORT":"D","STEP7_IO_OFFSET":null,"DIR0_BIT":5,"DIR0_PORT":"B","DIR0_IO_OFFSET":null,"DIR1_BIT":6,"DIR1_PORT":"D","DIR1_IO_OFFSET":null,"DIR2_BIT":2,"DIR2_PORT":"D","DIR2_IO_OFFSET":null,"DIR3_BIT":10,"DIR3_PORT":"C","DIR3_IO_OFFSET":null,"DIR4_BIT":8,"DIR4_PORT":"A","DIR4_IO_OFFSET":null,"DIR5_BIT":6,"DIR5_PORT":"C","DIR5_IO_OFFSET":null,"DIR6_BIT":9,"DIR6_PORT":"D","DIR6_IO_OFFSET":null,"DIR7_BIT":13,"DIR7_PORT":"D","DIR7_IO_OFFSET":null,"STEP0_EN_BIT":7,"STEP0_EN_PORT":"B","STEP0_EN_IO_OFFSET":null,"STEP1_EN_BIT":3,"STEP1_EN_PORT":"B","STEP1_EN_IO_OFFSET":null,"STEP2_EN_BIT":4,"STEP2_EN_PORT":"D","STEP2_EN_IO_OFFSET":null,"STEP3_EN_BIT":0,"STEP3_EN_PORT":"D","STEP3_EN_IO_OFFSET":null,"STEP4_EN_BIT":15,"STEP4_EN_PORT":"A","STEP4_EN_IO_OFFSET":null,"STEP5_EN_BIT":9,"STEP5_EN_PORT":"C","STEP5_EN_IO_OFFSET":null,"STEP6_EN_BIT":12,"STEP6_EN_PORT":"D","STEP6_EN_IO_OFFSET":null,"STEP7_EN_BIT":15,"STEP7_EN_PORT":"D","STEP7_EN_IO_OFFSET":null,"PWM0_BIT":1,"PWM0_PORT":"B","PWM0_CHANNEL":4,"PWM0_TIMER":3,"PWM0_MUX":null,"PWM0_IO_OFFSET":null,"PWM1_BIT":0,"PWM1_PORT":"B","PWM1_CHANNEL":3,"PWM1_TIMER":3,"PWM1_MUX":null,"PWM1_IO_OFFSET":null,"PWM2_BIT":null,"PWM2_PORT":null,"PWM2_CHANNEL":null,"PWM2_TIMER":null,"PWM2_MUX":null,"PWM2_IO_OFFSET":null,"PWM3_BIT":null,"PWM3_PORT":null,"PWM3_CHANNEL":null,"PWM3_TIMER":null,"PWM3_MUX":null,"PWM3_IO_OFFSET":null,"PWM4_BIT":null,"PWM4_PORT":null,"PWM4_CHANNEL":null,"PWM4_TIMER":null,"PWM4_MUX":null,"PWM4_IO_OFFSET":null,"PWM5_BIT":null,"PWM5_PORT":null,"PWM5_CHANNEL":null,"PWM5_TIMER":null,"PWM5_MUX":null,"PWM5_IO_OFFSET":null,"PWM6_BIT":null,"PWM6_PORT":null,"PWM6_CHANNEL":null,"PWM6_TIMER":null,"PWM6_MUX":null,"PWM6_IO_OFFSET":null,"PWM7_BIT":null,"PWM7_PORT":null,"PWM7_CHANNEL":null,"PWM7_TIMER":null,"PWM7_MUX":null,"PWM7_IO_OFFSET":null,"PWM8_BIT":null,"PWM8_PORT":null,"PWM8_CHANNEL":null,"PWM8_TIMER":null,"PWM8_MUX":null,"PWM8_IO_OFFSET":null,"PWM9_BIT":null,"PWM9_PORT":null,"PWM9_CHANNEL":null,"PWM9_TIMER":null,"PWM9_MUX":null,"PWM9_IO_OFFSET":null,"PWM10_BIT":null,"PWM10_PORT":null,"PWM10_CHANNEL":null,"PWM10_TIMER":null,"PWM10_MUX":null,"PWM10_IO_OFFSET":null,"PWM11_BIT":null,"PWM11_PORT":null,"PWM11_CHANNEL":null,"PWM11_TIMER":null,"PWM11_MUX":null,"PWM11_IO_OFFSET":null,"PWM12_BIT":null,"PWM12_PORT":null,"PWM12_CHANNEL":null,"PWM12_TIMER":null,"PWM12_MUX":null,"PWM12_IO_OFFSET":null,"PWM13_BIT":null,"PWM13_PORT":null,"PWM13_CHANNEL":null,"PWM13_TIMER":null,"PWM13_MUX":null,"PWM13_IO_OFFSET":null,"PWM14_BIT":null,"PWM14_PORT":null,"PWM14_CHANNEL":null,"PWM14_TIMER":null,"PWM14_MUX":null,"PWM14_IO_OFFSET":null,"PWM15_BIT":null,"PWM15_PORT":null,"PWM15_CHANNEL":null,"PWM15_TIMER":null,"PWM15_MUX":null,"PWM15_IO_OFFSET":null,"SERVO0_BIT":null,"SERVO0_PORT":null,"SERVO0_IO_OFFSET":null,"SERVO1_BIT":null,"SERVO1_PORT":null,"SERVO1_IO_OFFSET":null,"SERVO2_BIT":null,"SERVO2_PORT":null,"SERVO2_IO_OFFSET":null,"SERVO3_BIT":null,"SERVO3_PORT":null,"SERVO3_IO_OFFSET":null,"SERVO4_BIT":null,"SERVO4_PORT":null,"SERVO4_IO_OFFSET":null,"SERVO5_BIT":null,"SERVO5_PORT":null,"SERVO5_IO_OFFSET":null,"DOUT0_BIT":5,"DOUT0_PORT":"C","DOUT0_IO_OFFSET":null,"DOUT1_BIT":4,"DOUT1_PORT":"C","DOUT1_IO_OFFSET":null,"DOUT2_BIT":9,"DOUT2_PORT":"E","DOUT2_IO_OFFSET":null,"DOUT3_BIT":8,"DOUT3_PORT":"E","DOUT3_IO_OFFSET":null,"DOUT4_BIT":7,"DOUT4_PORT":"E","DOUT4_IO_OFFSET":null,"DOUT5_BIT":13,"DOUT5_PORT":"E","DOUT5_IO_OFFSET":null,"DOUT6_BIT":12,"DOUT6_PORT":"E","DOUT6_IO_OFFSET":null,"DOUT7_BIT":11,"DOUT7_PORT":"E","DOUT7_IO_OFFSET":null,"DOUT8_BIT":10,"DOUT8_PORT":"E","DOUT8_IO_OFFSET":null,"DOUT9_BIT":null,"DOUT9_PORT":null,"DOUT9_IO_OFFSET":null,"DOUT10_BIT":2,"DOUT10_PORT":"A","DOUT10_IO_OFFSET":null,"DOUT11_BIT":11,"DOUT11_PORT":"B","DOUT11_IO_OFFSET":null,"DOUT12_BIT":null,"DOUT12_PORT":null,"DOUT12_IO_OFFSET":null,"DOUT13_BIT":null,"DOUT13_PORT":null,"DOUT13_IO_OFFSET":null,"DOUT14_BIT":null,"DOUT14_PORT":null,"DOUT14_IO_OFFSET":null,"DOUT15_BIT":null,"DOUT15_PORT":null,"DOUT15_IO_OFFSET":null,"DOUT16_BIT":null,"DOUT16_PORT":null,"DOUT16_IO_OFFSET":null,"DOUT17_BIT":null,"DOUT17_PORT":null,"DOUT17_IO_OFFSET":null,"DOUT18_BIT":null,"DOUT18_PORT":null,"DOUT18_IO_OFFSET":null,"DOUT19_BIT":null,"DOUT19_PORT":null,"DOUT19_IO_OFFSET":null,"DOUT20_BIT":null,"DOUT20_PORT":null,"DOUT20_IO_OFFSET":null,"DOUT21_BIT":null,"DOUT21_PORT":null,"DOUT21_IO_OFFSET":null,"DOUT22_BIT":null,"DOUT22_PORT":null,"DOUT22_IO_OFFSET":null,"DOUT23_BIT":null,"DOUT23_PORT":null,"DOUT23_IO_OFFSET":null,"DOUT24_BIT":null,"DOUT24_PORT":null,"DOUT24_IO_OFFSET":null,"DOUT25_BIT":null,"DOUT25_PORT":null,"DOUT25_IO_OFFSET":null,"DOUT26_BIT":null,"DOUT26_PORT":null,"DOUT26_IO_OFFSET":null,"DOUT27_BIT":null,"DOUT27_PORT":null,"DOUT27_IO_OFFSET":null,"DOUT28_BIT":null,"DOUT28_PORT":null,"DOUT28_IO_OFFSET":null,"DOUT29_BIT":null,"DOUT29_PORT":null,"DOUT29_IO_OFFSET":null,"DOUT30_BIT":null,"DOUT30_PORT":null,"DOUT30_IO_OFFSET":null,"DOUT31_BIT":null,"DOUT31_PORT":null,"DOUT31_IO_OFFSET":null,"LIMIT_X_BIT":4,"LIMIT_X_PORT":"E","LIMIT_X_PULLUP":true,"LIMIT_X_ISR":null,"LIMIT_Y_BIT":5,"LIMIT_Y_PORT":"E","LIMIT_Y_PULLUP":true,"LIMIT_Y_ISR":null,"LIMIT_Z_BIT":null,"LIMIT_Z_PORT":null,"LIMIT_Z_PULLUP":null,"LIMIT_Z_ISR":null,"LIMIT_X2_BIT":null,"LIMIT_X2_PORT":null,"LIMIT_X2_PULLUP":null,"LIMIT_X2_ISR":null,"LIMIT_Y2_BIT":6,"LIMIT_Y2_PORT":"E","LIMIT_Y2_PULLUP":true,"LIMIT_Y2_ISR":null,"LIMIT_Z2_BIT":null,"LIMIT_Z2_PORT":null,"LIMIT_Z2_PULLUP":null,"LIMIT_Z2_ISR":null,"LIMIT_A_BIT":null,"LIMIT_A_PORT":null,"LIMIT_A_PULLUP":null,"LIMIT_A_ISR":null,"LIMIT_B_BIT":null,"LIMIT_B_PORT":null,"LIMIT_B_PULLUP":null,"LIMIT_B_ISR":null,"LIMIT_C_BIT":null,"LIMIT_C_PORT":null,"LIMIT_C_PULLUP":null,"LIMIT_C_ISR":null,"PROBE_BIT":null,"PROBE_PORT":null,"PROBE_PULLUP":null,"PROBE_ISR":null,"ESTOP_BIT":null,"ESTOP_PORT":null,"ESTOP_PULLUP":null,"ESTOP_ISR":null,"SAFETY_DOOR_BIT":null,"SAFETY_DOOR_PORT":null,"SAFETY_DOOR_PULLUP":null,"SAFETY_DOOR_ISR":null,"FHOLD_BIT":null,"FHOLD_PORT":null,"FHOLD_PULLUP":null,"FHOLD_ISR":null,"CS_RES_BIT":15,"CS_RES_PORT":"C","CS_RES_PULLUP":true,"CS_RES_ISR":true,"ANALOG0_BIT":0,"ANALOG0_PORT":"C","ANALOG0_CHANNEL":10,"ANALOG1_BIT":1,"ANALOG1_PORT":"C","ANALOG1_CHANNEL":11,"ANALOG2_BIT":2,"ANALOG2_PORT":"C","ANALOG2_CHANNEL":12,"ANALOG3_BIT":3,"ANALOG3_PORT":"C","ANALOG3_CHANNEL":13,"ANALOG4_BIT":null,"ANALOG4_PORT":null,"ANALOG4_CHANNEL":null,"ANALOG5_BIT":null,"ANALOG5_PORT":null,"ANALOG5_CHANNEL":null,"ANALOG6_BIT":null,"ANALOG6_PORT":null,"ANALOG6_CHANNEL":null,"ANALOG7_BIT":null,"ANALOG7_PORT":null,"ANALOG7_CHANNEL":null,"ANALOG8_BIT":null,"ANALOG8_PORT":null,"ANALOG8_CHANNEL":null,"ANALOG9_BIT":null,"ANALOG9_PORT":null,"ANALOG9_CHANNEL":null,"ANALOG10_BIT":null,"ANALOG10_PORT":null,"ANALOG10_CHANNEL":null,"ANALOG11_BIT":null,"ANALOG11_PORT":null,"ANALOG11_CHANNEL":null,"ANALOG12_BIT":null,"ANALOG12_PORT":null,"ANALOG12_CHANNEL":null,"ANALOG13_BIT":null,"ANALOG13_PORT":null,"ANALOG13_CHANNEL":null,"ANALOG14_BIT":null,"ANALOG14_PORT":null,"ANALOG14_CHANNEL":null,"ANALOG15_BIT":null,"ANALOG15_PORT":null,"ANALOG15_CHANNEL":null,"DIN0_BIT":14,"DIN0_PORT":"C","DIN0_PULLUP":true,"DIN0_ISR":null,"DIN1_BIT":null,"DIN1_PORT":null,"DIN1_PULLUP":null,"DIN1_ISR":null,"DIN2_BIT":null,"DIN2_PORT":null,"DIN2_PULLUP":null,"DIN2_ISR":null,"DIN3_BIT":null,"DIN3_PORT":null,"DIN3_PULLUP":null,"DIN3_ISR":null,"DIN4_BIT":null,"DIN4_PORT":null,"DIN4_PULLUP":null,"DIN4_ISR":null,"DIN5_BIT":null,"DIN5_PORT":null,"DIN5_PULLUP":null,"DIN5_ISR":null,"DIN6_BIT":null,"DIN6_PORT":null,"DIN6_PULLUP":null,"DIN6_ISR":null,"DIN7_BIT":null,"DIN7_PORT":null,"DIN7_PULLUP":null,"DIN7_ISR":null,"DIN8_BIT":null,"DIN8_PORT":null,"DIN8_PULLUP":null,"DIN9_BIT":null,"DIN9_PORT":null,"DIN9_PULLUP":null,"DIN10_BIT":3,"DIN10_PORT":"A","DIN10_PULLUP":null,"DIN11_BIT":10,"DIN11_PORT":"B","DIN11_PULLUP":null,"DIN12_BIT":null,"DIN12_PORT":null,"DIN12_PULLUP":null,"DIN13_BIT":null,"DIN13_PORT":null,"DIN13_PULLUP":null,"DIN14_BIT":null,"DIN14_PORT":null,"DIN14_PULLUP":null,"DIN15_BIT":null,"DIN15_PORT":null,"DIN15_PULLUP":null,"DIN16_BIT":null,"DIN16_PORT":null,"DIN16_PULLUP":null,"DIN17_BIT":null,"DIN17_PORT":null,"DIN17_PULLUP":null,"DIN18_BIT":null,"DIN18_PORT":null,"DIN18_PULLUP":null,"DIN19_BIT":null,"DIN19_PORT":null,"DIN19_PULLUP":null,"DIN20_BIT":null,"DIN20_PORT":null,"DIN20_PULLUP":null,"DIN21_BIT":null,"DIN21_PORT":null,"DIN21_PULLUP":null,"DIN22_BIT":null,"DIN22_PORT":null,"DIN22_PULLUP":null,"DIN23_BIT":null,"DIN23_PORT":null,"DIN23_PULLUP":null,"DIN24_BIT":null,"DIN24_PORT":null,"DIN24_PULLUP":null,"DIN25_BIT":null,"DIN25_PORT":null,"DIN25_PULLUP":null,"DIN26_BIT":null,"DIN26_PORT":null,"DIN26_PULLUP":null,"DIN27_BIT":null,"DIN27_PORT":null,"DIN27_PULLUP":null,"DIN28_BIT":null,"DIN28_PORT":null,"DIN28_PULLUP":null,"DIN29_BIT":null,"DIN29_PORT":null,"DIN29_PULLUP":null,"DIN30_BIT":null,"DIN30_PORT":null,"DIN30_PULLUP":null,"DIN31_BIT":null,"DIN31_PORT":null,"DIN31_PULLUP":null,"TX_BIT":9,"TX_PORT":"A","TX_IO_OFFSET":null,"RX_BIT":10,"RX_PORT":"A","USB_DM_BIT":null,"USB_DM_PORT":null,"USB_DM_IO_OFFSET":null,"USB_DP_BIT":null,"USB_DP_PORT":null,"USB_DP_IO_OFFSET":null,"SPI_CLK_BIT":null,"SPI_CLK_PORT":null,"SPI_CLK_IO_OFFSET":null,"SPI_SDI_BIT":null,"SPI_SDI_PORT":null,"SPI_SDO_BIT":null,"SPI_SDO_PORT":null,"SPI_SDO_IO_OFFSET":null,"SPI_CS_BIT":null,"SPI_CS_PORT":null,"SPI_CS_IO_OFFSET":null,"I2C_SCL_BIT":null,"I2C_SCL_PORT":null,"I2C_SDA_BIT":null,"I2C_SDA_PORT":null,"DISABLE_ALL_CONTROLS":null,"ESTOP_PULLUP_ENABLE":null,"SAFETY_DOOR_PULLUP_ENABLE":null,"FHOLD_PULLUP_ENABLE":null,"CS_RES_PULLUP_ENABLE":true,"DISABLE_ALL_LIMITS":null,"LIMIT_X_DISABLE":null,"LIMIT_Y_DISABLE":null,"LIMIT_Z_DISABLE":true,"LIMIT_X2_DISABLE":true,"LIMIT_Y2_DISABLE":null,"LIMIT_Z2_DISABLE":true,"LIMIT_X_PULLUP_ENABLE":true,"LIMIT_Y_PULLUP_ENABLE":true,"LIMIT_Z_PULLUP_ENABLE":true,"LIMIT_X2_PULLUP_ENABLE":true,"LIMIT_Y2_PULLUP_ENABLE":true,"LIMIT_Z2_PULLUP_ENABLE":true,"DISABLE_PROBE":true,"PROBE_PULLUP_ENABLE":null,"ENABLE_DUAL_DRIVE_AXIS":true,"DUAL_DRIVE0_AXIS":"Y","DUAL_DRIVE0_STEPPER":"3","DUAL_DRIVE0_ENABLE_SELFSQUARING":null,"DUAL_DRIVE1_AXIS":null,"DUAL_DRIVE1_STEPPER":null,"DUAL_DRIVE1_ENABLE_SELFSQUARING":null,"TOOL1":"spindle_pwm","SPINDLE_PWM":"PWM0","SPINDLE_PWM_DIR":"DOUT0","SPINDLE_PWM_COOLANT_FLOOD":"DOUT0","SPINDLE_PWM_COOLANT_MIST":"DOUT5","ENABLE_LASER_PPI":true,"LASER_PPI":"PWM0","INVERT_LASER_PPI_LOGIC":true,"SOFT_SPI_CLK":"DOUT0","SOFT_SPI_SDO":"DOUT0","SOFT_SPI_SDI":"DIN0","STEPPER0_HAS_TMC":true,"STEPPER0_DRIVER_TYPE":2209,"STEPPER0_TMC_INTERFACE":"TMC_UART","STEPPER0_UART_TX":"DOUT10","STEPPER0_UART_RX":"DIN10","STEPPER0_SPI_CS":"DOUT20","STEPPER0_SPI_CUSTOM":null,"STEPPER0_CURRENT_MA":800,"STEPPER0_MICROSTEP":16,"STEPPER0_RSENSE":0.11,"STEPPER0_HOLD_MULT":0.7,"STEPPER0_STEALTHCHOP_THERSHOLD":0,"STEPPER0_ENABLE_INTERPLATION":null,"STEPPER0_STALL_SENSITIVITY":10,"STEPPER1_HAS_TMC":true,"STEPPER1_DRIVER_TYPE":2209,"STEPPER1_TMC_INTERFACE":"TMC_UART","STEPPER1_UART_TX":"DOUT10","STEPPER1_UART_RX":"DIN10","STEPPER1_SPI_CS":"DOUT21","STEPPER1_SPI_CUSTOM":null,"STEPPER1_CURRENT_MA":800,"STEPPER1_MICROSTEP":16,"STEPPER1_RSENSE":0.11,"STEPPER1_HOLD_MULT":0.7,"STEPPER1_STEALTHCHOP_THERSHOLD":0,"STEPPER1_ENABLE_INTERPLATION":null,"STEPPER1_STALL_SENSITIVITY":10,"STEPPER2_HAS_TMC":true,"STEPPER2_DRIVER_TYPE":2209,"STEPPER2_TMC_INTERFACE":"TMC_UART","STEPPER2_UART_TX":"DOUT10","STEPPER2_UART_RX":"DIN10","STEPPER2_SPI_CS":"DOUT22","STEPPER2_SPI_CUSTOM":null,"STEPPER2_CURRENT_MA":800,"STEPPER2_MICROSTEP":16,"STEPPER2_RSENSE":0.11,"STEPPER2_HOLD_MULT":0.7,"STEPPER2_STEALTHCHOP_THERSHOLD":0,"STEPPER2_ENABLE_INTERPLATION":null,"STEPPER2_STALL_SENSITIVITY":10,"STEPPER3_HAS_TMC":true,"STEPPER3_DRIVER_TYPE":2209,"STEPPER3_TMC_INTERFACE":"TMC_UART","STEPPER3_UART_TX":"DOUT10","STEPPER3_UART_RX":"DIN10","STEPPER3_SPI_CS":"DOUT23","STEPPER3_SPI_CUSTOM":null,"STEPPER3_CURRENT_MA":800,"STEPPER3_MICROSTEP":16,"STEPPER3_RSENSE":0.11,"STEPPER3_HOLD_MULT":0.7,"STEPPER3_STEALTHCHOP_THERSHOLD":0,"STEPPER3_ENABLE_INTERPLATION":null,"STEPPER3_STALL_SENSITIVITY":10,"STEPPER4_HAS_TMC":true,"STEPPER4_DRIVER_TYPE":2209,"STEPPER4_TMC_INTERFACE":"TMC_UART","STEPPER4_UART_TX":"DOUT10","STEPPER4_UART_RX":"DIN10","STEPPER4_SPI_CS":"DOUT24","STEPPER4_SPI_CUSTOM":null,"STEPPER4_CURRENT_MA":800,"STEPPER4_MICROSTEP":16,"STEPPER4_RSENSE":0.11,"STEPPER4_HOLD_MULT":0.7,"STEPPER4_STEALTHCHOP_THERSHOLD":0,"STEPPER4_ENABLE_INTERPLATION":null,"STEPPER4_STALL_SENSITIVITY":10,"STEPPER5_HAS_TMC":true,"STEPPER5_DRIVER_TYPE":2209,"STEPPER5_TMC_INTERFACE":"TMC_UART","STEPPER5_UART_TX":"DOUT10","STEPPER5_UART_RX":"DIN10","STEPPER5_SPI_CS":"DOUT25","STEPPER5_SPI_CUSTOM":null,"STEPPER5_CURRENT_MA":800,"STEPPER5_MICROSTEP":16,"STEPPER5_RSENSE":0.11,"STEPPER5_HOLD_MULT":0.7,"STEPPER5_STEALTHCHOP_THERSHOLD":0,"STEPPER5_ENABLE_INTERPLATION":null,"STEPPER5_STALL_SENSITIVITY":10,"STEPPER6_HAS_TMC":null,"STEPPER6_DRIVER_TYPE":2208,"STEPPER6_TMC_INTERFACE":"TMC_UART","STEPPER6_UART_TX":"DOUT26","STEPPER6_UART_RX":"DIN26","STEPPER6_SPI_CS":"DOUT26","STEPPER6_SPI_CUSTOM":null,"STEPPER6_CURRENT_MA":800,"STEPPER6_MICROSTEP":16,"STEPPER6_RSENSE":0.11,"STEPPER6_HOLD_MULT":0.7,"STEPPER6_STEALTHCHOP_THERSHOLD":0,"STEPPER6_ENABLE_INTERPLATION":null,"STEPPER6_STALL_SENSITIVITY":10,"STEPPER7_HAS_TMC":null,"STEPPER7_DRIVER_TYPE":2208,"STEPPER7_TMC_INTERFACE":"TMC_UART","STEPPER7_UART_TX":"DOUT27","STEPPER7_UART_RX":"DIN27","STEPPER7_SPI_CS":"DOUT27","STEPPER7_SPI_CUSTOM":null,"STEPPER7_CURRENT_MA":800,"STEPPER7_MICROSTEP":16,"STEPPER7_RSENSE":0.11,"STEPPER7_HOLD_MULT":0.7,"STEPPER7_STEALTHCHOP_THERSHOLD":0,"STEPPER7_ENABLE_INTERPLATION":null,"STEPPER7_STALL_SENSITIVITY":10,"ENABLE_MAIN_LOOP_MODULES":true,"ENABLE_IO_MODULES":true,"ENABLE_PARSER_MODULES":true,"ENABLE_MOTION_CONTROL_MODULES":true,"ENABLE_SETTINGS_MODULES":true,"ENABLE_RT_SYNC_MOTIONS":null,"g5":null,"g7_g8":null,"g33":null,"m17_m18":true,"m42":true,"m62_m65":null,"m67_m68":null,"m80_m81":null,"i2c_lcd":null,"smoothie_clustering":null,"graphic_display":null,"sd_card":null,"sd_card_pf":null,"bltouch":null}
I made some changes, so it may be different from the .h
I tried not to use the TMC driver, but the motor still didn't move. By the way, motor is locked (EN pin is low).
I there. I'm going through your config file. I detected some web builder errors that I'm trying to get around. Just one question. Your TMC drivers are write only mode (shared address) or write/read (each as one address)?
EDIT: And another question. You are not using USB?
The configuration you sent me is not valid. You enabled laserPPI and that will consume a stepper position. In this case it uses STEP3.
so you will have to skip using that STEP3. You can still use the remaining STEPS. You just need to shift your STEP3 config to STEP4, etc...
I'm uploading the web builder fixes now.
Thanks.
My TMC drivers are on the write/read (each as one address)
I know laserPPI used step3, so I tried to move X (STEP0) but it not worked.
Just one question. If you are using read/write mode and enabled parser modules options what does the TMC MCodes (M350, M906, M913, etc...) commands return?
Grbl 1.7 [uCNC v1.7.4 '$' for help]
>:ok
>:ok
» $
» $
« $0=10.000
$1=0
$2=0
$3=0
$4=0
$5=0
$6=0
$7=0
$10=1
$11=0.200
$12=0.002
$13=0
$20=0
$21=0
$22=0
$23=0
$24=10.000
$25=50.000
$26=250
$27=2.000
$30=1000
$31=0
$32=0
$33=254
$34=1500
$35=0.250
$36=0.750
$80=1
$81=0.000
$100=200.000
$101=200.000
$110=500.000
$111=500.000
$120=10.000
$121=10.000
$130=200.000
$131=200.000
ok
ok
» $
« [HLP:$$ $# $G $I $N $x=val $Nx=line $J=line $C $X $H ~ ! ? ctrl-x]
ok
ok
» $I
« [VER: uCNC 1.7.4 - Kirizu-laser]
[OPT:C2,16B,DSS3_500,PPI,DC,DP,XC,30,128]
ok
ok
» M350
« [MICROSTEPS:X16.000,Y16.000,Z16.000,A16.000,B-1.000,C-1.000,I0.000,J0.000]
» M906
« ok
ok
» M906
« error:2
ok
» M906
« [STEPPER CURRENT:X795.497,Y795.497,Z795.497,A795.497,B-1.000,C-1.000,I-1.000,J-1.000]
» M913
« ok
ok
» M914
« error:2
ok
» M914
« [STEPPER STALL SENSITIVITY:X0,Y0,Z0,A0,B0,C0,I-255,J-255]
» M920
« ok
ok
error:51
ok
» M920
« error:51
ok
» M920
« error:51
ok
Edit:
» M350 X32
« ok
ok
» M350
« [MICROSTEPS:X32.000,Y16.000,Z16.000,A16.000,B-1.000,C-1.000,I0.000,J0.000]
» M906 X400
« ok
ok
» M906
« error:2
ok
» M906
« [STEPPER CURRENT:X795.497,Y795.497,Z795.497,A795.497,B-1.000,C-1.000,I-1.000,J-1.000]
» M906
» M906 X400
» M906 X400
« ok
ok
» M906 X400
« error:2
ok
» M906 X400
« ok
ok
» M906
« [STEPPER CURRENT:X397.749,Y795.497,Z795.497,A795.497,B-1.000,C-1.000,I-1.000,J-1.000]
So apparently TMC communication is working. Then I will redirect my focus to the web build configuration files. Thanks
Hi. I just checked the pin status using the logic analyzer. I found that the STEP pin was always at a high level without change (even though I used the G0 command to move the motor).
0: STEP 1: DIAG 2: UART
You are correct. It's not. An even worse it's making a very odd behaviour. When I connect the bluepill using the config file you sent it stays in alarm mode for a while and it takes quite sometime to get unstuck.
I'm not sure if this is caused by the configuration files generated by the web builder or not.
I will try to debug the code with the debug DAP to see if can understand what is going on. I'll also try to build a custom boardmap manually that fits your config and test it. Just one question regarding that. Are you using a commercial board or a custom board?
This board is customized by myself,and the mcu is the stm32f103vet6.
Ok. I only have a bluepill. Some of IO pins you have defined I don't have at my disposal. I'll use the same pins you are using and that I have available to do the tests.
Since you are using a MCU with more ram/flash and IO some changes are required. The platformio board might need to be changed and also an option (FLASH_SIZE) like explained here.
But first let me get this running on my bluepill and I'll give you feedback before going there.
It seems that you chose a particular pin that is not used as a GPIO on reset. I believe this is the cause. Since I do not use the STM32 HAL and do all bare-metal these kind of issues pop. Let me study this for a bit.
Edit: I think changing SWJ_CFG to 0b010 will do the trick. But I'll let you know
I'm pushing #486 to both master and v1.8.x. This will unlock pins PB3, PB4 and PA15 as GPIO, so the firmware is able to use them. I tested using my scope and STEP0 was working ok on PB4 with this modification.
EDIT:
Just another note. The sluggish start I experienced is normal. I used your configuration that had UART TMC drivers, but I had none connected. When the software is starting up it will try to setup the TMC drivers. If it fails to get a response from them (either because they are in write mode only or they are not installed) it will wait and retry a few times, causing the startup to be slower then normal.
Thank you very much!
Now my motor is working well, but I find that using the G0 X100 F100
and G0 X100 F200
the speed is the same. how should I change the speed and acceleration, is there something like a rotation_distance
(distance that the axis travels with one full rotation of the stepper motor) configuration here?
Edit: I tried:
» $100=80
$110=300
$120=2000
G91
G0 X40 F200
« ok
ok
ok
ok
ok
ok
ok
ok
ok
ok
» $100=80
$110=300
$120=2000
G91
G0 X40 F100
« ok
ok
ok
ok
ok
ok
ok
ok
ok
ok
The motor speed is the same.
That is odd. I should not be the same. I will check that.
For another question, I defined:
#define DEFAULT_HOMING_ENABLED 1
#define ALLOW_SOFTWARE_HOMING
but when I use $H
, I received error:5
. (Homing cycle is not enabled via settings.). How do I need to enable the setting?
It should be enabled via DEFAULT_HOMING_ENABLED
but you can check it's value via $$
and modify it without the need to reflash. See setting $22. For software homing you should also enable soft limits (setting $20).
EDIT: Also an important note. If you reflashed with this option enabled, but previously you flashed with it disabled the setting will not change.
This setting is kept internally in FLASH storage. Even if you modify the option the value that it will use is the one that is stored in flash. Only on settings reset, or some settings reading error will the default values be loaded from ROM. Until that the previous stored value will be the one used (even if it's now the default ROM value) This holds true for all settings stored in EEPROM/FLASH ($$)
Thank you very much! Now my motor is working well, but I find that using the
G0 X100 F100
andG0 X100 F200
the speed is the same. how should I change the speed and acceleration, is there something like arotation_distance
(distance that the axis travels with one full rotation of the stepper motor) configuration here?Edit: I tried:
» $100=80 $110=300 $120=2000 G91 G0 X40 F200 « ok ok ok ok ok ok ok ok ok ok » $100=80 $110=300 $120=2000 G91 G0 X40 F100 « ok ok ok ok ok ok ok ok ok ok
The motor speed is the same.
About this. I tested and on my side is working quite well. G1X40F100 took about 24 seconds (60x40/100=24 so it's spot on) G1X40F200 took about 12 seconds (again 60x40/200=12 so it's spot on too)
Sorry, I tested it again, it works well. I have tested most of the functions and found no problems. I will test it on my machine a few days later.
Here are some functional suggestions:
I implemented these functions on another board, so it's not necessary to build them into uCNC right now for me. You can get more information at Marlin Laser Document.
Thank you very much again!
Sorry, I tested it again, it works well. I have tested most of the functions and found no problems. I will test it on my machine a few days later.
Here are some functional suggestions:
- Air Evacuation motor relay output, enables Menu item and G-code M10/M11 control.
- Ammeter support: This is a low side configuration (Ground) current IC that can be used for both CO2 and Diode based lasers. It’s ideal with High Voltage CO2 laser tubes, it connects between chassis ground and the tube ground.
- CO2 Coolant flow meter support: Provides tube protection by detecting flow failures and controlling laser enable signals.
- Laser cooling control, provides chiller control with temperature monitoring and safety.
I implemented these functions on another board, so it's not necessary to build them into uCNC right now for me. You can get more information at Marlin Laser Document.
Thank you very much again!
Thanks for the sugestions.
Just a note about that:
I will look at the provided Marlin documentation link and try to add these as modules. Any problem you ran into, please report.
Since the issue is solve I'm closing this. The requested features are being evaluated. I've ordered an ammeter to develop the respective module.
I tried 1.8.0 but it did not work. It did not respond anything to the serial port. And the crystal oscillator is not working
I tried 1.7.4 but my motor won't move, I've done everything I can to try and fix it, but it not work until now. So I need some help.
Schematic:
My config:
serial: