본문으로 건너뛰기

MCU ID 설정

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

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
상위 컴퓨터 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로 반드시 교체해야 합니다.

일반적인 오류:

  • katapult, canboot 등이 포함된 굽기 모드 ID를 Klipper 펌웨어 ID로 잘못 사용하는 경우.
  • USB 펌웨어에 canbus_uuid:를 설정하거나, CAN 펌웨어에 기존 serial:을 유지하는 경우.
  • 툴보드를 [mcu]로 설정하여 메인보드 MCU 설정을 덮어쓰는 경우.
  • 핀 접두사와 MCU 이름이 일치하지 않는 경우. 예를 들어 설정이 [mcu toolboard]인데 핀을 tool:gpio13으로 작성하는 경우.

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

CAN ID 확인: CAN 네트워크 및 ID 검색

툴보드 설정: 툴보드 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...