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

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

Подключение к хосту

Ограничение основного подключения

Плата Fly-D7 может общаться с хостом Klipper только через интерфейс Type-C USB.

Loading...

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

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

  • Сеть: Убедитесь, что хост-машина (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, выберите STM32F072 и нажмите Enter

    Loading...
  • Выберите Bootloader offset, затем выберите: 8KiB bootloader

    Loading...
  • В пункте Communication interface выберите: USB (on PA11/PA12) и нажмите Enter

    Loading...
  • Сверьтесь с изображением ниже, убедитесь, что все настройки совпадают, прежде чем продолжить

    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, затем дважды нажмите кнопку RST. На плате должен мигать светодиод.
Предупреждение
  • Если светодиод не мигает, перепрошейте прошивку katapult: Прошить katapult
  • Если светодиод не мигает, после прошивки katapult выполните следующий шаг.
Loading...
  • Убедитесь, что хостовое устройство подключено к сети и что кабель данных, соединяющий хостовое устройство с целевым устройством, имеет функцию передачи данных.
  • После SSH-подключения к хостовому устройству введите команду lsusb и нажмите Enter. Если появляется информация, выделенная на нижеприведенном изображении, можно переходить к следующему шагу.
    • Если нет никакого ответа, это проблема системы хостового устройства, и мы бессильны. Вам нужно заменить систему, которая работает нормально, или заменить хостовое устройство.
    • Если появляется сообщение об отсутствии команды lsusb, выполните следующую команду для установки:
      sudo apt-get install usbutils
      Loading...
  • 1d50:6177 является устройством, которое вам нужно использовать.
    • Некоторые хостовые устройства могут не показывать или частично показывать устройство из-за проблем с системой.
    • Если команда lsusb показывает устройство, но без 1d50:6177, попробуйте заменить кабель данных и подключить материнскую плату к другому USB-порту хостового устройства.
  • Если вы ранее выполнили вышеуказанные шаги и успешно прошили фирменное ПО Klipper, а материнская плата работает нормально, и вам нужно только обновить фирменное ПО Klipper, просто ознакомьтесь с разделом «Обновление прошивки» в правом меню этой страницы.
Важно

Перед выполнением следующего шага обязательно необходимо найти устройство 1d50:6177.

Прошивка

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

  • Для неофициального ПО 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...