Запись прошивки CAN через USB-мост
Начало компиляции
- Для использования необходим компьютер с установленной службой
klipperПодключение по сети через SSH - И подключите устройство к компьютеру
- Примечание: используйте обычный компьютер, например, Raspberry Pi, FLY Pi и т.д. Если это модифицированный компьютер (например, Wi-Fi-палка, Redmi и т.д.), из-за большого количества проблем мы не можем предоставить техническую поддержку
- Важные моменты для системы FlyOS-Armbian и обычных систем
- Важные моменты для системы FlyOS-FAST
- Важные моменты для системы
FlyOS-Armbianи обычных систем- Обычные компьютеры, такие как Raspberry Pi, FLY Pi и т.д., относятся к этому типу
- Не используйте пользователя
ROOTдля любых действий на этом компьютере - Используйте обычного пользователя
- Способ переключения пользователя: для системы
FlyOS-Armbianиспользуйте командуsu fly, чтобы переключиться на обычного пользователя - Для других систем используйте команду
su <имя пользователя вашего компьютера>, чтобы переключиться на обычного пользователя
su <имя пользователя вашего компьютера>
- Важные моменты для системы
FlyOS-FAST- Имя пользователя по умолчанию для системы
FAST—root, пароль —mellow - Компиляция прошивки должна выполняться только пользователем
root - Система
FASTимеет только пользователяROOT, вам не нужно переключаться на другого пользователя!!!
- Имя пользователя по умолчанию для системы
- Убедитесь, что хост-компьютер может нормально подключаться к сети
- Перед компиляцией прошивки необходимо использовать SSH через сеть для входа на хост-компьютер
- Не используйте инструменты последовательного порта для входа на хост-компьютер
Инструкция по компиляции прошивки Klipper и работе с конфигурационной страницей
Убедитесь, что режим ввода клавиатуры установлен в полуширинный (английский режим)
- Клавиша
↑, клавиша↓на клавиатуре используются для перемещения курсора вверх или вниз для выбора пунктов меню - Клавиша подтверждения
Enterили пробелSpaceиспользуется для выбора пунктов меню или перехода к подменю - Клавиша выхода
ESCиспользуется для возврата на предыдущий уровень меню - Клавиша
Qиспользуется для выхода из конфигурационной страницы прошивки Klipper - При выходе из конфигурационной страницы прошивки Klipper, если появляется запрос, нажмите клавишу
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используется для компиляции прошивки. После выполнения должна появиться следующая интерфейс:
-
Выберите Enable extra low-level configuration options и нажмите Enter

-
Перейдите в меню Micro-controller Architecture затем выберите STMicroelectronics STM32 и нажмите Enter

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

-
Выберите Bootloader offset, выберите: 128KiB bootloader

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

-
Выберите Communication interface, выберите: USB to CAN bus bridge (USB on PA11/PA12)

- Нажмите клавишу
Q, появится Save configuration, затем нажмите клавишуY - Теперь конфигурация должна быть сохранена и вы возвращены к интерфейсу командной строки
- Введите следующую команду для начала компиляции, это займёт некоторое время
make -j4

