MCU 연결 가이드
이 가이드는 MCU가 Klipper와 정상적으로 연결되지 않는 문제를 진단하고 해결하기 위한 것입니다.
준비 사항 및 주의사항
- 권장하지 않는 상위 기기: Redmi 휴대폰, WiFi 동글, 셋톱박스 등의 장치는 사용하지 않는 것이 좋습니다. 이러한 장치는 일반적으로 커스텀 또는 수정된 시스템을 사용하여 MCU를 올바르게 인식하지 못할 수 있습니다.
- 하위 기기 수 확인: 사용 중인 하위 기기(예: 툴보드)의 수를 미리 확인하십시오. 여러 개의 하위 기기가 연결에 영향을 줄 수 있습니다.
- 배선 단순화: 메인보드와 툴보드에서 데이터 케이블을 제외한 모든 배선을 일시적으로 제거하고, 필요한 데이터 연결만 유지하여 간섭을 배제하는 것이 좋습니다.
- 권장 인터페이스: Fluidd 인터페이스를 사용하는 것을 권장합니다. MCU 연결 상태를 더 직관적으로 표시합니다.
1단계: 설정 백업 및 재설정
1. 상위 기기 인터페이스 접속
브라우저에 상위 기기의 IP 주소(예: 192.168.101.179)를 입력하여 접속합니다.
2. 설정 파일 찾기
WEB 인터페이스에 진입하여 왼쪽 사이드바에서 설정 옵션을 찾습니다:
Fluidd 사용자: Loading... | Mainsail 사용자: Loading... |
3. 설정 파일 백업
printer.cfg 파일을 마우스 오른쪽 버튼으로 클릭하고 Duplicate를 선택하여 복사한 다음, 복사본 이름을 다음과 같이 변경합니다:
printer_Backup.cfg
Fluidd 작업 예시: Loading... | Mainsail 작업 예시: Loading... |
4. 설정 파일 재설정
printer.cfg를 다시 열고 모든 내용을 지운 후, 다음 기본 설정을 붙여넣습니다:
[mcu]
serial: /tmp/klipper_host_mcu
[printer]
kinematics: none
max_velocity: 200
max_accel: 1000
5. 저장 후 재시작
- 오른쪽 상단의 SAVE & RESTART를 클릭하면 Klipper가 설정을 저장하고 서비스를 재시작합니다.
- 오류가 발생하면 일단 무시하십시오.
- 그런 다음 모든 장치(상위 기기 및 모든 하위 기기)의 전원을 완전히 차단하십시오.
- 중요: 완전히 전원을 차단해야 합니다. 그렇지 않으면 후속 단계를 진행할 수 없습니다.
2단계: 장치 감지 및 펌웨어 유형 확인
전제 조건
- 주 장치 순서: 첫 번째
MCU는 메인보드여야 하며, 툴보드가 될 수 없습니다. - 펌웨어 유형: FLY 메인보드의 펌웨어가 USB 펌웨어 또는 USB 브리지 CAN 펌웨어인지 확인하십시오. 이 가이드는 다른 유형에는 적용되지 않습니다.
- 연결 방식: 먼저 SSH에 연결하십시오. 이 작업은 네트워크를 통해 수행해야 합니다.
작업 단계
-
장치 감지 실행
- SSH에 성공적으로 연결한 후 다음 명령을 실행합니다:
lsusb
- 시스템이 인식된 모든 USB 장치를 나열합니다.
- SSH에 성공적으로 연결한 후 다음 명령을 실행합니다:
-
명령어 예외 처리
lsusb명령이 없다는 메시지가 표시되면 먼저 설치하십시오:sudo apt-get install usbutils- 실행 후 장치가 전혀 표시되지 않으면 상위 기기를 교체하는 것이 좋습니다.
-
장치 정보 식별 아래 그림을 참조하여
lsusb출력 결과에서 장치를 식별하십시오:Loading...Loading... -
펌웨어 유형 확인
- 플래시한 펌웨어에 따라
lsusb결과에서 다음 주요 정보를 확인하십시오:- USB 펌웨어:
1d50:614e가 표시되어야 합니다. - USB 브리지 CAN 펌웨어:
1d50:606f가 표시되어야 합니다. - USB Katapult 펌웨어:
1d50:6177이 표시되어야 합니다. - RS232 어댑터 (UTOR 사용 또는 D8 및 D8PRO 메인보드 사용 시):
1a86:7523이 표시되어야 합니다. (G2T 사용 시 이 단계는 필요하지 않습니다.)
- USB 펌웨어:
- 플래시한 펌웨어에 따라
3단계: 장치 ID 검색
중요 설명
- USB ID 검색: USB 펌웨어에만 적용되며, CAN 또는 RS232에는 사용할 수 없습니다.
- CAN ID 검색: CAN 버스 장치에만 적용되며, USB 또는 RS232에는 사용할 수 없습니다.
- RS232 ID 검색: RS232 펌웨어에만 적용되며, USB 또는 CAN에는 사용할 수 없습니다.
- RS232 전용성: RS232 펌웨어는 일반적으로 툴보드에만 사용되며, 메인 MCU에는 적용되지 않습니다.
펌웨어 유형에 따른 방법 선택
USB 펌웨어 장치 다음 명령을 실행하여 USB 장치 ID를 검색합니다:
ls /dev/serial/by-id/*
USB 브리지 CAN 장치 시스템 유형에 따라 해당 명령을 선택하여 CAN ID를 검색합니다:
- 일반 상위 기기
- Fly_FAST 시스템
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
python ~/klipper/scripts/canbus_query.py can0
RS232 펌웨어 장치 다음 명령을 실행하여 RS232 장치 경로를 검색합니다:
ls /dev/serial/by-path/*
결과 해석 및 처리
USB ID 검색 결과
명령 실행 후 터미널에 다음과 유사한 장치 ID가 표시됩니다(예시):
-
✅ 직접 사용 가능: ID가
usb-필드 다음에Klipper로 표시된 경우 -
⚠️ 펌웨어 플래시 필요: ID가
usb-필드 다음에katapult로 표시된 경우Loading...
CAN ID 검색 결과
명령 실행 후 실제 상황에 따라 판단하십시오:
- ✅ 직접 사용 가능: 표시된 ID의 끝
Application:필드에Klipper로 표시된 경우 - ⚠️ 펌웨어 플래시 필요: 표시된 ID의 끝
Application:필드에CANBOOT또는Katapult로 표시된 경우 - ❌ 장치를 찾을 수 없음:
Total 0 uuids found가 표시되는 경우, 가능한 원인은 다음과 같습니다:- CAN 네트워크 설정 오류
- CAN 속도 불일치 (상위 기기, 메인보드, 툴보드의 속도가 일치하는지 확인)
- 해당 ID가 이미 사용 중임 (설정에서 차단한 후, 종료, 전원 차단 및 재시작 필요)
RS232 ID 검색 결과
명령 실행 후 터미널에 RS232 장치 경로가 표시됩니다(예시):
/dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
RS232 장치는 설정 시 반드시 보드레이트와 재시작 방법을 지정해야 합니다:
[mcu toolboard]
serial: <여기에 조회된 RS232 장치 경로를 입력>
baud: 250000
restart_method: command
4단계: 메인 MCU ID 설정
설정을 시작하기 전에 툴보드와 상위 기기 또는 메인보드의 연결을 분리하여 장치 인식 충돌을 방지하십시오.
printer.cfg 파일을 다시 열고 [mcu] 부분에서 serial: /tmp/klipper_host_mcu 설정 줄을 찾습니다.
연결 방식에 따라 아래 해당 방법을 참조하여 설정하십시오:
- USB 연결 설정
- CAN 연결 설정
serial: 뒤의 /tmp/klipper_host_mcu를 검색된 USB ID로 바꿉니다.
설정 예시:
# 검색된 USB ID:
# /dev/serial/by-id/usb-Klipper_stm32h723xx_12345-if00
# 설정을 다음과 같이 수정:
[mcu]
serial: /dev/serial/by-id/usb-Klipper_stm32h723xx_12345-if00
serial: /tmp/klipper_host_mcu 설정 항목을 canbus_uuid:로 바꾸고 검색된 CAN ID를 입력합니다.
설정 예시:
# 검색된 CAN ID:
# 688e89f0e401
# 설정을 다음과 같이 수정:
[mcu]
canbus_uuid: 688e89f0e401
설정을 저장하고 Klipper 서비스를 재시작합니다.
5단계: 메인 MCU 연결 확인
메인 MCU 설정을 완료한 후 연결이 성공했는지 확인해야 합니다:
- Fluidd 인터페이스를 열고 왼쪽 메뉴에서
System을 클릭합니다. - MCU 정보 확인:
Mcu Information아래에서Micro-Controller정보를 찾습니다. - 메인 컨트롤러 모델 확인: 표시된 모델이 메인보드의 실제 메인 컨트롤러 모델과 일치하는지 확인합니다.
- 컨트롤러가 STM32H723인 경우
Micro-Controller에 H723 관련 모델이 표시되어야 합니다. - 올바르게 표시되지 않거나 인식되지 않으면 이전 설정 단계를 확인하십시오.
6단계: 툴보드 MCU 추가
메인 MCU 확인이 성공하면 툴보드를 추가할 수 있습니다:
- 툴보드 다시 연결: 툴보드의 데이터 케이블을 상위 기기 또는 메인보드에 다시 연결합니다.
- 설정 파일 편집:
printer.cfg파일의 가장 아래에 툴보드 설정을 추가합니다. - 툴보드 ID 설정: 툴보드의 펌웨어 유형에 따라 새로 추가된 설정 섹션에 해당 ID를 추가합니다.
설정에서 mcu1, mcu2 등의 이름은 서로 다른 장치를 임시로 구분하는 데만 사용됩니다. 이러한 이름은 완전히 사용자 정의할 수 있으며, 설정 파일 내에서 고유하기만 하면 됩니다.
설정 형식:
[mcu mcu1]
# 여기에 툴보드의 ID 설정을 추가
설정 예시:
- USB 툴보드
- CAN 툴보드
- RS232 툴보드
[mcu mcu1]
serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_54321-if00
[mcu mcu1]
canbus_uuid: 688e89f0e402
[mcu mcu1]
serial: /dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
baud: 250000
restart_method: command
주의사항:
- 각 MCU는 고유한 ID를 사용해야 합니다. 툴보드 ID가 메인 MCU 및 다른 장치와 모두 다른지 확인하십시오.
- MCU 이름은 완전히 사용자 정의할 수 있습니다(예:
toolboard,extruder_mcu등). 설정 파일 내에서 고유하기만 하면 됩니다. - 이전 단계를 통해 유효성이 확인된 툴보드 ID를 반드시 사용하십시오.
- RS232 장치는
baud: 250000및restart_method: command매개변수를 설정해야 합니다. - 여러 개의 툴보드를 설정할 때는 각 장치에 다른 이름을 지정하여 구분하십시오.
설정을 완료한 후 Klipper 서비스를 저장하고 재시작합니다.
7단계: 모든 MCU 연결 확인
툴보드를 추가하고 Klipper를 재시작한 후 모든 MCU의 연결 상태를 다시 확인해야 합니다:
- Fluidd 인터페이스를 열고 왼쪽 메뉴에서
System을 클릭합니다. - MCU 정보 확인:
Mcu Information아래에서 모든 MCU가 올바르게 인식되었는지 확인합니다. - 각 MCU 상태 확인: 메인 MCU와 툴보드가 모두 연결 상태로 표시되는지 확인합니다.
- 메인 MCU와 모든 툴보드가 목록에 표시되어야 합니다.
- 각 MCU의 연결 상태는 "연결됨"이어야 합니다.
- 특정 MCU가 표시되지 않거나 연결에 실패하면 해당 설정과 물리적 연결을 확인하십시오.
8단계: 펌웨어 버전 확인
모든 MCU 연결을 완료한 후 펌웨어 버전 호환성을 확인해야 합니다:
- Fluidd 인터페이스를 열고 왼쪽 메뉴에서
System을 클릭합니다. - 버전 정보 확인:
Mcu Information아래에서Version필드를 찾습니다. - 버전 일관성 확인: 모든 MCU의 펌웨어 버전이 상위 기기 Klipper 버전과 일치하는지 확인합니다.
- 사용자 정의 컴파일 펌웨어: 사전 설정된 커스텀 장치를 제외한 모든 자체 컴파일 펌웨어는 상위 기기 Klipper 버전과 일치해야 합니다.
- Fly-FAST 시스템: FAST 시스템의 펌웨어 버전은 시스템 버전과 일치하며, 컴파일된 Klipper 펌웨어는 시스템 버전과 일치합니다.
- 버전 불일치의 결과: 버전이 다른 펌웨어는 기능 이상, 통신 실패 또는 시스템 불안정을 초래할 수 있습니다.
확인要点:
- 메인 MCU와 모든 툴보드의
Version정보가 표시되고 버전이 일치해야 합니다. - 버전이 일치하지 않으면 해당 펌웨어를 다시 플래시해야 합니다.
9단계: 설정 파일 복원 및 업데이트
모든 MCU 연결이 정상임을 확인한 후 원래 설정 파일을 복원하고 MCU 설정을 업데이트해야 합니다:
-
현재 설정 파일 삭제
- 설정 파일 관리 인터페이스에서 현재
printer.cfg파일을 찾아 삭제합니다.
- 설정 파일 관리 인터페이스에서 현재
-
백업 설정 복원
- 이전에 백업한
printer_Backup.cfg파일의 이름을printer.cfg로 변경합니다.
- 이전에 백업한
-
MCU 설정 업데이트
- 복원된
printer.cfg파일을 엽니다. - 원래
[mcu]설정 섹션을 찾아 이전 단계에서 얻은 ID로 업데이트합니다:
USB 연결 설정:
[mcu]serial: /dev/serial/by-id/usb-Klipper_stm32h723xx_12345-if00# 실제 검색된 메인 MCU USB ID로 바꿉니다.CAN 연결 설정:
[mcu]canbus_uuid: 688e89f0e401# 실제 검색된 메인 MCU CAN UUID로 바꿉니다. - 복원된
-
툴보드 설정 업데이트(해당하는 경우)
- 설정 파일에서 툴보드에 해당하는
[mcu]섹션을 찾습니다. - 연결 방식에 따라 실제 검색된 툴보드 ID로 업데이트합니다:
USB 툴보드:
[mcu toolboard]serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_54321-if00CAN 툴보드:
[mcu toolboard]canbus_uuid: 688e89f0e402RS232 툴보드:
[mcu toolboard]serial: /dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0baud: 250000restart_method: command - 설정 파일에서 툴보드에 해당하는
-
저장 후 재시작
- 모든 MCU 설정 업데이트를 완료한 후 SAVE & RESTART를 클릭하여 Klipper를 저장하고 재시작합니다.
System페이지에 다시 들어가 모든 MCU 연결 상태가 정상인지 확인합니다.
- 이번 연결 테스트에서 실제 검색된 올바른 ID를 사용해야 합니다.
- 여러 개의 툴보드를 설정하는 경우 각
[mcu]섹션의 ID를 하나씩 업데이트하십시오. - RS232 툴보드는
baud: 250000및restart_method: command매개변수를 포함해야 합니다. - 설정을 복원하면 기존 프린터 매개변수(스테퍼 모터, 리미트 스위치 등 설정)는 그대로 유지됩니다.
이것으로 MCU 연결 문제 해결 및 설정 복원이 모두 완료되었습니다.