본문으로 건너뛰기

펌웨어 컴파일 설명

중요 안전 공지

시스템 안정성을 보장하기 위해 다음 펌웨어 사용 원칙을 반드시 준수하십시오:

  • 펌웨어 컴파일 일관성: Klipper 펌웨어는 현재 사용 중인 호스트 컴퓨터에서 반드시 컴파일해야 합니다. 다른 사람이 컴파일했거나 버전이 맞지 않는 펌웨어를 사용하면 예기치 못한 시스템 장애가 발생할 수 있습니다.
  • 하드웨어 플랫폼 규범: 표준 호스트 컴퓨터 하드웨어를 적극 권장합니다. 비공식 개조 장치(예: 일부 셋톱박스, WiFi 동글 또는 특정 모델의 Redmi 장치)는 호환성 및 안정성 위험이 있으므로 사용을 피하십시오.
  • 가상화 환경 제한: 가상 머신에서 호스트 시스템을 실행하는 것은 권장되지 않습니다. 이는 성능 및 실시간성 간섭을 유발하여 인쇄 품질에 영향을 미칠 수 있습니다.

펌웨어 유형 설명

  • Katapult / HID 모드

    • 기능: 두 모드는 기능이 동일하며, 모두 무접촉 플래싱(메모리 카드를 빼고 꽂을 필요 없이 호스트 컴퓨터를 통해 직접 펌웨어 업데이트)을 구현할 수 있습니다.
    • 설명: HID는 FLY 보드 내장 호스트 컴퓨터에서 사용하는 부트로더로, 그 본질은 Katapult와 동일합니다.
    • 중요 공지: Katapult 사용 시 잘못된 펌웨어를 플래싱하여 메인보드가 응답하지 않으면, 메인보드의 리셋 버튼을 찾아 빠르게 두 번 누르면 Katapult 모드로 다시 진입하여 재플래싱할 수 있습니다.
  • Bootloader 모드

    • 기능: 메모리 카드를 통한 전통적인 플래싱 방식입니다.
    • 장점: 이 방식은 오류 허용성이 높아, 실수로 잘못된 펌웨어를 플래싱해도 메모리 카드를 다시 플래싱하여 재시도할 수 있으며 메인보드가 "벽돌"이 될 걱정이 없습니다.

펌웨어 컴파일 가이드

컴파일 준비 및 권장 사항
  • 컴파일 성공률을 극대화하기 위해 SSH 클라이언트로 MobaXterm 사용을 권장합니다. 사용자 피드백에 따르면 일부 SSH 도구는 알 수 없는 컴파일 오류를 유발할 수 있습니다.
  • 중요 구성 항목: 컴파일 구성 화면에서 Enable extra low-level configuration options 옵션을 반드시 체크하십시오. 그렇지 않으면 일부 고급 설정이 표시되지 않습니다.

시작 핀 구성 (GPIO pins to set at micro-controller startup)

중요 공지
  • 이 옵션은 마이크로컨트롤러 시작 시 특정 GPIO 핀의 레벨 상태를 강제로 설정하는 데 사용됩니다.
  • 영어 입력 모드로 전환해야 합니다. 그렇지 않으면 펌웨어를 컴파일할 수 없습니다.
  • 구성 구문:

    • 핀 앞에 !를 추가하면 시작 시 해당 핀을 LOW(저레벨)로 설정하고, !를 추가하지 않으면 HIGH(고레벨)로 설정합니다.
    • STM32 시리즈: 핀 번호는 대문자 형식을 사용해야 하며, 실제 메인보드 문서에 따라 작성하십시오.
    • RP2040 시리즈: 핀 번호는 소문자 형식을 사용해야 하며, 실제 메인보드 문서에 따라 작성하십시오.
  • 다중 핀 구성: 여러 핀을 구성해야 하는 경우 영어 쉼표 ,로 구분하십시오.

    • 예시: !<pin_a>,!<pin_b>,<pin_c>는 시작 시 처음 두 핀을 LOW로 설정하고 세 번째 핀을 HIGH로 설정함을 의미합니다.
안전성 설명

구성한 GPIO pins to set at micro-controller startup은 Klipper 연결 시작 전에만 적용됩니다. Klipper가 연결을 완료하고 정상적으로 실행되면 이 설정은 핀의 다른 어떤 작업에도 영향을 미치지 않으며 안전하게 사용할 수 있습니다.

전역 GPIO 시작 상태

FLYOS-Klipper 기능

GPIO state at micro-controller startupFLYOS-Klipper에서 제공하는 확장 기능으로, 표준 Klipper 버전에는 이 옵션이 없을 수 있습니다. 메인보드 또는 툴보드 문서에 명확한 요구 사항이 없는 경우 기본값인 **Not set**을 유지하십시오.

이 옵션은 마이크로컨트롤러 시작 단계에서 대부분의 물리적 GPIO에 통합된 초기 상태를 설정하는 데 사용됩니다. 위의 GPIO pins to set at micro-controller startup과 작동 방식이 다릅니다:

구성 항목적용 범위
GPIO pins to set at micro-controller startup입력란에 명시적으로 작성된 핀만 설정하며, !를 사용하여 각각 저레벨을 지정할 수 있습니다.
GPIO state at micro-controller startup나머지 사용 가능한 물리적 GPIO에 동일한 시작 상태를 통합적으로 설정합니다.

다음 핀은 전역 상태로 덮어쓰지 않습니다:

  • GPIO pins to set at micro-controller startup에 입력된 핀.
  • UART, USB, CAN, USB to CAN 등 현재 통신 기능을 위해 펌웨어가 예약한 핀.