-
Если компиляция успешна, в конце будет выведено следующее содержимое
Linking out/klipper.elf
Creating bin file out/klipper.bin
Проверка режима прошивки
- После подключения платы к компьютеру с помощью кабеля TypeC, дважды нажмите кнопку reset, на плате должен начать мигать светодиод.
- Если светодиод не мигает, перезапишите загрузчик katapult: Прошивка katapult
- Если светодиод не мигает, после прошивки загрузчика katapult выполните следующий шаг
Поиск устройства
- Теперь, когда вы успешно вошли в верхний компьютер, вы можете ввести
lsusbдля поиска устройств. Возможны следующие варианты:- Если при вводе
lsusbпоявляется сообщение о том, что командаlsне найдена, введите следующую команду для установки утилиты:sudo apt-get install usbutils - Если после ввода
lsusbничего не происходит, это проблема системы, которую мы не в силах решить. Вам необходимо сменить систему или воспользоваться заведомо рабочей системой. - Появляется информация, как на изображении ниже (только для справки). Главное — убедиться, что отображается
1d50:606f:
- Если при вводе
1d50:606f— это устройство, которое вы будете использовать на данном этапе.- Если есть несколько устройств
1d50:606f, необходимо исключить одно из них, иначе это повлияет на последующую прошивку и подключение прошивки. Например, если используетсяFLY MINI PAD, рекомендуется использовать встроенныйUTOC, а не другие устройства моста CAN. - Если устройство не обнаружено, проверьте, правильно ли подключен кабель и правильно ли записана прошивка.
Поиск CAN ID возможен только при наличии 1d50:606f
Прошивка
- Для установки плагина прошивки требуется подключение к интернету. Убедитесь, что ваш хост-компьютер подключен к интернету.
- Если установка уже выполнялась, повторно устанавливать не нужно.
Начало прошивки
-
Для хост-компьютеров, отличных от fly, обязательно выполните следующий код для установки пакета зависимостей прошивки! В противном случае прошивка не сможет быть выполнена!
- Основной репозиторий
- Китайский репозиторий
cd && git clone https://github.com/Arksine/katapult.gitcd && git clone https://gitee.com/MrCakeFuck/katapult.git
-
Используйте следующую команду для поиска идентификатора вашего устройства. Должен отобразиться идентификатор, как показано на изображении ниже (примечание: показанный идентификатор приведен только в качестве примера, идентификатор каждой платы различается)
ls /dev/serial/by-id/*
-
Для прошивки прошивки используйте следующий код. Убедитесь, что прошивка уже скомпилирована, замените
<ваш идентификатор платы>на идентификатор, полученный на предыдущем шаге
- Метод прошивки для Fly-Armbian и обычного хост-компьютера
- Метод прошивки для Fly-FAST
~/klippy-env/bin/python ~/katapult/scripts/flashtool.py -d /dev/serial/by-id/<ваш идентификатор платы>
python ~/katapult/scripts/flashtool.py -d /dev/serial/by-id/<ваш идентификатор платы>
-
См. ниже справочное изображение:
-
Результат после прошивки:

Обновление прошивки
- Обновление USB-прошивки
- Обновление прошивки CAN-моста
-
Используйте следующую команду для поиска идентификатора вашей платы. Должен отобразиться идентификатор, как показано на изображении ниже (примечание: показанный идентификатор приведен только в качестве примера, идентификатор каждой платы различается)
ls /dev/serial/by-id/*
В нижнем изображении /dev/serial/by-id/usb-katapult_rp2040_E662549553642032-if00 — это идентификатор платы

-
Для обновления USB-прошивки после компиляции новой прошивки выполните следующую команду. Замените
<ваш идентификатор платы>на идентификатор, полученный на предыдущем шагеcd ~/klipper/ && make flash FLASH_DEVICE=<ваш идентификатор платы>
- Для обновления прошивки CAN-моста USB после компиляции новой прошивки необходимо выполнить следующую команду, чтобы перезагрузить в Katapult. (Как показано на изображении ниже, идентификатор на изображении приведен только в качестве примера, используйте идентификатор из вашего конфигурационного файла)
<CANBUS UUID>— это UUID CANBUS вашей платы в вашем конфигурационном файле printer.cfg
- Метод перезагрузки в режим прошивки для Fly-Armbian и обычного хост-компьютера
- Метод перезагрузки в режим прошивки для Fly-FAST
- Замените
<ваш идентификатор платы>на идентификатор, полученный на предыдущем шаге~/klippy-env/bin/python3 ~/katapult/scripts/flashtool.py -i can0 -r -u <CANBUS UUID>
- Замените
<ваш идентификатор платы>на идентификатор, полученный на предыдущем шагеpython3 ~/katapult/scripts/flashtool.py -i can0 -r -u <CANBUS UUID>
- На изображении ниже
f95cee90e1f9— это UUID CANBUS вашей платы

-
После перезагрузки в Katapult используйте следующую команду для поиска идентификатора вашей платы. Должен отобразиться идентификатор, как показано на изображении ниже (примечание: показанный идентификатор приведен только в качестве примера, идентификатор каждой платы различается)
ls /dev/serial/by-id/*
На изображении ниже /dev/serial/by-id/usb-Klipper_stm32f072xb_43002C000951324757373520-if00 — это идентификатор платы

-
Убедитесь, что новая прошивка уже скомпилирована перед выполнением команды прошивки. Замените
<ваш идентификатор платы>на идентификатор, полученный на предыдущем шагеcd ~/klipper/ && make flash FLASH_DEVICE=<ваш идентификатор платы>
Метод восстановления при ошибочной прошивке
- Отключите питание платы, затем подайте его снова и дважды быстро нажмите кнопку сброса (reset), чтобы снова войти в режим прошивки.
- Либо перепрошейте плату Katapult с помощью Windows/хост-компьютера Прошить Katapult прошивку