Загрузка прошивки 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, выберите STM32F072 и нажмите Enter
-
Выберите Bootloader offset, выберите: 8KiB bootloader
-
Выберите Communication interface, выберите: USB to CAN bus bridge (USB on PA11/PA12) и нажмите Enter
-
Выбрали USB to CAN bus bridge (USB on PA11/PA12), параметр по умолчанию не нужно изменять CAN bus interface (CAN bus (on PB8/PB9))--->
-
Пожалуйста, сверьтесь с нижеследующим изображением, чтобы убедиться, что настройки совпадают, и только потом начинайте компиляцию
- Нажмите клавишу
Q
, появится Сохранить настройку, нажмите теперь клавишуY
- Теперь конфигурация сохранена и вы вернулись в командную строку
- Введите следующую команду для начала компиляции, время немного длинное
make -j4

-
Если в конце появится следующее сообщение, значит компиляция успешна
Linking out/klipper.elf
Creating hex file out/klipper.bin
Проверьте, находится ли в режиме загрузки
- Подключите материнскую плату к компьютеру с помощью кабеля TypeC, затем нажмите дважды на кнопку reset, в этот момент на материнской плате будет мигать светодиод.
- Если светодиод не мигает, повторно загрузите прошивку katapult:Загрузка прошивки katapult
- Если светодиод не мигает, после загрузки прошивки katapult выполните следующий шаг
- Убедитесь, что хостовое устройство подключено к сети и что кабель данных, соединяющий хостовое устройство с целевым устройством, имеет функцию передачи данных.
- После SSH-подключения к хостовому устройству введите команду
lsusb
и нажмите Enter. Если появляется информация, выделенная на нижеприведенном изображении, можно переходить к следующему шагу.- Если нет никакого ответа, это проблема системы хостового устройства, и мы бессильны. Вам нужно заменить систему, которая работает нормально, или заменить хостовое устройство.
- Если появляется сообщение об отсутствии команды
lsusb
, выполните следующую команду для установки:sudo apt-get install usbutils
1d50:6177
является устройством, которое вам нужно использовать.- Некоторые хостовые устройства могут не показывать или частично показывать устройство из-за проблем с системой.
- Если команда
lsusb
показывает устройство, но без1d50:6177
, попробуйте заменить кабель данных и подключить материнскую плату к другому USB-порту хостового устройства.
- Если вы ранее выполнили вышеуказанные шаги и успешно прошили фирменное ПО Klipper, а материнская плата работает нормально, и вам нужно только обновить фирменное ПО Klipper, просто ознакомьтесь с разделом «Обновление прошивки» в правом меню этой страницы.
Перед выполнением следующего шага обязательно необходимо найти устройство 1d50:6177
.
Загрузка прошивки
- Для установки плагина прошивки требуется подключение к интернету. Убедитесь, что ваш хост-компьютер подключен к интернету.
- Если установка уже выполнялась, повторно устанавливать не нужно.
Начало прошивки
-
Для хост-компьютеров, отличных от fly, обязательно выполните следующий код для установки пакета зависимостей прошивки! В противном случае прошивка не сможет быть выполнена!
- Основной репозиторий
- Китайский репозиторий
cd && git clone https://github.com/Arksine/katapult.git
cd && 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 прошивку