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

Руководство по подключению MCU

Применимость

Данное руководство предназначено для диагностики и решения проблем с подключением MCU к Klipper.

Подготовка и важные замечания

  • Не рекомендуемые устройства для хоста: Избегайте использования Redmi телефонов, WiFi-стиков, ТВ-приставок и подобных устройств. Они обычно используют кастомные или модифицированные системы, что может привести к некорректному распознаванию MCU.
  • Определение количества подчиненных устройств: Заранее уточните количество используемых подчиненных устройств (например, инструментальных плат). Несколько устройств могут повлиять на подключение.
  • Упрощение проводки: Рекомендуется временно отключить все провода, кроме линий данных, от материнской платы и инструментальной платы, оставив только необходимое подключение данных для исключения помех.
  • Рекомендуемый интерфейс: Рекомендуется использовать интерфейс Fluidd, так как он более наглядно отображает состояние подключения MCU.

Шаг 1: Резервное копирование и сброс конфигурации

1. Доступ к интерфейсу хоста

Введите IP-адрес хоста в браузере (например, 192.168.101.179).

Loading...

2. Поиск файла конфигурации

В веб-интерфейсе найдите опцию конфигурации в левой боковой панели:

Пользователи Fluidd: нажмите ..., затем найдите printer.cfg.

Loading...

Пользователи Mainsail: нажмите Машина, затем найдите printer.cfg.

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. Эта операция выполняется по сети.

Шаги

  1. Выполните обнаружение устройств

    • После успешного подключения по SSH выполните следующую команду:
      lsusb
    • Система выведет список всех распознанных USB-устройств.
  2. Обработка ошибок команд

    • Если появится сообщение, что команда lsusb не найдена, сначала установите её:
      sudo apt-get install usbutils
    • Если после выполнения не отображается никаких устройств, рекомендуется заменить хост.
  3. Определение информации об устройстве Используя изображение ниже, определите ваше устройство в выводе lsusb:

    Loading...
    Loading...
  4. Проверка типа прошивки

    • В зависимости от прошивки, которую вы прошили, сверьте следующую ключевую информацию в выводе lsusb:
      • USB прошивка: Должно отображаться 1d50:614e
      • USB мостовая CAN прошивка: Должно отображаться 1d50:606f
      • USB Katapult прошивка: Должно отображаться 1d50:6177
      • Адаптер RS232 (с UTOR или на материнских платах D8 и D8PRO): должно отображаться 1a86:7523 (с G2T этот шаг не требуется)

Шаг 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:

~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0

Устройства с RS232 прошивкой Выполните следующую команду для поиска пути RS232 устройства:

