Компиляция прошивки через 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 -j4Loading... - Если в конце появится следующий вывод, компиляция прошла успешно.
- В зависимости от версии 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, можно переходить к следующему шагу.
Прошивка прошивки
- Убедитесь, что файл прошивки уже скомпилирован.
- Замените
<Ваш ID платы>в командах ниже на фактический ID, полученный на предыдущем шаге.
- Для обычного ПК используйте код ниже:
~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -d <Ваш ID платы> - Для ПК FLY используйте код ниже:
python3 ~/katapult/scripts/flashtool.py -d <Ваш ID платы>
Пример процесса прошивки:
Пример успешной прошивки:
Обновление прошивки
- Обновление прошивки через USB
- Обновление прошивки через мостовой CAN
Шаги обновления прошивки через USB
- Запрос ID платы
ls /dev/serial/by-id/*
В примере ниже /dev/serial/by-id/usb-katapult_rp2040_E662549553642032-if00 — это ID платы.
- Обновление прошивки
cd ~/klipper/ && make flash FLASH_DEVICE=<Ваш ID платы>
- Замените
<Ваш ID платы>на фактически полученный ID.
Шаги обновления прошивки через мостовой CAN
- Сброс и вход в режим прошивки
<Ваш ID платы> — это CANBUS UUID платы, указанный в конфигурационном файле printer.cfg.
- Для обычного ПК используйте код ниже:
~/klippy-env/bin/python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <Ваш ID платы> - Для ПК FLY используйте код ниже:
python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <Ваш ID платы>
В примере ниже f95cee90e1f9 — это CANBUS UUID платы (только для примера).
- Запрос нового ID устройства
ls /dev/serial/by-id/*
- Это только для справки!
- В примере ниже
/dev/serial/by-id/usb-Klipper_stm32f072xb_38001B000551324752333720-if00— это вновь обнаруженный ID платы.
- Прошивка новой прошивки
cd ~/klipper/ && make flash FLASH_DEVICE=<Ваш ID платы>
Решение проблемы с прошивкой неправильной прошивки
Способ 1: Быстрый вход в режим прошивки
- Отключите питание платы.
- После повторного включения питания быстро дважды нажмите кнопку RESET.
- Снова войдите в режим прошивки.