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

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

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

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

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

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

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

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

Введите IP-адрес хоста в браузере.

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-прошивкой Выполните команду для поиска ID USB-устройства:

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 устройства, подобный приведённому (пример):

  • Готово к использованию: Если после поля usb- отображается Klipper (например, usb-Klipper_stm32f407xx_...), это означает, что прошивка Klipper уже загружена
  • Требуется прошивка: Если после поля usb- отображается katapult (например, usb-katapult_stm32f407xx_...), это означает, что устройство находится в режиме Bootloader и необходимо прошить Klipper
  • Не распознано: Если в примере ниже после поля usb- отображается 1a86_USB_Serial, это означает, что устройство является конвертером последовательного порта CH340, а не MCU с прошивкой Klipper/katapult; сначала необходимо прошить соответствующую прошивку
/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
  • Нормальный вид:
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 уже подключён успешно, и вам нужно добавить инструментальную плату, несколько MCU или настроить межплатные выводы, перейдите к: Добавление MCU инструментальной платы и межплатная конфигурация.

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

Loading...