Руководство по подключению MCU
Данное руководство предназначено для диагностики и решения проблем с подключением MCU к Klipper.
Подготовка и важные замечания
- Не рекомендуется использовать в качестве хоста: Избегайте устройств вроде телефонов Redmi, WiFi-адаптеров, TV-приставок и т.п. Они часто используют кастомные или модифицированные системы, что может привести к некорректному распознаванию MCU.
- Подтвердите количество подчинённых устройств: Заранее уточните количество используемых подчинённых устройств (например, плат инструментов), так как несколько устройств могут влиять на подключение.
- Упростите подключения: Рекомендуется временно отключить все провода на основной плате и плате инструментов, кроме кабеля данных, оставив только необходимые соединения для исключения помех.
- Рекомендуемый интерфейс: Рекомендуется использовать интерфейс Fluidd, так как он более наглядно отображает статус подключения MCU.
Шаг 1: Резервное копирование и сброс конфигурации
1. Доступ к интерфейсу хоста
Введите IP-адрес хоста (например: 192.168.101.179) в браузере.
2. Поиск файла конфигурации
Войдите в WEB-интерфейс, найдите опцию конфигурации на левой боковой панели:
Пользователи Fluidd: Нажмите Loading... | Пользователи Mainsail: Нажмите Loading... |
3. Резервное копирование конфигурации
Щелкните правой кнопкой мыши на файле printer.cfg, выберите Duplicate для копирования и переименуйте копию в:
printer_Backup.cfg
Пример для Fluidd: Loading... | Пример для Mainsail: Loading... |
4. Сброс конфигурации
Снова откройте printer.cfg, удалите всё содержимое и вставьте следующую базовую конфигурацию:
[mcu]
serial: /tmp/klipper_host_mcu
[printer]
kinematics: none
max_velocity: 200
max_accel: 1000
5. Сохранение и перезагрузка
- Нажмите SAVE & RESTART в правом верхнем углу. Klipper сохранит конфигурацию и перезапустит службу.
- Если появится ошибка, пока проигнорируйте её.
- Затем полностью отключите питание от всех устройств (включая хост и все подчинённые устройства).
- Важно: Необходимо убедиться, что питание отключено полностью, иначе следующие шаги будут невозможны.
Шаг 2: Обнаружение устройств и подтверждение типа прошивки
Предварительные условия
- Порядок основных устройств: Первым
MCUдолжна быть основная плата, а не плата инструментов. - Тип прошивки: Убедитесь, что прошивка вашей платы FLY — это USB-прошивка или USB-мостовая CAN-прошивка. Данное руководство не применимо к другим типам.
- Способ подключения: Сначала подключитесь по SSH. Эта операция выполняется по сети.
Действия
-
Выполните обнаружение устройств
- После успешного подключения по SSH выполните команду:
lsusb - Система выведет список всех обнаруженных USB-устройств.
- После успешного подключения по SSH выполните команду:
-
Обработка исключений команды
- Если появится сообщение, что команда
lsusbне найдена, установите её:sudo apt-get install usbutils - Если после выполнения команды устройства не отображаются, рекомендуется сменить хост.
- Если появится сообщение, что команда
-
Идентификация информации об устройстве Согласно изображениям ниже, определите ваше устройство в выводе команды
lsusb:Loading...Loading... -
Проверка типа прошивки
- В соответствии с установленной прошивкой, проверьте в выводе
lsusbследующую ключевую информацию:- USB-прошивка: Должно отображаться
1d50:614e - USB-мостовая CAN-прошивка: Должно отображаться
1d50:606f - USB Katapult-прошивка: Должно отображаться
1d50:6177 - Адаптер RS232 (используется с UTOR или платами D8 и D8PRO): Должно отображаться
1a86:7523(для G2T этот шаг не требуется)
- USB-прошивка: Должно отображаться
- В соответствии с установленной прошивкой, проверьте в выводе
Шаг 3: Поиск ID устройства
Важные замечания
- Поиск USB ID: Применим только для USB-прошивки, не работает для CAN или RS232.
- Поиск CAN ID: Применим только для устройств CAN-шины, не работает для USB или RS232.
- Поиск RS232 ID: Применим только для RS232-прошивки, не работает для USB или CAN.
- Специфика RS232: RS232-прошивка обычно используется только для плат инструментов, не для основного MCU.
Выбор метода в зависимости от типа прошивки
Устройства с USB-прошивкой Выполните следующую команду для поиска USB ID устройства:
ls /dev/serial/by-id/*
Устройства с USB-мостовой CAN-прошивкой В зависимости от типа вашей системы, выберите соответствующую команду для поиска CAN ID:
- Обычный хост
- Система Fly_FAST
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
python ~/klipper/scripts/canbus_query.py can0
Устройства с RS232-прошивкой Выполните следующую команду для поиска пути RS232-устройства:
ls /dev/serial/by-path/*
Интерпретация и обработка результатов
Результаты поиска USB ID
После выполнения команды терминал отобразит ID устройства, похожий на пример ниже:
-
✅ Можно использовать напрямую: Если после поля
usb-в ID указаноKlipper -
⚠️ Требуется прошивка: Если после поля
usb-в ID указаноkatapultLoading...
Результаты поиска CAN ID
После выполнения команды оцените ситуацию:
- ✅ Можно использовать напрямую: Если отображаемый ID в конце поля
Application:указан какKlipper. - ⚠️ Требуется прошивка: Если отображаемый ID в конце поля
Application:указан какCANBOOTилиKatapult. - ❌ Устройство не найдено: Если отображается
Total 0 uuids found, возможные причины:- Ошибка конфигурации CAN-сети
- Несоответствие скорости CAN (убедитесь, что скорость одинакова на хосте, основной плате и плате инструментов)
- Этот ID уже занят (необходимо заблокировать его в конфигурации, затем выключить, отключить питание и перезапустить)
Результаты поиска RS232 ID
После выполнения команды терминал отобразит путь RS232-устройства (пример):
/dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
Для устройств RS232 в конфигурации обязательно необходимо указать скорость передачи данных (baud rate) и метод перезагрузки:
[mcu toolboard]
serial: <Замените здесь на найденный путь RS232-устройства>
baud: 250000
restart_method: command
Шаг 4: Настройка ID основного MCU
Перед началом настройки убедитесь, что плата инструментов отключена от хоста или основной платы, чтобы избежать конфликтов при распознавании устройств.
Снова откройте файл printer.cfg, найдите строку конфигурации serial: /tmp/klipper_host_mcu в разделе [mcu].
В зависимости от вашего способа подключения, настройте, следуя соответствующему методу ниже:
- Конфигурация USB-подключения
- Конфигурация CAN-подключения
Замените /tmp/klipper_host_mcu после serial: на найденный USB ID.
Пример конфигурации:
# Найденный USB ID:
# /dev/serial/by-id/usb-Klipper_stm32h723xx_12345-if00
# Измените конфигурацию на:
[mcu]
serial: /dev/serial/by-id/usb-Klipper_stm32h723xx_12345-if00
Замените параметр конфигурации serial: /tmp/klipper_host_mcu на canbus_uuid: и введите найденный CAN ID.
Пример конфигурации:
# Найденный CAN ID:
# 688e89f0e401
# Измените конфигурацию на:
[mcu]
canbus_uuid: 688e89f0e401
Сохраните конфигурацию и перезапустите службу Klipper.
Шаг 5: Проверка подключения основного MCU
После настройки основного MCU необходимо проверить успешность подключения:
- Откройте интерфейс Fluidd, нажмите
Systemв левом меню. - Просмотрите информацию MCU: Найдите информацию
Micro-ControllerподMcu Information. - Сверьте модель контроллера: Убедитесь, что отображаемая модель соответствует фактической модели контроллера вашей основной платы.
- Если ваш контроллер — STM32H723, то
Micro-Controllerдолжен отображать модель, связанную с H723. - Если отображается некорректно или не распознаётся, проверьте предыдущие шаги настройки.
Шаг 6: Добавление MCU платы инструментов
После успешной проверки основного MCU можно добавить плату инструментов:
- Снова подключите плату инструментов: Подключите кабель данных платы инструментов к хосту или основной плате.
- Отредактируйте файл конфигурации: Добавьте конфигурацию платы инструментов в самый конец файла
printer.cfg. - Настройте ID платы инструментов: В новом разделе конфигурации добавьте соответствующий ID в зависимости от типа прошивки платы инструментов.
Имена mcu1, mcu2 и т.д. в конфигурации используются только для временного различения устройств. Вы можете полностью настроить эти имена, главное — обеспечить их уникальность в файле конфигурации.
Формат конфигурации:
[mcu mcu1]
# Добавьте здесь конфигурацию ID платы инструментов
Пример конфигурации:
- USB-плата инструментов
- CAN-плата инструментов
- RS232-плата инструментов
[mcu mcu1]
serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_54321-if00
[mcu mcu1]
canbus_uuid: 688e89f0e402
[mcu mcu1]
serial: /dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
baud: 250000
restart_method: command
Важные замечания:
- Каждый MCU должен использовать уникальный ID. Убедитесь, что ID платы инструментов отличается от ID основного MCU и других устройств.
- Имя MCU можно полностью настроить (например,
toolboard,extruder_mcuи т.д.), главное — обеспечить уникальность в конфигурации. - Обязательно используйте ID платы инструментов, проверенный и подтверждённый на предыдущих шагах.
- Для устройств RS232 обязательно укажите параметры
baud: 250000иrestart_method: command. - При настройке нескольких плат инструментов задавайте каждому устройству разные имена для удобства различения.
После завершения конфигурации сохраните и перезапустите службу Klipper.
Шаг 7: Проверка подключения всех MCU
После добавления платы инструментов и перезапуска Klipper необходимо повторно проверить статус подключения всех MCU:
- Откройте интерфейс Fluidd, нажмите
Systemв левом меню. - Просмотрите информацию MCU: Под
Mcu Informationубедитесь, что все MCU корректно распознаны. - Проверьте статус каждого MCU: Убедитесь, что основной MCU и плата инструментов отображаются в статусе "подключено".
- Основной MCU и все платы инструментов должны отображаться в списке.
- Статус подключения каждого MCU должен быть "подключено".
- Если какой-либо MCU не отображается или подключение не удалось, проверьте его конфигурацию и физическое подключение.
Шаг 8: Проверка версии прошивки
После подключения всех MCU необходимо проверить совместимость версий прошивки:
- Откройте интерфейс Fluidd, нажмите
Systemв левом меню. - Просмотрите информацию о версии: Найдите поле
VersionподMcu Information. - Проверьте единообразие версий: Убедитесь, что версия прошивки всех MCU соответствует версии Klipper на хосте.
- Пользовательские скомпилированные прошивки: За исключением предварительно настроенных кастомных устройств, все самостоятельно скомпилированные прошивки должны совпадать с версией Klipper на хосте.
- Система Fly-FAST: Версия прошивки FAST-системы совпадает с версией системы. Скомпилированная прошивка Klipper соответствует версии системы.
- Последствия несовпадения версий: Прошивки разных версий могут привести к некорректной работе, сбоям связи или нестабильности системы.
Ключевые моменты проверки:
- Информация
Versionдля основного MCU и всех плат инструментов должна отображаться, и версии должны совпадать. - Если версии не совпадают, необходимо перепрошить соответствующую прошивку.
Шаг 9: Восстановление и обновление конфигурации
После подтверждения нормального подключения всех MCU необходимо восстановить исходный файл конфигурации и обновить конфигурацию MCU:
-
Удалите текущий файл конфигурации
- В интерфейсе управления конфигурацией найдите и удалите текущий файл
printer.cfg.
- В интерфейсе управления конфигурацией найдите и удалите текущий файл
-
Восстановите резервную конфигурацию
- Переименуйте ранее созданный резервный файл
printer_Backup.cfgобратно вprinter.cfg.
- Переименуйте ранее созданный резервный файл
-
Обновите конфигурацию MCU
- Откройте восстановленный файл
printer.cfg. - Найдите существующий раздел конфигурации
[mcu]и обновите его, используя ID, полученные на предыдущих шагах:
Конфигурация USB-подключения:
[mcu]
serial: /dev/serial/by-id/usb-Klipper_stm32h723xx_12345-if00
# Замените на фактический USB ID основного MCU, найденный при поискеКонфигурация CAN-подключения:
[mcu]
canbus_uuid: 688e89f0e401
# Замените на фактический CAN UUID основного MCU, найденный при поиске - Откройте восстановленный файл
-
Обновите конфигурацию платы инструментов (если применимо)
- В файле конфигурации найдите раздел
[mcu], соответствующий плате инструментов. - Обновите его на фактический ID платы инструментов, найденный при поиске, в соответствии со способом подключения:
USB-плата инструментов:
[mcu toolboard]
serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_54321-if00CAN-плата инструментов:
[mcu toolboard]
canbus_uuid: 688e89f0e402RS232-плата инструментов:
[mcu toolboard]
serial: /dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
baud: 250000
restart_method: command - В файле конфигурации найдите раздел
-
Сохранение и перезагрузка
- После обновления конфигурации всех MCU нажмите SAVE & RESTART, чтобы сохранить и перезапустить Klipper.
- Снова войдите на страницу
Systemи убедитесь, что статус подключения всех MCU в норме.
- Убедитесь, что используются правильные ID, фактически найденные в ходе данного теста подключения.
- Если настроено несколько плат инструментов, обновите ID в каждом разделе
[mcu]по очереди. - Для RS232-платы инструментов обязательно укажите параметры
baud: 250000иrestart_method: command. - После восстановления конфигурации исходные параметры принтера (например, настройки шаговых двигателей, концевых выключателей и т.д.) останутся неизменными.
На этом диагностика неисправностей подключения MCU и восстановление конфигурации полностью завершены.