본문으로 건너뛰기

MCU ID 설정

이 페이지는 Klipper에서 메인보드, 툴보드, CAN 장치 및 호스트 MCU의 ID 입력 규칙을 집중적으로 설명하기 위한 페이지입니다. 연결 관련 문제를 해결할 때는 먼저 통신 방식을 확인한 후 해당하는 serial: 또는 canbus_uuid:를 입력하세요.

백업 또는 최소 구성에서부터 전체 점검이 필요한 경우: 메인 MCU 연결 가이드

MCU ID 조회

ID를 입력하기 전에 SSH로 호스트에 로그인하여 해당 명령어를 실행해 실제 장치 식별자를 확인해야 합니다.

USB 장치

ls /dev/serial/by-id/*

출력 예시 (usb-Klipper_...는 Klipper 펌웨어 모드의 ID):

/dev/serial/by-id/usb-Klipper_stm32h723xx_12345-if00
펌웨어 ID와 플래싱 ID 구분
  • Klipper 펌웨어 ID 예시: usb-Klipper_stm32h723xx_12345-if00
  • 플래싱 모드 ID 예시: usb-katapult_stm32h723xx_12345-if00 (katapult 포함)
  • 플래싱 모드 ID 예시: usb-STM32_Bootloader_xxxxxxxxxxxx (Bootloader 포함)

구성 파일에는 반드시 Klipper 펌웨어 모드의 ID를 사용해야 합니다. 플래싱 모드 ID만 보인다면 툴보드가 Klipper 펌웨어 실행 상태가 아님을 의미합니다.

CAN 장치

~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0

출력 예시:

Found canbus_uuid=688e89f0e402, Application: Klipper
여러 CAN UUID

Application이 CANBOOT 또는 Katapult로 표시되는 UUID는 플래싱 모드의 ID이므로 printer.cfg에 직접 사용할 수 없습니다. 자세한 문제 해결은 CAN 네트워크 및 ID 검색을 참조하세요.

호스트 MCU

호스트 Linux 프로세스로 MCU를 시뮬레이션하는 경우 ([mcu host]), 해당 시리얼 포트는 고정되어 있습니다:

[mcu host]
serial: /tmp/klipper_host_mcu

RS232 장치

ls -l /dev/serial/by-path/

출력 예시:

/dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0

툴보드 구성: 툴보드 MCU 추가 및 크로스보드 구성

MCU ID 설정 설명

Klipper에서 MCU ID란 [mcu] 또는 [mcu xxx] 구성 섹션에서 컨트롤보드 연결을 식별하는 정보를 말합니다. 통신 방식에 따라 작성 방법이 다릅니다:

연결 방식구성 항목예시
USB 펌웨어serial:serial: /dev/serial/by-id/usb-Klipper_xxxxxxxxxxxx
CAN 펌웨어canbus_uuid:canbus_uuid: xxxxxxxxxxxx
RS232 장치serial:serial: /dev/serial/by-path/xxxxxxxxxxxx
호스트 MCUserial:serial: /tmp/klipper_host_mcu

기입 규칙:

  1. 메인보드는 기본적으로 [mcu]를 사용하고, 툴보드나 확장보드는 [mcu tool], [mcu toolboard] 등 사용자 정의 이름을 사용합니다.
  2. USB 펌웨어는 serial:만 기입하고, CAN 펌웨어는 canbus_uuid:만 기입합니다. 동일한 [mcu]에 두 항목을 동시에 유지하지 마십시오.
  3. 다중 MCU 시스템에서 각 [mcu xxx]는 실제 고유 ID를 사용해야 하며, 동일한 USB ID나 CAN UUID를 복사하지 마십시오.
  4. [mcu xxx]의 이름은 핀 접두사에 영향을 줍니다. 예를 들어 [mcu tool]의 핀은 tool:gpio13으로 작성해야 합니다. 이름의 대소문자는 일관성을 유지해야 합니다.
  5. 문서 예시의 xxxxxxxx는 직접 사용할 수 없으며, 실제 검색된 ID로 교체해야 합니다.
  6. RS232 장치는 serial: 외에도 일반적으로 baud: 250000restart_method: command를 추가로 기입해야 합니다. 해당 제품 문서를 기준으로 합니다.

일반적인 오류:

  • 플래싱 모드 ID(예: katapult, canboot가 포함된 ID)를 Klipper 펌웨어 ID로 잘못 사용하는 경우.
  • USB 펌웨어에 canbus_uuid:를 설정하거나, CAN 펌웨어에 이전 serial:을 유지하는 경우.
  • RS232 장치에서 경로만 기입하고 필요한 baud: 또는 restart_method:를 누락하는 경우.
  • 툴보드를 [mcu]로 설정하여 메인보드 MCU 구성을 덮어쓰는 경우.
  • 핀 접두사와 MCU 이름이 일치하지 않는 경우. 예: 구성이 [mcu toolboard]인데 핀을 tool:gpio13으로 작성하는 경우.

USB ID 조회: USB 펌웨어는 ls /dev/serial/by-id/*를 실행하여 ID를 확인할 수 있습니다.

CAN ID 조회: CAN 네트워크 및 ID 검색

RS232 경로 조회: ls -l /dev/serial/by-path/를 실행하여 안정적인 장치 경로를 확인합니다.

툴보드 구성: 툴보드 MCU 추가 및 크로스보드 구성

다중 MCU 구성 예시

USB 메인보드 + CAN 툴보드

USB 메인보드는 serial:로 연결하고, CAN 툴보드는 canbus_uuid:로 연결합니다:

[mcu]
serial: /dev/serial/by-id/usb-Klipper_xxxxxxxxxxxx

[mcu tool]
canbus_uuid: xxxxxxxxxxxx

[temperature_sensor ToolBoard]
sensor_type: temperature_mcu
sensor_mcu: tool

USB 메인보드 + USB 툴보드

둘 다 serial:로 연결하며 서로 다른 ID로 구분합니다:

[mcu]
serial: /dev/serial/by-id/usb-Klipper_mainboard_xxxxxxxxxxxx

[mcu toolboard]
serial: /dev/serial/by-id/usb-Klipper_toolboard_xxxxxxxxxxxx

CAN 메인보드 + CAN 툴보드

둘 다 canbus_uuid:를 사용하며 각 UUID는 반드시 달라야 합니다:

[mcu]
canbus_uuid: aabbccddeeff

[mcu toolboard]
canbus_uuid: 112233445566

호스트 MCU + USB 메인보드

호스트에서 Linux 프로세스 MCU를 실행하고 메인보드는 USB로 연결합니다:

[mcu host]
serial: /tmp/klipper_host_mcu

[mcu]
serial: /dev/serial/by-id/usb-Klipper_xxxxxxxxxxxx

자주 하는 실수

잘못된 방법올바른 방법
플래싱 모드 ID를 Klipper ID로 사용장치가 Klipper 펌웨어로 진입한 후 ID 조회
USB 펌웨어에 serial:canbus_uuid:를 동시에 입력USB 펌웨어는 serial:만, CAN 펌웨어는 canbus_uuid:만 입력
툴보드를 [mcu]로 작성하여 메인보드 구성 덮어쓰기툴보드는 [mcu toolboard] 등 사용자 정의 이름 사용
여러 MCU가 동일한 ID 공유각 MCU는 고유한 ID를 사용해야 함
핀 접두사와 MCU 이름 불일치[mcu toolboard]의 핀은 toolboard:PA0으로 작성하고 이름 대소문자 일치
문서의 xxxxxxxx를 그대로 복사하여 사용실제 검색된 실제 ID로 반드시 교체

문제 해결 진입점

문제 증상문제 해결 진입점
USB ID를 찾을 수 없거나 [Errno 2] 발생자주 발생하는 오류 개요
CAN UUID가 유효하지 않거나 장치가 오프라인CAN 네트워크 및 ID 검색
다중 MCU 연결 끊김, 구성 업데이트 불가시스템, 성능 및 서비스 오류
툴보드 추가, 크로스보드 핀 구성툴보드 MCU 추가 및 크로스보드 구성
핀 접두사, 중복 핀 또는 MCU 이름 오류구성 관련 오류
Loading...