핀 할당 교체 설명
이 페이지는 기존 Klipper 설정을 현재 FLY 메인보드에서 사용 가능한 핀으로 변경하는 방법을 안내합니다. 온라인에 있는 많은 설정은 구조 참고용으로만 사용할 수 있으며, 그대로 복사해서 사용할 수 없습니다. 실제 사용 전에는 사용 중인 메인보드 모델, 인터페이스 위치 및 배선 방식에 따라 해당 핀을 교체해야 합니다.
시작하기 전에 프린터를 완전히 종료하고 전원 공급 장치를 분리하십시오. 전원이 켜진 상태에서 케이블을 연결/분리하거나, 인터페이스 배선 순서를 정리하거나, 터미널을 만지지 마십시오.
- 이 문서는 설정에서 핀을 찾고 교체하는 방법만 설명하며, 특정 기계에 대한 완전한 완성 설정을 제공하지 않습니다.
position_max,rotation_distance,microsteps,run_current,sensor_type등의 매개변수는 실제 기계와 하드웨어에 따라 확인해야 하며, 메인보드를 교체했다고 해서 무턱대고 복사해서 사용하지 마십시오.- 메인보드 핀은 해당 FLY 제품 문서, 메인보드 실크스크린 및 공식 참고 설정을 기준으로 하십시오.
수정 접근 방식
설정을 수정할 때는 다음 순서대로 처리하는 것이 좋습니다.
- 현재 사용 중인 FLY 메인보드 모델을 확인합니다.
- 해당 메인보드 제품 문서를 열고, 드라이버 포트, 엔드스탑 포트, 팬 포트, 히터 포트, 서미스터 포트 등의 핀 설명을 찾습니다. 또는 해당 메인보드의 Klipper 참고 설정을 직접 참조할 수도 있습니다.
printer.cfg및 모든[include]파일에서 수정해야 하는 기능 섹션을 찾습니다.- 사용하려는 새 핀을 검색하여 다른 활성화된 설정에서 사용되고 있지 않은지 확인합니다.
- 메인보드 인터페이스와 관련된 핀 항목만 교체하고, 필요한
!,^,~기호는 유지합니다. - 설정을 저장하고 Klipper를 재시작합니다.
- 모든 주변 장치를 한 번에 테스트하지 말고, 각 기능별로 하나씩 테스트합니다.
일반적인 기능 섹션
| 기능 | 일반적인 설정 섹션 | 일반적으로 교체해야 할 항목 |
|---|---|---|
| X / Y / Z 모터 | [stepper_x], [stepper_y], [stepper_z] | step_pin, dir_pin, enable_pin, endstop_pin |
| 압출기 모터 | [extruder] | step_pin, dir_pin, enable_pin |
| TMC 드라이버 통신 | [tmc2209 stepper_x], [tmc5160 stepper_x] 등 | uart_pin, cs_pin, spi_software_mosi_pin, spi_software_miso_pin, spi_software_sclk_pin, diag_pin |
| 핫엔드 히터 | [extruder] | heater_pin, sensor_pin |
| 히트베드 히터 | [heater_bed] | heater_pin, sensor_pin |
| 팬 | [fan], [heater_fan xxx], [fan_generic xxx] | pin, tachometer_pin |
| 엔드스탑 스위치 | [stepper_x], [stepper_y], [stepper_z] | endstop_pin |
| 프로브 | [probe], [bltouch] | pin, sensor_pin, control_pin |
| LED / 부저 | [output_pin xxx], [neopixel xxx] | pin |
해당 설정 찾기
설정이 어떤 파일에 있는지 확실하지 않은 경우, 웹 설정 인터페이스를 통해 찾는 것을 권장합니다.
- 브라우저에서 프린터 웹 인터페이스(예: Fluidd 또는 Mainsail)를 엽니다.
- 설정 파일 페이지로 이동하여
printer.cfg를 엽니다. - 브라우저 또는 편집기의 검색 기능을 사용하여 아래 키워드를 검색합니다.
[include xxx.cfg]가 보이면 설정의 일부가 다른 파일로 분할된 것이므로, 해당 include 파일을 열어 계속 찾아야 합니다.
일반적인 검색 방법:
- X축 찾기:
[stepper_x]검색 - Y축 찾기:
[stepper_y]검색 - Z축 찾기:
[stepper_z]검색 - 압출기 찾기:
[extruder]검색 - 히트베드 찾기:
[heater_bed]검색 - 팬 찾기:
[fan],[heater_fan,[fan_generic검색 - 드라이버 찾기:
[tmc2209,[tmc5160,[tmc2240검색 - 핀 항목 찾기:
step_pin,dir_pin,enable_pin,heater_pin,sensor_pin,endstop_pin,uart_pin,cs_pin검색
설정이 일반적으로 printer.cfg 하나의 파일에 모두 작성되지는 않습니다. [include mainsail.cfg], [include fluidd.cfg], [include printer/*.cfg], [include xxx.cfg]와 같은 내용이 보이면 해당 파일로 들어가 실제 설정을 확인해야 합니다.
핀 충돌 확인
핀을 교체하기 전에, 사용하려는 새 핀을 검색하여 다른 기능에서 중복으로 사용되고 있지 않은지 확인하십시오. Klipper에서 동일한 물리적 GPIO는 일반적으로 하나의 기능에만 할당될 수 있습니다. 중복 사용 시 pin xxx used multiple times in config 오류가 발생할 수 있습니다.
검색 시 핀 앞의 수식어는 제거하십시오. 예를 들어 !PA15를 사용하려면 PA15를 검색하고, ^PD9를 사용하려면 PD9를 검색하십시오.
| 검색된 위치 | 처리 필요 여부 | 설명 |
|---|---|---|
| 동일한 기능 섹션의 동일한 항목 | 일반적으로 처리 불필요 | 예: 수정 중인 [stepper_x]에 step_pin이 나타나는 경우 |
| 주석 처리된 예제 줄 | 일반적으로 처리 불필요 | 줄 시작 부분에 #이 있는 예제는 적용되지 않음 |
| 다른 활성화된 기능 섹션 | 처리 필요 | 동일한 핀을 팬, 히터, 엔드스탑, 프로브 등 여러 기능에 동시에 사용할 수 없음 |
TMC 드라이버의 diag_pin과 물리적 엔드스탑 공유 | 둘 중 하나 선택 필요 | 물리적 엔드스탑 사용 시 동일한 핀의 diag_pin을 동시에 활성화하지 마십시오; 엔드스탑 없는 귀환(센서리스 홈) 사용 시 endstop_pin을 해당 드라이버의 virtual_endstop으로 변경해야 함 |
| 다중 MCU 핀 | 접두사 확인 필요 | toolboard:PA0과 메인보드 PA0은 동일한 MCU가 아니지만, 접두사는 [mcu toolboard] 이름과 일치해야 함 |
저장 후 pin xxx used multiple times in config 오류가 발생하면 웹 설정 인터페이스로 돌아가 printer.cfg 및 모든 include 파일에서 오류 메시지의 xxx를 검색하고, 올바른 기능은 유지하고 다른 중복 항목은 삭제, 주석 처리 또는 변경하십시오.
핀 기호 설명
Klipper 핀 앞에는 특수 기호가 올 수 있습니다. 핀을 교체할 때 임의로 삭제하지 마십시오:
| 기호 | 의미 | 일반적인 위치 |
|---|---|---|
! | 레벨 반전 | dir_pin, enable_pin, endstop_pin |
^ | 풀업 활성화 | 기계식 엔드스탑, 프로브 입력 |
~ | 풀다운 활성화 | 일부 입력 신호 |
mcu1:PA0 | 특정 MCU의 핀 지정 | 다중 MCU 또는 툴보드 설정 |
예시:
enable_pin: !PC3
endstop_pin: ^PA1
sensor_pin: toolboard:PA0
!PC3의 실제 핀은 PC3이며, !는 레벨 반전만을 의미합니다. 새 메인보드로 교체할 때는 새 메인보드 핀에 맞게 !<new_enable_pin>과 같이 작성하고, !를 직접 삭제하지 마십시오.
교체 예시
이전 설정에서 X축이 다른 메인보드 핀을 사용했다고 가정합니다:
[stepper_x]
step_pin: PA3
dir_pin: PA2
enable_pin: !PA1
endstop_pin: ^PB10
아래는 FLY-C8P의 X축 드라이버 위치를 예로 듭니다. C8P 메인보드 자료를 확인한 후, X축 드라이버 포트와 X 엔드스탑 포트를 해당 핀으로 변경할 수 있습니다. 수정하기 전에 PE5, PA8, PA15, PD9를 검색하여 이러한 핀이 다른 활성화된 설정에서 사용되고 있지 않은지 확인하십시오.
[stepper_x]
step_pin: PE5
dir_pin: !PA8
enable_pin: !PA15
endstop_pin: ^PD9
X축이 TMC2209 드라이버를 사용하는 경우 해당 드라이버 통신 핀도 확인해야 합니다:
[tmc2209 stepper_x]
uart_pin: PC9
run_current: 0.800
위 예시는 FLY-C8P의 X축 드라이버 위치 작성법만을 나타냅니다. 모터가 다른 드라이버 위치에 연결되어 있거나 C8P를 사용하지 않는 경우, 실제 메인보드 문서와 실제 배선 위치에 따라 작성하고 직접 복사하지 마십시오.
모터 방향이 반대인 경우, 일반적으로 dir_pin 앞의 !를 추가하거나 제거하기만 하면 됩니다. 예를 들어 현재 dir_pin: !PA8인 경우 dir_pin: PA8로 변경하거나 그 반대로 합니다.
엔드스탑 상태가 반대인 경우, 일반적으로 endstop_pin 앞의 ! 및 ^가 실제 배선 방식과 일치하는지 확인합니다:
endstop_pin: ^!PD9
기능별 교체
모터 및 드라이버
동일한 모터는 일반적으로 [stepper_x]와 [tmc2209 stepper_x] 두 설정 섹션을 동시에 확인해야 합니다 (전체 예시는 위의 '교체 예시' 참조). 핀 교체 시 다음 사항에도 주의해야 합니다:
[tmc2209 stepper_x], [tmc5160 stepper_x], [tmc2240 stepper_x] 등의 설정 섹션은 실제 드라이버 모델과 일치해야 합니다. 메인보드를 교체할 때 핀만 변경하지 말고, 드라이버 모델, 통신 방식 및 션트 저항 매개변수도 일치하는지 확인하십시오.
C8P의 X 엔드스탑 포트 예시는 PD9입니다. 센서리스 귀환을 사용하는 경우 endstop_pin: ^PD9를 계속 사용하지 말고 드라이버 모델에 따라 virtual_endstop으로 변경하고 TMC 설정에서 해당 diag_pin을 활성화해야 합니다. 물리적 엔드스탑과 센서리스 귀환을 동일한 엔드스탑 핀에 혼용하지 마십시오.
[stepper_x]
endstop_pin: tmc2209_stepper_x:virtual_endstop
homing_speed: 40
homing_retract_dist: 0
[tmc2209 stepper_x]
uart_pin: PC9
diag_pin: ^PD9
run_current: 0.800
히터 및 온도
핫엔드 히터는 일반적으로 [extruder]에 있습니다:
[extruder]
heater_pin: PD12
sensor_pin: PC2
sensor_type: Generic 3950
히트베드 히터는 일반적으로 [heater_bed]에 있습니다:
[heater_bed]
heater_pin: PB0
sensor_pin: PC5
sensor_type: Generic 3950
위는 C8P의 일반적인 핫엔드 및 히트베드 예시입니다. heater_pin은 히터 출력 포트에 해당하고, sensor_pin은 서미스터 입력 포트에 해당합니다. 둘을 잘못 입력하지 말고, 동일한 서미스터 핀을 여러 온도 센서에 동시에 작성하지 마십시오. sensor_type 예시는 Generic 3950이지만, 실제 서미스터 모델을 기준으로 하십시오 (일반적으로 ATC Semitec 104GT-2, PT1000 등도 있음).
팬
일반 모델 팬의 일반적인 작성법:
[fan]
pin: PA0
핫엔드 방열 팬의 일반적인 작성법:
[heater_fan hotend_fan]
pin: PA1
heater: extruder
heater_temp: 50.0
위는 C8P의 팬 포트 예시입니다. 교체하기 전에 PA0, PA1을 검색하여 이러한 핀이 [output_pin], [fan_generic] 또는 다른 팬 설정에 동시에 사용되고 있지 않은지 확인하십시오. 메인보드 팬 포트가 상시 열림 포트와 제어 가능 포트로 구분되는 경우, 문서에서 해당 팬 포트가 PWM 제어를 지원하는지 확인하십시오.
프로브 및 엔드스탑
기계식 엔드스탑의 일반적인 작성법:
[stepper_x]
endstop_pin: ^PD9
일반 프로브의 일반적인 작성법:
[probe]
pin: ^PC0
BLTouch 유형 프로브의 일반적인 작성법:
[bltouch]
sensor_pin: ^PC0
control_pin: PE6
위는 C8P의 엔드스탑 및 프로브 포트 예시입니다. 일반 [probe]와 [bltouch]는 실제 사용하는 것 하나만 선택하고, 동일한 프로브 신호 핀을 동시에 활성화하지 마십시오. 엔드스탑, 프로브 등의 입력 신호에 ^ 또는 !가 필요한지 여부는 모듈 유형과 배선 방식에 따라 다릅니다. 수정하기 전에 PD9, PC0, PE6를 검색하여 중복 사용이 없는지 확인하십시오; 수정 후에는 웹 콘솔에서 QUERY_ENDSTOPS, QUERY_PROBE 등의 명령을 사용하여 트리거 상태를 확인한 후 귀환이나 레벨링을 수행하십시오.
저장 및 검증
수정을 완료한 후 웹 페이지 우측 상단의 SAVE & RESTART를 클릭하여 저장하고 Klipper를 재시작합니다. 수정 사항이 MCU 연결, 드라이버 통신 등 하위 수준 설정을 포함하는 경우, 콘솔에서 일반 RESTART 대신 FIRMWARE_RESTART를 실행해야 할 수도 있습니다.
다음 순서로 검증하는 것이 좋습니다:
- Klipper가 정상적으로 시작되고
Unknown pin chip name,Pin is not a valid pin name,Unable to parse option등의 설정 오류가 없는지 확인합니다. pin xxx used multiple times in config오류가 발생하면, 먼저 중복 사용된xxx를 검색하여 처리하고 계속 테스트하지 마십시오.- 웹 콘솔에서
QUERY_ENDSTOPS를 사용하여 엔드스탑 상태가 정상인지 확인합니다. - 팬, 히터, 프로브를 개별적으로 테스트하고 여러 주변 장치를 동시에 테스트하지 마십시오.
- 예를 들어
1mm또는5mm와 같이 작은 거리로 이동하여 모터 방향을 테스트합니다. - 방향, 엔드스탑, 온도, 팬이 모두 정상인지 확인한 후 귀환 및 출력 테스트를 수행합니다.
일반적인 문제
| 현상 | 일반적인 원인 | 처리 방향 |
|---|---|---|
| 모터가 움직이지 않음 | enable_pin 레벨 오류, 드라이버 통신 핀 오류, 드라이버 모델 설정 불일치 | enable_pin에 !가 필요한지 확인, TMC 설정 섹션 대조 |
| 모터 방향 반대 | dir_pin 레벨 방향 불일치 | dir_pin 앞에 ! 추가 또는 제거 |
| 엔드스탑이 계속 트리거됨 | endstop_pin 위상 또는 풀업 설정 불일치 | ^ 및 ! 확인, QUERY_ENDSTOPS 실행하여 검증 |
| 저장 후 핀 중복 오류 발생 | 동일 GPIO가 여러 기능에 동시 사용됨 | 오류 메시지의 핀 이름 검색, 중복 항목 삭제, 주석 처리 또는 변경 |
| TMC 통신 오류 | uart_pin / cs_pin / SPI 핀 오류, 또는 드라이버 모델 불일치 | 메인보드 드라이버 위치에 따라 통신 핀 재확인 |
| 히터 반응 없음 | heater_pin 잘못 입력, 또는 제어 불가능한 출력 포트에 연결됨 | 히터 포트 번호와 메인보드 자료 대조 |
| 온도 표시 이상 | sensor_pin 또는 sensor_type 불일치 | 서미스터 포트 및 서미스터 유형 대조 |
| 팬 제어 불가 | pin 잘못 입력, 또는 상시 작동 팬 포트에 연결됨 | 제어를 지원하는 팬 포트로 변경하고 설정 수정 |
메인보드 설치에 대한 더 많은 주의 사항은 다음을 참조하십시오: 메인보드 일반 주의 사항.
핀 오류 문제 해결: Unknown pin / pin used multiple times