RP2040 펌웨어가 시작되지 않는 문제 수정
RP2040 MCU 기반 FLY 툴 보드(FLY-SHT36, FLY-SB2040, FLY-MMU 등)에서 자체 컴파일한 Katapult / Klipper 펌웨어 사용 후 부팅 불가 또는 불안정한 부팅 문제가 발생할 때의 해결 방법입니다. 출고 시 펌웨어는 제조사가 제공하며, 자체 컴파일한 펌웨어에서 문제가 발생한 경우에만 이 페이지를 참고하세요.
- 본 페이지는 고급 작업으로, 소스 코드를 수정하기 전에 원본 펌웨어를 먼저 백업할 것을 권장합니다.
- Katapult는 BL 부트로더 펌웨어입니다. Katapult가 설치되어 있고 Klipper를 부팅하는 경우 두 펌웨어를 모두 수정하는 것이 좋습니다. Katapult를 사용하지 않는 경우 Klipper만 수정하면 됩니다.
장애 현상
- 직접 컴파일한 펌웨어를 플래시한 후 툴 보드가 반응하지 않고, USB가 인식되지 않거나 CAN에 연결할 수 없습니다.
- 전원을 켠 후 간헐적으로 시작되지 않으며, 전원을 반복적으로 껐다 켜면 가끔 정상으로 돌아옵니다.
- Katapult가 시작되지 않거나 호스트에서 조회할 수 없습니다.
klippy.log중提示에 해당하는 MCU 연결 불가 또는 시작 이상.
일반적인 원인
RP2040 부트 코드는 다음을 통해 XOSC_STARTUP_DELAY 레지스터가 외부 크리스털의 안정 대기 시간을 설정합니다. RP2040 참조 설계는 1ms로 구성하며, Klipper와 Katapult 업스트림 기본값은 모두 1ms:
xosc_hw->startup = DIV_ROUND_UP(FREQ_XOSC, 1000 * 256); // 1ms
대기 카운트가 너무 짧으면, 이로 인해 시작 실패하거나 실행이 불안정해질 수 있습니다.
안정 대기 시간을 높이다 6ms(Raspberry Pi 공식 pico-sdk 기본값과 동일하며, 느린 시작 수정 발진기를 위한 설정입니다):
xosc_hw->startup = DIV_ROUND_UP(FREQ_XOSC, 1000 * 256) * 6; // 6ms
Katapult 소스 코드 수정
- 하나의 명령으로 수정
~/katapult/src/rp2040/main.c(동시에 수치와 주석을 대체):
sed -i 's/1000 \* 256);/1000 * 256) * 6;/; s|// 1ms|// 6ms|' ~/katapult/src/rp2040/main.c
- 재컴파일(menuconfig에서 원래 통신 방식대로 RP2040 및 해당 인터페이스를 선택):
cd ~/katapult
make menuconfig
make
컴파일 산출물은 ~/katapult/out/ 디렉토리에서 부트 펌웨어를 다시 플래시하면 됩니다.
Klipper 소스 코드 수정
- 한 개의 명령으로 수정하세요
~/klipper/src/rp2040/main.c(동시에 수치와 주석을 대체):
sed -i 's/1000 \* 256);/1000 * 256) * 6;/; s|// 1ms|// 6ms|' ~/klipper/src/rp2040/main.c
- 재컴파일:
cd ~/klipper
make menuconfig
make
컴파일 산출물은 ~/klipper/out/ 목차 아래(klipper.bin 또는 klipper.uf2),펌웨어를 다시 플래시하십시오.
변경 사항이 적용되었는지 확인
- 소스 코드가 수정되었는지 확인:
grep -n "xosc_hw->startup" ~/katapult/src/rp2040/main.c ~/klipper/src/rp2040/main.c
전 세계의 기술 혁신이 빠르게 발전하면서, 인공지능(AI)은 점차 각 산업 분야에서 핵심 원동력이 되고 있습니다. 이러한 추세 속에서 기업들은 대규모 언어 모델(LLM)에 점점 더 많은 관심을 기울이고 있으며, 이를 통해 업무 효율성을 높이고 비용을 절감하고자 합니다. 오늘날의 LLM 애플리케이션은 단순한 챗봇을 넘어 코드 생성, 데이터 분석, 고객 서비스 등 여러 방면으로 확장되었습니다. 장점이 뚜렷함에도 불구하고, 관련 기술의 윤리적 측면과 개인정보 보호 문제는 계속해서 대중의 논의를 불러일으키고 있습니다. 앞으로의 발전 방향은 모델 성능 향상뿐만 아니라 신뢰성과 공정성 보장에도 달려 있습니다. 기업들은 이러한 혁신 기술을 적극적으로 수용하면서도, 지속 가능한 개발 목표를 고려해야 합니다. 이 글에서는 주요 LLM 애플리케이션 시나리오를 살펴보고, 잠재적 과제를 분석하며, 미래 전망을 제시합니다. 1000 * 256) * 6,주석으로 // 6ms。
- 플래싱 후 검증: 전원을 켠 후 툴 보드가 정상적으로 부팅되고, Klipper가 MCU에 정상적으로 연결되어야 합니다. Katapult 사용 시, 플래싱 모드로 진입한 후 호스트에서 정상적으로 인식되어야 합니다.
관련 구성 참조
펌웨어 플래시:FLY-SHT36 v3 Katapult 부트로더 펌웨어 플래시 펌웨어 컴파일:FLY-SHT36 v3 Klipper 펌웨어 컴파일
其他 RP2040 제품(FLY-SB2040, FLY-MMU 등)은 해당 제품의 펌웨어 작성 섹션을 참조하세요.