VORON 0.2 참조 구성
#####################################################################
# 변경/확인해야 할 항목
#####################################################################
##***변경/확인해야 할 사항:***
## MCU 경로 [mcu]
## 프린터 작동 범위 xyz의 position
## 써미스터 유형 [extruder] 및 [heater_bed]
## Z축 리미트 스위치 정지 위치 [safe_z_home]
## Z축 리미트 스위치 오프셋 위치 [stepper_z]
## PID 보정 [extruder] 및 [heater_bed]
## 익스트루더 모터 스텝 값 미세 조정 [extruder]
#####################################################################
# 파일 호출
#####################################################################
### fluidd 또는 mainsail을 프런트엔드로 사용하는 경우 #[include XXX.cfg] 앞의 #을 제거하십시오.
### When using fluidd or mainsail as the frontend, remove the '#' before #[include XXX.cfg].
[include fluidd.cfg]
#[include mainsail.cfg]
### 아래 /home/fly의 fly를 호스트 컴퓨터 사용자 이름으로 바꾸십시오. ROOT 사용자가 아닌지 확인하십시오.
### Replace 'fly' in /home/fly with your host computer username, ensuring it's not the ROOT user.
[virtual_sdcard]
path: /home/fly/printer_data/gcodes
on_error_gcode: CANCEL_PRINT
#####################################################################
# 마스터 ID 구성
#####################################################################
[mcu]
serial: /dev/serial/by-id/usb-Klipper_rp2040_MELLOW-if00
### ls /dev/serial/by-id/* 명령어를 사용하여 USB 펌웨어 ID를 찾고
### /dev/serial/by-id/usb-Klipper_rp2040_MELLOW-if00를 찾은 ID로 바꾸십시오.
### Find the USB firmware ID with: ls /dev/serial/by-id/* and replace
### /dev/serial/by-id/usb-Klipper_rp2040_MELLOW-if00 with the ID you discover.
#canbus_uuid: 114514114514
### can 펌웨어 ID 조회 방법: ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
### can ID는 serial:을 canbus_uuid:로 바꾸고 뒤에 ID를 추가해야 합니다.
### Query the CAN firmware ID with: ~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
### Replace 'serial:' in the CAN ID with 'canbus_uuid:', then append the ID.
#####################################################################
# 온도 모니터링
#####################################################################
[temperature_sensor motherboard]
sensor_type: temperature_mcu
[temperature_sensor Raspberry Pi]
sensor_type: temperature_host
#####################################################################
# 모델 및 가속도
#####################################################################
[printer]
kinematics: corexy
max_velocity: 200
max_accel: 2000
max_z_velocity: 15
max_z_accel: 300
square_corner_velocity: 6.0
#####################################################################
# X/Y 스테퍼 설정
#####################################################################
[stepper_x]
## https://docs.vorondesign.com/build/startup/#v0 참조
step_pin:
dir_pin: # 위 링크에서 모터 방향을 확인하십시오. 반대인 경우 gpio3 앞에 !를 추가하십시오.
enable_pin:!
rotation_distance: 40
microsteps: 32
full_steps_per_rotation: 200 # 0.9° 스테퍼 모터의 경우 400으로 설정, 1.8° 스테퍼 모터는 200
endstop_pin:
# endstop_pin: tmc2209_stepper_x:virtual_endstop
# endstop_pin: tmc5160_stepper_x:virtual_endstop
position_min: 0
position_endstop: 120
position_max: 120
homing_speed: 40 # 센서리스 호밍의 경우 40mm/s를 초과하지 않는 것이 좋습니다.
homing_retract_dist: 0
homing_positive_dir: true
[tmc2209 stepper_x]
uart_pin:
interpolate: False
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0 # stealthchop을 켜려면 999999로 설정하고, spreadcycle을 사용하려면 0으로 설정
diag_pin: ^
driver_SGTHRS: 80
[tmc5160 stepper_x]
cs_pin:
### spi_bus와 spi_software 중 하나만 사용할 수 있습니다.
### spi_bus and spi_software can only use one of them.
# spi_bus:
spi_software_mosi_pin:
spi_software_miso_pin:
spi_software_sclk_pin:
run_current: 1.0
interpolate: False
### 드라이버 샘플링 저항은 드라이버에 따라 수정해야 합니다.
### The driver sampling resistor needs to be modified according to the driver
sense_resistor: 0.075
stealthchop_threshold: 0
diag0_pin: ^!
driver_SGT: 1
[stepper_y]
## https://docs.vorondesign.com/build/startup/#v0 참조
step_pin:
dir_pin: # 위 링크에서 모터 방향을 확인하십시오. 반대인 경우 gpio0 앞에 !를 추가하십시오.
enable_pin:!
rotation_distance: 40
microsteps: 32
full_steps_per_rotation: 200
endstop_pin:
# endstop_pin: tmc2209_stepper_y:virtual_endstop
# endstop_pin: tmc5160_stepper_y:virtual_endstop
position_min: 0
position_endstop: 120
position_max: 120
homing_speed: 40
homing_retract_dist: 0
homing_positive_dir: true
[tmc2209 stepper_y]
uart_pin:
interpolate: False
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0
diag_pin: ^
driver_SGTHRS: 80
[tmc5160 stepper_y]
cs_pin:
### spi_bus와 spi_software 중 하나만 사용할 수 있습니다.
### spi_bus and spi_software can only use one of them.
# spi_bus:
spi_software_mosi_pin:
spi_software_miso_pin:
spi_software_sclk_pin:
run_current: 1.0
interpolate: False
### 드라이버 샘플링 저항은 드라이버에 따라 수정해야 합니다.
### The driver sampling resistor needs to be modified according to the driver
sense_resistor: 0.075
stealthchop_threshold: 0
diag0_pin: ^!
driver_SGT: 1
#####################################################################
# Z 스테퍼 설정
#####################################################################
[stepper_z]
## https://docs.vorondesign.com/build/startup/#v0 참조
step_pin:
dir_pin:! # 위 링크에서 모터 방향을 확인하십시오. 반대인 경우 gpio25 앞에 !를 추가하십시오.
enable_pin: !
rotation_distance: 8 # T8x8 일체형 리드 스크류용
microsteps: 32
endstop_pin: ^PA6
position_endstop: 120
position_max: 120
position_min: -1.5
homing_speed: 20
second_homing_speed: 3.0
homing_retract_dist: 3.0
[tmc2209 stepper_z]
uart_pin:
interpolate: False
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0
#####################################################################
# 익스트루더
#####################################################################
[extruder]
## 센서 유형 # 일반적인 써미스터 (Generic 3950, ATC Semitec 104GT#2)
## Type of sensor # common thermistors are (Generic 3950, ATC Semitec 104GT#2)
sensor_type: ATC Semitec 104GT-2
sensor_pin:
#####################################################################
## PT1000을 사용하는 경우 열감지 옆 점퍼를 연결하십시오.
## If using PT1000, please connect the jumper next to the thermal sensitivity.
# sensor_type:PT1000
# pullup_resistor: 1100
# sensor_pin:
#####################################################################
# 익스트루더
#####################################################################
## https://www.klipper3d.org/Config_Reference.html#extruder
[extruder]
step_pin:
dir_pin:
enable_pin: !
rotation_distance: 21.84
## rotation_distance = 원래 rotation_distance * 실제 압출 길이 / 요청된 압출 길이
## 스텝 값 보정: 22.44=기존값22*실제값102/목표값100
gear_ratio:50:10
## 감속비(갈릴레오 기어비 7.5:1이고 이 줄은 주석 처리; BMG는 50:17, 출력축이 앞, 입력축이 뒤)
microsteps:16
full_steps_per_rotation: 200
nozzle_diameter:0.400
filament_diameter:1.75
heater_pin:
min_temp: -50
max_temp: 300
max_power: 1.0
min_extrude_temp: 150
pressure_advance: 0.05
##Pressure in advance
##압력 전진
##https://www.klipper3d.org/zh/Pressure_Advance.html
pressure_advance_smooth_time: 0.040
#max_extrude_only_distance: 200.0 # 압출 유량 오류 시 주석 처리 가능하나, 재슬라이싱 권장
# 노즐 온도 PID 보정 명령: PID_CALIBRATE HEATER=extruder TARGET=245
# Calibrate the nozzle temperature PID command : PID_CALIBRATE HEATER=extruder TARGET=245
control:watermark
step_pulse_duration: 0.000004
[tmc2209 extruder]
uart_pin:gpio9
uart_address:3
interpolate: False
run_current: 0.8
sense_resistor: 0.110
stealthchop_threshold: 0
#####################################################################
# 베드 히터
#####################################################################
[heater_bed]
heater_pin:
## 사용 중인 써미스터 유형을 확인하십시오. 일반적인 써미스터 유형은 https://www.klipper3d.org/Config_Reference.html#common#thermistors 에서 확인할 수 있습니다.
## Keenovo 히터에는 "Generic 3950"을 사용하십시오.
sensor_type:
sensor_pin:
max_power: 1.0
min_temp: -50
max_temp: 120
# 베드 온도 PID 보정 명령: PID_CALIBRATE HEATER=heater_bed TARGET=100
# Calibrate the heated bed temperature PID command: PID_CALIBRATE HEATER=heater_bed TARGET=100
control:watermark
#####################################################################
# 팬 제어
#####################################################################
[fan]
pin:
max_power: 1.0
kick_start_time: 0.5 # 팬에 따라, 팬이 켜지지 않으면 이 값을 늘려야 할 수 있습니다.
off_below: 0.13
cycle_time: 0.010
#####################################################################
[heater_fan hotend_fan]
pin:
max_power: 1.0
kick_start_time: 0.5
heater: extruder
heater_temp: 50.0
#####################################################################
# 필라멘트 런아웃 센서
#####################################################################
#[filament_switch_sensor Filament_Runout_Sensor]
#pause_on_runout: True
#runout_gcode: PAUSE
#switch_pin:
#####################################################################
# 호밍 및 갠트리 조정 루틴
#####################################################################
### safe_z_home 또는 homing_override 중 하나만 사용할 수 있습니다.
### You can only use either safe_z_home or homing_override
#[safe_z_home] V0.0 또는 V0.1 Z 엔드스톱 위치를 사용하는 경우에만 필요
#home_xy_position: 120,120
#speed: 50.0
#z_hop: 5
[homing_override]
axes: xyz
set_position_z: 0
gcode:
G90
G0 Z5 F600
{% set home_all = 'X' not in params and 'Y' not in params and 'Z' not in params %}
{% if home_all or 'X' in params %}
_HOME_X
{% endif %}
{% if home_all or 'Y' in params %}
_HOME_Y
{% endif %}
{% if home_all or 'Z' in params %}
_HOME_Z
{% endif %}
## BED_SCREWS_ADJUST와 함께 사용
[bed_screws]
screw1: 60,5
screw1_name: front screw
screw2: 5,115
screw2_name: back left
screw3: 115,115
screw3_name: back right
Probe_height: 0.1
#####################################################################
# Neopixel
#####################################################################
[neopixel board_rgb]
pin:
chain_count: 1
color_order: GRB
initial_RED: 0.0
initial_GREEN: 0.1
initial_BLUE: 0.0
#####################################################################
# V0 디스플레이
#####################################################################
# [mcu display]
# serial: **여기에 시리얼 포트를 붙여넣고 주석 제거**
# restart_method: command
# [display]
# lcd_type: sh1106
# i2c_mcu: display
# i2c_bus: i2c1a
# # 엔코더 휠 방향 설정
# # 표준: 오른쪽(시계 방향) 스크롤 다운 또는 값 증가. 왼쪽(반시계 방향) 스크롤 업 또는 값 감소.
# encoder_pins: ^display:PA3, ^display:PA4
# # 반대: 오른쪽(시계 방향) 스크롤 업 또는 값 감소. 왼쪽(반시계 방향) 스크롤 다운 또는 값 증가.
# #encoder_pins: ^display:PA4, ^display:PA3
# click_pin: ^!display:PA1
# kill_pin: ^!display:PA5
# #x_offset: 2
# # X 오프셋을 사용하여 디스플레이를 오른쪽으로 이동합니다. 값은 0에서 3까지 가능합니다.
# #vcomh: 0
# # SSD1306/SH1106 디스플레이에서 Vcomh 값을 설정합니다. 이 값은
# # 일부 OLED 디스플레이에서 "번짐" 현상과 관련이 있습니다.
# # 값의 범위는 0에서 63까지입니다. 기본값은 0입니다.
# # 디스플레이에 세로 줄무늬가 나타나는 경우 이 값을 조정하십시오. (31이 적절한 값인 것 같습니다.)
# [neopixel displayStatus]
# pin: display:PA0
# chain_count: 1
# color_order: GRB
# initial_RED: 0.2
# initial_GREEN: 0.05
# initial_BLUE: 0
#####################################################################
# 매크로
#####################################################################
[idle_timeout]
### 30분 이상 유휴 상태이면 베드 히터를 끕니다.
### If idle for more than 30 minutes, heated bed will be turned off.
timeout: 1800
[gcode_macro PRINT_START]
# 슬라이서 시작 스크립트용 PRINT_START 사용 - 사용 중인 슬라이서에 맞게 커스터마이징하십시오.
gcode:
G28 ; home all axes
G90 ; absolute positioning
G1 Z20 F3000 ; move nozzle away from bed
[gcode_macro PRINT_END]
# 슬라이서 종료 스크립트용 PRINT_END 사용 - 사용 중인 슬라이서에 맞게 커스터마이징하십시오.
gcode:
M400 ; wait for buffer to clear
G92 E0 ; zero the extruder
G1 E-4.0 F3600 ; retract filament
G91 ; relative positioning
# Get Boundaries
{% set max_x = printer.configfile.config["stepper_x"]["position_max"]|float %}
{% set max_y = printer.configfile.config["stepper_y"]["position_max"]|float %}
{% set max_z = printer.configfile.config["stepper_z"]["position_max"]|float %}
# Check end position to determine safe direction to move
{% if printer.toolhead.position.x < (max_x - 20) %}
{% set x_safe = 20.0 %}
{% else %}
{% set x_safe = -20.0 %}
{% endif %}
{% if printer.toolhead.position.y < (max_y - 20) %}
{% set y_safe = 20.0 %}
{% else %}
{% set y_safe = -20.0 %}
{% endif %}
{% if printer.toolhead.position.z < (max_z - 2) %}
{% set z_safe = 2.0 %}
{% else %}
{% set z_safe = max_z - printer.toolhead.position.z %}
{% endif %}
G0 Z{z_safe} F3600 ; move nozzle up
G0 X{x_safe} Y{y_safe} F20000 ; move nozzle to remove stringing
TURN_OFF_HEATERS
M107 ; turn off fan
G90 ; absolute positioning
G0 X60 Y{max_y-10} F3600 ; park nozzle at rear
[gcode_macro LOAD_FILAMENT]
gcode:
M83 ; set extruder to relative
G1 E30 F300 ; load
G1 E15 F150 ; prime nozzle with filament
M82 ; set extruder to absolute
[gcode_macro UNLOAD_FILAMENT]
gcode:
M83 ; set extruder to relative
G1 E10 F300 ; extrude a little to soften tip
G1 E-40 F1800 ; retract some, but not too much or it will jam
M82 ; set extruder to absolute
[gcode_macro _HOME_X]
gcode:
# Always use consistent run_current on A/B steppers during sensorless homing
{% set RUN_CURRENT_X = printer.configfile.settings['tmc2209 stepper_x'].run_current|float %}
{% set RUN_CURRENT_Y = printer.configfile.settings['tmc2209 stepper_y'].run_current|float %}
{% set HOME_CURRENT_RATIO = 0.7 %} # by default we are dropping the motor current during homing. you can adjust this value if you are having trouble with skipping while homing
SET_TMC_CURRENT STEPPER=stepper_x CURRENT={HOME_CURRENT_RATIO * RUN_CURRENT_X}
SET_TMC_CURRENT STEPPER=stepper_y CURRENT={HOME_CURRENT_RATIO * RUN_CURRENT_Y}
# Home
G28 X
# Move away
G91
G1 X-10 F1200
# Wait for StallGuard registers to clear
M400
G90
# Set current during print
SET_TMC_CURRENT STEPPER=stepper_x CURRENT={RUN_CURRENT_X}
SET_TMC_CURRENT STEPPER=stepper_y CURRENT={RUN_CURRENT_Y}
[gcode_macro _HOME_Y]
gcode:
# Set current for sensorless homing
{% set RUN_CURRENT_X = printer.configfile.settings['tmc2209 stepper_x'].run_current|float %}
{% set RUN_CURRENT_Y = printer.configfile.settings['tmc2209 stepper_y'].run_current|float %}
{% set HOME_CURRENT_RATIO = 0.7 %} # by default we are dropping the motor current during homing. you can adjust this value if you are having trouble with skipping while homing
SET_TMC_CURRENT STEPPER=stepper_x CURRENT={HOME_CURRENT_RATIO * RUN_CURRENT_X}
SET_TMC_CURRENT STEPPER=stepper_y CURRENT={HOME_CURRENT_RATIO * RUN_CURRENT_Y}
# Home
G28 Y
# Move away
G91
G1 Y-10 F1200
# Wait for StallGuard registers to clear
M400
G90
# Set current during print
SET_TMC_CURRENT STEPPER=stepper_x CURRENT={RUN_CURRENT_X}
SET_TMC_CURRENT STEPPER=stepper_y CURRENT={RUN_CURRENT_Y}
[gcode_macro _HOME_Z]
gcode:
G90
G28 Z
G1 Z30
Loading...