Перейти к основному содержимому

Компиляция прошивки через USB

Начало компиляции

Краткое руководство по компиляции прошивки

Важные моменты

  • Сеть: Убедитесь, что хост-компьютер (Raspberry Pi и т.д.) подключен к сети.
  • Способ входа: Обязательно используйте SSH для входа через сеть, отключите последовательный порт.
  • Раскладка клавиатуры: Поддерживайте клавиатуру в режиме английской полуширины.

Вход по SSH и смена пользователя

Используйте такие инструменты, как MobaXterm, PuTTY и т.д., для входа на хост-компьютер по SSH.

Смена пользователя:

  • Обычная система (официальная система Raspberry Pi и т.д.)
    Запрещено использовать 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 запускает компиляцию прошивки. После выполнения должна появиться следующая интерфейс:

    Loading...
  • Выберите Enable extra low-level configuration options и нажмите клавишу Enter.

    Loading...
  • Перейдите в меню Micro-controller Architecture, затем выберите STMicroelectronics STM32 и нажмите клавишу Enter.

    Loading...
  • Перейдите в меню Processor model, выберите STM32H723 и нажмите Enter.

    Loading...
  • Выберите Bootloader offset, выберите: 128KiB bootloader.

    Loading...
  • Выберите Clock Reference (8 MHz crystal), выберите: 25 MHz crystal.

    Loading...
  • Communication interface, выберите: USB (on PA11/PA12).

    Loading...
  • Нажмите клавишу Q, появится Save configuration, затем нажмите клавишу Y.
    Loading...
  • Теперь конфигурация должна быть сохранена, и вы вернетесь в интерфейс командной строки.
  • Введите следующую команду, чтобы начать компиляцию. Это займет некоторое время.
make -j4
Loading...
  • Если в конце выводится следующее содержимое, компиляция прошла успешно.
  • В зависимости от версии Klipper достаточно появления out/klipper.bin, чтобы считать успешным.
    Linking out/klipper.elf
    Creating bin file out/klipper.bin

Проверка входа в режим прошивки

  • Подключите плату к компьютеру с помощью кабеля Type-C, затем дважды нажмите кнопку reset. При этом на плате должен мигать светодиод.
Внимание
  • Если светодиод не мигает, перепрошейте прошивку katapult: Прошить katapult
  • Если светодиод не мигает, после прошивки katapult выполните следующий шаг.

Прошивка

Начало прошивки

  • Для стороннего ПО, не от FLY, необходимо установить Katapult
  • Установить Katapult

Получение ID платы

Выполните следующую команду для поиска ID устройства. В нормальном состоянии должен отобразиться ID, похожий на показанный на изображении ниже (Обратите внимание: ID каждой платы уникален):

ls /dev/serial/by-id/*

Если в найденном ID содержится usb-katapult_stm32xxxxxxxx, можно переходить к следующему шагу.

Loading...

Прошивка прошивки

⚠️ Подготовка
  • Убедитесь, что файл прошивки уже скомпилирован.
  • Замените <ID вашей платы> в команде ниже на фактический ID, полученный на предыдущем шаге.
  • Для обычного ПО используйте следующий код:
    ~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -d <ID вашей платы>
  • Для ПО FLY используйте следующий код:
    python3 ~/katapult/scripts/flashtool.py -d <ID вашей платы>

Процесс прошивки:

Loading...

Успешная прошивка:

Loading...

Обновление прошивки

Шаги обновления прошивки по USB

  1. Запрос ID платы
ls /dev/serial/by-id/*
Ключевой момент для идентификации

В примере ниже /dev/serial/by-id/usb-katapult_rp2040_E662549553642032-if00 — это ID платы.

Loading...
  1. Обновление прошивки
cd ~/klipper/ && make flash FLASH_DEVICE=<ID вашей платы>
Внимание
  • Замените <ID вашей платы> на фактически полученный ID.
Loading...

Решение проблемы с неправильной прошивкой

Способ 1: Быстрый вход в режим прошивки

  1. Отключите питание платы.
  2. После повторного включения питания быстро нажмите кнопку RESET дважды.
  3. Снова войдите в режим прошивки.

Способ 2: Повторная прошивка прошивки Katapult

Нажмите, чтобы посмотреть руководство по прошивке Katapult
Loading...