본문으로 건너뛰기

RS232 펌웨어 컴파일

컴파일 시작

  • klipper 서비스가 설치된 상위기기를 사용해야 합니다. 네트워크를 통해 SSH 연결하기
  • 그리고 장치를 상위기에 잘 연결해야 합니다.
  • 주의: 일반적인 상위기기를 사용하십시오. 예를 들어 라즈베리 파이 FLY 패 등입니다. WiFi 스틱, 홍미폰 등의 모modified 상위기는 지원 문제가 많아 기술 지원을 제공할 수 없습니다.
경고
  • ROOT 사용자를 일반 사용자로 전환하려면 아래 명령어를 입력할 수 있습니다.
  • ROOT 사용자는 사용하지 마십시오.
  • fly 사용자는 다음을 입력할 수 있습니다: su fly. fly 사용자가 아닌 경우 <상위기기 사용자 이름>을 상위기기의 사용자 이름으로 바꾸십시오!
su <상위기기 사용자 이름>
  • 请确保上位机可以正常联网
  • 固件编译前需要使用SSH通过网络登录上位机
  • 请不要使用串口工具登录上位机

Klipper固件编译和配置页面操作说明

请确保键盘输入法为半角模式,即英文模式

  1. 键盘上键,下键,用于上下移动光标来选中菜单项
  2. 确认键Enter 或 空格键Space,用于勾选菜单或进入子菜单
  3. 退出键ESC,用于返回上一级菜单
  4. Q键,用于退出Klipper固件配置页面
  5. Y键,在退出Klipper固件配置页面时,如果有提示,则点击Y键保存配置文件
경고

如果配置页面选项比较少,请先勾选[ ] Enable extra low-level configuration options,用于显示部分隐藏选项

아래는 펌웨어를 컴파일하는 방법입니다:

  • SSH에 연결한 후 다음 명령을 입력하고 Enter를 누릅니다:

    cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig
  • 여기서 rm -rf ~/klipper/.config && rm -rf ~/klipper/out은 이전에 컴파일된 데이터와 펌웨어를 삭제하고, make menuconfig는 펌웨어를 컴파일합니다. 실행 후 아래와 같은 인터페이스가 나타나야 합니다

  • Enable extra low-level configuration options를 선택하고 Enter를 누릅니다

  • Micro-controller Architecture 메뉴로 들어간 후 STMicroelectronics STM32를 선택하고 Enter를 누릅니다

  • Processor model 메뉴로 들어가서 STM32H723를 선택하고 Enter를 누릅니다

  • Bootloader offset를 선택하고 NO bootloader를 선택합니다

  • **Clock Reference (8 MHz crystal)**를 선택하고 25 MHz crystal를 선택합니다

  • Communication interface를 선택하고 **Serial (on USART1 PA10/PA9)**를 선택합니다

  • 마이크로 컨트롤러 시작 시 GPIO 핀을 설정하려면, 입력: !PA15 请注意!는 대문자입니다

  • Q 키를 누르면, Save configuration이 나타나고 이때 다시 Y 키를 누릅니다

  • 이제 설정이 저장되고 명령줄 인터페이스로 돌아왔습니다

  • make -j4를 입력하여 컴파일을 시작합니다. 시간이 좀 걸립니다

  • 마지막으로 아래 내용이 출력되면 컴파일 성공입니다

    Linking out/klipper.elf
    Creating hex file out/klipper.bin

플래시 모드 진입

위쪽이 리셋 버튼, 아래쪽이 부트 버튼입니다

  • DFU 모드로 진입하는 방법은 두 가지가 있습니다
  • 첫 번째: 보드 전체 전원을 완전히 끈 상태에서 부트 버튼을 누른 후 데이터 전송용 케이블의 한쪽을 보드에 연결하고 다른 쪽을 호스트 기기에 연결합니다
  • 두 번째: 데이터 전송용 케이블의 한쪽을 보드에 연결하고 다른 쪽을 호스트 기기에 연결한 후, 부트 버튼을 누른 다음 리셋 버튼을 누르고 리셋 버튼을 먼저 놓고 마지막으로 부트 버튼을 놓습니다

플래시 모드 진입 확인

  • 상위기기는 정상적으로 인터넷에 연결되어 있는지 확인하세요.

  • 하위기기가 상위기기를 통해 데이터 전송 기능을 가진 USB 케이블로 연결되어 있는지 확인하세요.

  • SSH를 통해 상위기에 접속한 후 lsusb를 입력하고 Enter를 누르면 다음 세 가지 중 하나가 나타날 수 있습니다.

    • 연결된 USB 장치가 식별됨을 표시합니다.
    • ls 명령어가 없다는 오류 메시지가 표시되면 이 명령어를 실행하여 설치할 수 있습니다.
      sudo apt-get install usbutils
    • 오류 없이 아무 정보도 표시되지 않으면 (시스템 문제가 발생했으므로) 시스템을 교체해야 합니다.
  • lsusb를 입력한 후 아무 반응도 없으면 시스템 문제로 해결할 수 없습니다. 정상적인 시스템으로 교체해야 합니다.

  • 아래 이미지에서 원으로 표시된 정보가 나타나면 다음 단계로 진행할 수 있습니다.

  • 0843:df11는 이번에 사용할 장치입니다. 뒤의 메시지는 시스템 문제로 인해 완전히 표시되지 않을 수 있으므로 무시하셔도 됩니다.

  • 그렇지 않다면 데이터 케이블이 제대로 연결되었는지 또는 메인보드가 DFU 모드로 진입했는지 확인하세요.

주의사항

0843:df11가 있을 때만 다음 단계로 진행하세요.

펌웨어 플래시

  1. 프로그래밍 도구 설치
  • FLY 상위기기에서는 프로그래밍 도구 설치가 필요하지 않습니다.
  • 설치가 필요한 경우 주의하세요: 상위기기는 인터넷에 연결되어 있어야 정상적으로 설치할 수 있습니다.
  • 이미 설치된 경우 다시 설치할 필요가 없습니다.
sudo apt update
sudo apt install dfu-util -y
  1. 다음 명령을 실행하여 연결이 성공했는지 확인하세요.
lsusb
  • DFU 장치가 없으면 다시 프로그래밍 모드로 진입해보세요.

  • 시스템 버전 문제로 다른 이름이 표시될 수 있습니다. 0483:df11이 표시되면 프로그래밍 모드에 진입한 것입니다.

  1. 펌웨어 프로그래밍
  • 아래 코드를 실행하여 프로그래밍을 시작하세요.
sudo dfu-util -a 0 -d 0483:df11 --dfuse-address 0x08000000 -D ~/klipper/out/klipper.bin
  1. 아래 그림 화살표 부분에 표시된 내용 File downloaded successfully이 나타나면 프로그래밍이 성공한 것입니다.

프로그래밍이 완료되면, 메인보드에 완전히 전원을 차단해야 합니다.

  1. 펌웨어 플래시

    sudo dfu-util -a 0 -d 0483:df11 --dfuse-address 0x08000000 -D ~/kliper/out/klipper.bin
  2. 아래 그림 화살표 부분에 표시된 내용 File downloaded successfully이 나타나면 플래시 성공입니다

플래시 작업이 완료되면, 보드의 전원을 완전히 차단해야 합니다.

펌웨어 정상 작동 확인

  • 펌웨어가 정상적으로 작동하면 LED가 켜집니다