ls /dev/serial/by-path/*

Интерпретация и обработка результатов

Результаты поиска USB ID

После выполнения команды терминал покажет ID устройства, похожий на этот (пример):

  • Можно использовать сразу: Если ID после поля usb- помечен как Klipper

  • ⚠️ Требуется перепрошивка: Если ID после поля usb- помечен как katapult

    Loading...

Результаты поиска CAN ID

После выполнения команды оцените ситуацию:

  • Можно использовать сразу: Если у отображаемого ID в поле Application: в конце указано Klipper.
  • ⚠️ Требуется перепрошивка: Если у отображаемого ID в поле Application: в конце указано CANBOOT или Katapult.
  • Устройство не найдено: Если отображается Total 0 uuids found, возможные причины:
    • Ошибка конфигурации CAN сети
    • Несовпадение скорости CAN (убедитесь, что скорость хоста, материнской платы и инструментальной платы одинакова)
    • Этот ID уже занят (необходимо заблокировать его в конфигурации, затем выключить, отключить питание и перезагрузить)
Loading...

Результаты поиска RS232 ID

После выполнения команды терминал покажет путь RS232 устройства (пример):

  • /dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
Особые требования к конфигурации RS232

При конфигурации устройств RS232 обязательно укажите скорость передачи данных и метод перезапуска:

[mcu toolboard]
serial: <замените на путь устройства RS232, полученный при поиске>
baud: 250000
restart_method: command

Шаг 4: Настройка ID основного MCU

Подготовка

Перед началом настройки убедитесь, что подключение инструментальной платы к хосту или материнской плате отключено, чтобы избежать конфликтов при распознавании устройств.

Снова откройте файл printer.cfg и найдите строку конфигурации serial: /tmp/klipper_host_mcu в разделе [mcu].

В зависимости от способа подключения выполните настройку, следуя соответствующему методу ниже:

Замените /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

Сохраните конфигурацию и перезапустите службу Klipper.


Шаг 5: Проверка подключения основного MCU

После настройки основного MCU необходимо проверить успешность подключения:

  1. Откройте интерфейс Fluidd, нажмите System в левом меню
  2. Просмотрите информацию о MCU: найдите информацию Micro-Controller в разделе Mcu Information
  3. Сверьте модель контроллера: убедитесь, что отображаемая модель соответствует фактической модели контроллера вашей материнской платы
Ключевые моменты проверки
  • Если ваш контроллер STM32H723, то Micro-Controller должен отображаться как модель, связанная с H723
  • Если отображение некорректно или не распознается, проверьте предыдущие шаги настройки
Loading...

Шаг 6: Добавление MCU инструментальной платы

После успешной проверки основного MCU можно добавить инструментальную плату:

  1. Подключите инструментальную плату заново: Подключите кабель данных инструментальной платы обратно к хосту или материнской плате
  2. Отредактируйте файл конфигурации: Добавьте конфигурацию инструментальной платы в самый низ файла printer.cfg
  3. Настройте ID инструментальной платы: В зависимости от типа прошивки инструментальной платы добавьте соответствующий ID в новый раздел конфигурации
Пояснение по именованию MCU

Имена mcu1, mcu2 в конфигурации используются только для временного различения устройств. Вы можете задать любые пользовательские имена, просто убедитесь, что они уникальны в файле конфигурации.

Формат конфигурации:

[mcu mcu1]
# Здесь добавьте конфигурацию ID инструментальной платы

Примеры конфигурации:

[mcu mcu1]
serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_54321-if00

Примечания:

  • Каждый MCU должен иметь уникальный ID. Убедитесь, что ID инструментальной платы отличается от ID основного MCU и других устройств.
  • Имена MCU можно задавать полностью произвольно (например, toolboard, extruder_mcu и т.д.), главное, чтобы они были уникальны в конфигурации.
  • Обязательно используйте ID инструментальной платы, который был проверен и подтвержден на предыдущих шагах.
  • Для устройств RS232 обязательно указывать параметры baud: 250000 и restart_method: command.
  • При настройке нескольких инструментальных плат присвойте каждому устройству разное имя для различия.

После завершения настройки сохраните и перезапустите службу Klipper.


Шаг 7: Проверка подключения всех MCU

После добавления инструментальной платы и перезапуска Klipper необходимо повторно проверить состояние подключения всех MCU:

  1. Откройте интерфейс Fluidd, нажмите System в левом меню
  2. Просмотрите информацию о MCU: убедитесь, что все MCU корректно распознаны в разделе Mcu Information
  3. Проверьте состояние каждого MCU: убедитесь, что основной MCU и инструментальная плата отображаются как подключенные
Ключевые моменты проверки
  • Основной MCU и все инструментальные платы должны отображаться в списке
  • Состояние подключения каждого MCU должно быть "подключено"
  • Если какой-либо MCU не отображается или подключение не удалось, проверьте его конфигурацию и физическое подключение
Loading...

Шаг 8: Проверка версии прошивки

После подключения всех MCU необходимо проверить совместимость версий прошивки:

  1. Откройте интерфейс Fluidd, нажмите System в левом меню
  2. Просмотрите информацию о версии: найдите поле Version в разделе Mcu Information
  3. Проверьте соответствие версий: убедитесь, что версии прошивки всех MCU соответствуют версии Klipper на хосте
Пояснение по совместимости версий
  • Пользовательские скомпилированные прошивки: За исключением предварительно настроенных устройств, все самостоятельно скомпилированные прошивки должны соответствовать версии Klipper на хосте.
  • Система Fly-FAST: Версия прошивки FAST системы соответствует версии системы, скомпилированная прошивка Klipper соответствует версии системы.
  • Последствия несовпадения версий: Прошивки разных версий могут привести к аномалиям в работе, сбоям связи или нестабильности системы.

Ключевые моменты проверки:

  • Информация Version основного MCU и всех инструментальных плат должна отображаться, и версии должны быть одинаковыми.
  • Если версии не совпадают, необходимо перепрошить соответствующую прошивку.

Шаг 9: Восстановление и обновление файла конфигурации

После подтверждения нормального подключения всех MCU необходимо восстановить исходный файл конфигурации и обновить конфигурацию MCU:

  1. Удалите текущий файл конфигурации

    • В интерфейсе управления конфигурациями найдите и удалите текущий файл printer.cfg
  2. Восстановите резервную конфигурацию

    • Переименуйте ранее сохраненный файл printer_Backup.cfg в printer.cfg
  3. Обновите конфигурацию 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, полученный при поиске
  4. Обновите конфигурацию инструментальной платы (если применимо)

    • Найдите в файле конфигурации раздел [mcu], соответствующий инструментальной плате
    • В зависимости от способа подключения обновите его на фактический ID инструментальной платы, полученный при поиске:

    USB инструментальная плата:

    [mcu toolboard]
    serial: /dev/serial/by-id/usb-Klipper_stm32f446xx_54321-if00

    CAN инструментальная плата:

    [mcu toolboard]
    canbus_uuid: 688e89f0e402

    RS232 инструментальная плата:

    [mcu toolboard]
    serial: /dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
    baud: 250000
    restart_method: command
  5. Сохраните и перезагрузите

    • После завершения обновления конфигурации всех MCU нажмите SAVE & RESTART для сохранения и перезапуска Klipper
    • Снова войдите на страницу System и убедитесь, что состояние подключения всех MCU в норме
Важное напоминание
  • Убедитесь, что используете правильные ID, полученные в ходе текущего теста подключения.
  • Если настроено несколько инструментальных плат, обновите ID в каждом разделе [mcu] по отдельности.
  • Инструментальная плата RS232 должна содержать параметры baud: 250000 и restart_method: command.
  • После восстановления конфигурации исходные параметры принтера (например, настройки шаговых двигателей, концевых выключателей и т.д.) останутся без изменений.

На этом диагностика неисправностей подключения MCU и восстановление конфигурации завершены.

Loading...