선택 가능한 상태

옵션시작 단계 동작사용 권장 사항
Not set나머지 GPIO의 시작 상태를 통합적으로 수정하지 않음기본 및 권장 옵션
Input pull-up나머지 GPIO를 풀업 입력으로 구성하드웨어 설계에서 명확히 요구할 때만 사용
Input pull-down나머지 GPIO를 풀다운 입력으로 구성하드웨어 설계에서 명확히 요구할 때만 사용
Output high나머지 GPIO를 고레벨 출력으로 구성위험도가 높으므로 제품 문서에 따라서만 사용
Output low나머지 GPIO를 저레벨 출력으로 구성위험도가 높으므로 제품 문서에 따라서만 사용
전역 출력 상태를 맹목적으로 설정하지 마십시오

Output high 또는 Output low는 Klipper가 연결을 설정하기 전에 많은 GPIO의 레벨을 변경합니다. 잘못 선택하면 팬, 히터, 드라이버 인에이블 또는 기타 주변 장치가 예기치 않은 동작을 할 수 있습니다. 해당 FLY 제품 문서에 명확히 지정되지 않는 한 반드시 Not set을 선택해야 합니다.

사용 방법

  1. make menuconfig에서 Enable extra low-level configuration options을 활성화합니다.
  2. 필요한 경우 먼저 GPIO pins to set at micro-controller startup에 개별적으로 제어해야 하는 예외 핀(예: !gpio18)을 입력합니다. 여러 핀은 영어 쉼표로 구분합니다.
  3. GPIO state at micro-controller startup으로 이동합니다:
    • 일반 펌웨어는 Not set을 선택합니다.
    • 제품 문서에서 전역 상태를 명확히 요구할 때만 해당 입력 또는 출력 상태를 선택합니다.
  4. Q를 눌러 종료하고 Save configuration이 표시되면 Y를 눌러 저장한 후 다시 컴파일하고 제품 플래싱 튜토리얼에 따라 펌웨어를 업데이트합니다.
  5. 플래싱이 완료되면 하위 컴퓨터의 전원을 완전히 차단한 후 다시 전원을 켭니다.
Not set은 개별 시작 핀을 끄지 않습니다

Not set을 선택하는 것은 "나머지 GPIO를 통합적으로 수정하지 않음"을 의미할 뿐입니다. GPIO pins to set at micro-controller startup에 입력한 !gpio18, !PA15 또는 기타 핀은 각각의 구성에 따라 계속 적용됩니다.

플래싱 실패 복구 및 일반 보호
  • 잘못된 펌웨어 플래싱 보호: Katapult, HID, Bootloader 세 가지 펌웨어 유형에는 자체 보호 메커니즘이 있습니다. 특수 DFU 모드로 플래싱하지 않는 한, 메인 펌웨어를 잘못 플래싱해도 덮어쓰이지 않으며 메인보드가 "벽돌"이 되지 않습니다.
  • 플래싱 완료 후 필수 작업: 어떤 펌웨어든 플래싱이 완료된 후에는 반드시 하위 컴퓨터의 전원을 완전히 차단(전원 케이블을 뽑은 후)한 다음 다시 전원을 켜서 새 펌웨어가 올바르게 로드되고 안정적으로 실행되도록 하십시오.

펌웨어 플래싱 설명

플래싱 전 필수 공지
  • 장치 인식: Katapult로 플래싱할 때 호스트 컴퓨터가 장치를 인식할 수 있는지 확인하십시오. 장치를 찾을 수 없으면 메인보드의 리셋 버튼을 빠르게 두 번 눌러 플래싱 모드로 다시 진입하거나 메인보드의 BL 펌웨어를 다시 플래싱하십시오.
  • 규범 준수: 공식 튜토리얼의 플래싱 방법을 엄격히 준수하십시오. 검증되지 않은 다른 방법을 사용하면 장치가 손상될 수 있습니다.
  • 컴파일 확인: 플래싱 전에 펌웨어에 컴파일 오류가 없는지 반드시 확인하십시오. 잘못된 펌웨어 파일은 플래싱 실패 또는 장치 오작동을 초래할 수 있습니다.

Katapult 펌웨어 잘못 플래싱 복구

  1. 메인보드의 물리적 리셋 버튼을 찾아 빠르게 두 번 누릅니다.
  2. 정상적인 경우 Fly 메인보드의 LED 표시등 하나가 깜박이기 시작하며, 이는 Katapult 모드에 성공적으로 진입했음을 나타냅니다.
  3. 이때 Katapult 모드로 진입하여 올바른 Klipper 펌웨어를 다시 플래싱할 수 있습니다.

Bootloader 펌웨어 잘못 플래싱 복구

  1. 올바른 펌웨어가 저장된 TF 카드를 메인보드에 다시 삽입합니다.
  2. 플래싱이 안 되면 먼저 전원을 완전히 차단하고 TF 카드를 삽입한 후 다시 전원을 켭니다.
  3. 5초 동안 전원을 유지하면 자동 플래싱이 완료됩니다.

Katapult 설치 플래싱 종속성

중요
  • Fly 공식 호스트 컴퓨터가 아닌 경우 아래 명령을 실행하여 펌웨어 플래싱 종속성 패키지를 반드시 설치하십시오!
  • 아래 저장소 중 하나를 선택하면 됩니다.
  • github 저장소
    cd && git clone https://github.com/Arksine/katapult.git
  • 중국 지역 미러 저장소
    cd && git clone https://cnb.cool/3dmellow/public/katapult
Loading...

Loading...