USB 펌웨어 컴파일
스위치 확인
- 정상 사용 시,
스위치를 위로 올려주세요 - 스위치를 조작할 때는
끝까지 위로 올려주세요, 그렇지 않으면 하위 기기에 연결되지 않을 수 있습니다!!!
상위 기기에 SSH 연결
- 펌웨어 컴파일 전에
WiFi를 통해 상위 기기에 SSH 연결해야 합니다
- USB 펌웨어 플래싱
- USB 펌웨어 수동 컴파일
USB 펌웨어 플래싱
- FLYOS-FAST 시스템에는 미리 컴파일된 USB 펌웨어가 포함되어 있으므로, 수동으로 펌웨어를 컴파일할 필요 없이 아래 명령어를 실행하여 플래싱할 수 있습니다
수동으로 USB 펌웨어 컴파일을 선택하여 직접 펌웨어를 컴파일할 수도 있습니다
- SSH를 통해 상위 기기에 연결한 후 아래 명령어를 입력하세요
fly-flash -d auto -h -f /usr/lib/firmware/klipper/stm32h723-128k-usb.bin
펌웨어 컴파일 간단 가이드
주의사항
- 네트워크: 상위 컴퓨터(라즈베리파이 등)가 인터넷에 연결되어 있는지 확인하세요.
- 로그인 방식: 반드시 SSH를 통해 네트워크로 로그인하고, 시리얼 포트는 비활성화하세요.
- 입력기: 키보드를 영문 반각 모드로 유지하세요.
SSH 로그인 및 사용자 전환
MobaXterm, PuTTY 등의 도구를 사용하여 상위 컴퓨터에 SSH로 로그인하세요.
사용자 전환:
- 일반 시스템(라즈베리파이 공식 시스템 등)
root사용을 금지하며, 일반 사용자로 전환해야 합니다:su <사용자명> - FLY 상위 컴퓨터(FlyOS-FAST 시스템)
root사용자 로그인만 지원합니다(비밀번호:mellow).
펌웨어 컴파일 작업 가이드
Klipper 펌웨어 구성 인터페이스에서는 키보드 조작만 지원하며, 마우스는 사용할 수 없습니다.
| 키 | 기능 |
|---|---|
| ↑ / ↓ | 커서를 위아래로 이동하여 메뉴 항목 선택 |
| Enter / 스페이스바 | 선택 확인, 옵션 체크 또는 하위 메뉴 진입 |
| ESC | 상위 메뉴로 돌아가기 |
| Q | 구성 인터페이스 종료 |
| Y | 종료 시 메시지가 나타나면 Y를 눌러 구성 저장 |
펌웨어 컴파일 시작하기
아래에서는 펌웨어를 컴파일하는 방법을 설명합니다:
-
SSH에 연결한 후 다음 명령어를 입력하고
Enter키를 누릅니다:cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig여기서
rm -rf ~/klipper/.config && rm -rf ~/klipper/out은 이전 컴파일 구성과 펌웨어를 삭제하는 데 사용됩니다;make menuconfig는 Klipper 펌웨어 구성 인터페이스를 여는 데 사용됩니다. -
아래 순서대로 항목별로 설정하며, 각 항목을 완료한 후 다음 항목을 진행합니다.
1启用 Enable extra low-level configuration options(Top)Klipper Firmware Configuration2Micro-controller Architecture 选择 STMicroelectronics STM32(Top)Klipper Firmware Configuration3Processor model 选择 STM32H723(Top)Klipper Firmware Configuration4Bootloader offset 选择 128KiB bootloader(Top)Klipper Firmware Configuration5Clock Reference 选择 25 MHz crystal(Top)Klipper Firmware Configuration6Communication interface 选择 USB (on PA11/PA12)(Top)Klipper Firmware Configuration7USB ids 保持默认,无需进入(Top)Klipper Firmware Configuration8GPIO pins to set at micro-controller startup 保持为空(Top)Klipper Firmware Configuration9GPIO state at micro-controller startup 选择 Not set此项是 FLYOS-Klipper 功能。通常保持
Not set;如需设置全部 GPIO 的启动状态,请先阅读 GPIO 启动状态使用说明。(Top)Klipper Firmware Configuration10按 Q 键退出配置界面(Top)Klipper Firmware Configuration11出现 Save configuration 时按 Y 保存配置QuitSave configuration?(Y)es(N)o(C)ancel -
위의 마지막 두 단계를 완료한 후
Q를 눌러 구성 인터페이스를 종료하고,Y를 눌러 구성을 저장합니다. -
명령줄로 돌아간 후 다음 명령어를 입력하고
Enter키를 눌러 컴파일을 시작합니다:make -j4root@flyos-11e5f8 ~/klipper # make -j4Compiling out/src/stm32/stm32h7_adc.oCompiling out/src/stm32/stm32h7_spi.oCompiling out/src/stm32/stm32f0_i2c.oCompiling out/src/stm32/usbotg.oCompiling out/src/stm32/chipid.oCompiling out/src/generic/usb_cdc.oCompiling out/src/stm32/hard_pwm.oPreprocessing out/src/generic/armcm_link.ldBuilding out/compile_time_request.oVersion: XXXXLinking out/klipper.elfCreating bin file out/klipper.bin终端末尾出现
Linking out/klipper.elf和Creating bin file out/klipper.bin,即表示编译成功。 实际编译时,部分 Compiling 行和 Version 会随 Klipper 与系统版本变化。
펌웨어 플래싱
아래 명령어를 실행하여 펌웨어를 플래싱하세요
fly-flash -d auto -h -f /data/klipper/out/klipper.bin
HID 플래싱 실패 메시지
아래 그림과 같은 메시지가 표시되면 다음 단계를 따라 확인하세요:
- DIP 스위치 위치가 올바른지 확인합니다.
- DIP 스위치가 올바름에도 플래싱이 실패하면 BL 펌웨어 플래싱을 참고하세요.
USB ID 검색하기
- 브라우저를 열고 주소창에 상위 컴퓨터의 IP 주소를 입력합니다. 예를 들어 제 상위 컴퓨터 IP가
192.168.101.179라면 직접 입력한 후 엔터를 누릅니다.
- 상위 컴퓨터의 WEB 인터페이스를 열고 왼쪽 사이드바의 구성 옵션에서 다음을 찾습니다:
Loading... |
Loading... |
printer.cfg를 클릭하여 들어간 후, 오른쪽 상단의DEVICES를 클릭합니다.
Loading... | Loading... |
SERIAL을 클릭한 후 새로고침합니다.
Loading... |
Loading... |
- ID를 복사합니다. 화살표가 가리키는 곳을 클릭하면 복사됩니다.
Loading... |
Loading... |
USB ID 입력하기
아래 ID는 사용할 수 없습니다!!!!
serial: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
DEVICES를 닫고 ID를 입력합니다.
- 설정 파일의 다음 내용을:
[mcu]
serial: /tmp/klipper_host_mcu
- 다음과 같이 수정합니다:
[mcu host]
serial: /tmp/klipper_host_mcu
- 그리고 다음을 추가합니다:
[mcu]
serial: <여기에 방금 조회한 ID를 넣으세요>
Loading... |
Loading... |
- ID를 설정에 입력합니다.
- ID를 입력한 후 오른쪽 상단의
SAVE & RESTART를 클릭합니다.
Loading... | Loading... |
- Klipper에서
ADC out of range오류가 발생하는 것은 정상적인 현상입니다. 히트베드와 서미스터를 메인보드에 연결하고, 노즐과 히트베드의 서미스터 핀을 올바르게 설정한 후 저장하고 재시작하면 됩니다.
주의: 문서에 나온 모든 ID는 예시입니다. 실제 각 메인보드의 ID는 모두 다르므로, 실제로 얻은 ID를 입력하십시오.