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

Важные моменты подключения прошивки CAN

Инструкция по подключению

Выполните следующие три шага по порядку:

Шаг 1: Установка переключателей DIP

  1. Сначала отключите питание: Отсоедините все источники питания.
  2. Найдите переключатели: Переверните плату инструментов. Найдите группу переключателей DIP на обратной стороне.
  3. Установите в нужное положение: Для использования режима CAN необходимо установить все переключатели в положение, показанное на примере ниже.
    Loading...

Важное примечание: После изменения положения переключателей DIP необходимо перепрошить соответствующую прошивку (в данном руководстве используется прошивка CAN).

Шаг 2: Подключение проводов

  1. Питание отключено: Не подавайте питание в течение всего процесса подключения.
  2. Подготовьте кабель: Используйте 4-жильный кабель данных XT30(2+2)-F. Цветовая маркировка следующая:
    • Красный (VCC): Подключите к плюсу источника питания 12V-24V
    • Черный (GND): Подключите к минусу источника питания
    • Желтый (CAN-H): Подключите к H разъема CAN
    • Белый/Зеленый (CAN-L): Подключите к L разъема CAN
  3. Подключите устройства:
    • Вставьте разъем XT30(2+2)-F кабеля в плату инструментов.
    • Подключите клеммы кабеля к модулю UTOC или основной плате, на которую уже прошита прошивка "USB-мост CAN".
    • Наконец, подключите модуль UTOC или основную плату к вашему хост-компьютеру (например, FLY-Pi или Raspberry Pi) с помощью USB-кабеля.

Шаг 3: Настройка и проверка терминального резистора

Для обеспечения стабильности сигнала необходимо правильно подключить терминальный резистор. Настройте согласно таблице ниже и измерьте при отключенном питании:

УстройствоИнструкция
Плата инструментовНайдите и установите перемычку с маркировкой 120Ω.
Основная платаЕсли подключена основная плата, также установите на ней перемычку 120Ω.
Модуль UTOCИмеет встроенный резистор*.

Как проверить:

  1. Убедитесь, что питание полностью отключено.
  2. Используйте мультиметр для измерения сопротивления между CAN-H и CAN-L на разъеме CAN платы инструментов.
  3. Оценка результата:
    • ~60Ω: Нормально. Терминальные резисторы на обоих концах подключены правильно.
    • ~140Ω: Возможно, CAN-H и CAN-L перепутаны местами.
    • ~120Ω: Перемычка 120Ω не установлена или обрыв провода.
    • ~40Ω: Возможно, присутствует лишний резистор. Проверьте промежуточные узлы.

Кратко: Сначала отключите питание, установите переключатели DIP, правильно подключите кабель, затем установите перемычки 120Ω на обоих концах и, наконец, измерьте сопротивление — оно должно быть около 60Ω.

Контрольный список:

  • Все операции выполнялись при отключенном питании
  • Все переключатели DIP установлены в нижнее положение (режим CAN)
  • Перемычка 120Ω на плате инструментов установлена
  • Перемычка 120Ω на основной плате (если применимо) установлена
  • Кабель данных CAN надежно подключен
  • Измеренное сопротивление ~60Ω

Настройка сети CAN и устранение неисправностей

Шаг 1: Проверка, распознает ли хост-компьютер устройство CAN

  1. Войдите в хост-компьютер и выполните команду:
lsusb
  1. Наблюдайте за результатом:
  • Видите 1d50:606f → Устройство распознано успешно
  • Сообщение "command not found: ls" → Выполните: sudo apt-get install usbutils
  • Нет никакой реакции → Возможно, проблема с системой, рекомендуется сменить систему
  • Несколько устройств 1d50:606f → Рекомендуется оставить только одно устройство (например, если используете UTOC, отключите другие устройства с прошивкой "USB-мост CAN")

⚠️ Важно: Только после появления 1d50:606f можно продолжить поиск CAN ID

Шаг 2: Настройка сети CAN

Выберите метод настройки в зависимости от типа системы:

Если настройка уже выполнена или используется система FlyOS-FAST, этот шаг не требуется!

Метод настройки для обычной системы Linux

Установка скорости 1M (рекомендуется):

sudo /bin/sh -c "cat > /etc/network/interfaces.d/can0" << EOF
allow-hotplug can0
iface can0 can static
bitrate 1000000
up ifconfig \$IFACE txqueuelen 1024
pre-up ip link set can0 type can bitrate 1000000
pre-up ip link set can0 txqueuelen 1024
EOF

Установка скорости 500K:

sudo /bin/sh -c "cat > /etc/network/interfaces.d/can0" << EOF
allow-hotplug can0
iface can0 can static
bitrate 500000
up ifconfig \$IFACE txqueuelen 1024
pre-up ip link set can0 type can bitrate 500000
pre-up ip link set can0 txqueuelen 1024
EOF

Примечание: Для системы FAST это действие не требуется!

  1. Перезагрузите систему для применения изменений:
    sudo reboot

Шаг 3: Поиск CAN ID

Проверка состояния CAN:

ip -details link show can0
  • На изображении ниже обведены скорость CAN хост-компьютера и размер буфера
  • Верхнее значение 1024 — текущий размер буфера CAN0
  • Нижнее значение 1000000 — текущая скорость CAN0
Loading...

Поиск устройств:

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

В норме должно отобразиться: Found canbus_uuid=xxxx...

Решение распространенных ошибок

Сообщение об ошибкеПричинаРешение
OSError: [Errno 19] No such deviceУстройство CAN не найдено1. Проверьте USB-подключение
2. Убедитесь в правильности прошивки
3. Выполните lsusb для проверки
can.CanError: Failed to transmit: [Errno 100] Network is downСеть CAN не настроена1. Выполните шаги настройки выше
2. Перезагрузите систему
can.CanError: Failed to transmit: [Errno 105] No buffer space availableНедостаточно буфера1. Убедитесь, что размер буфера CAN равен 1024
2. Перезагрузите систему

Шаги проверки, если CAN ID не найден

Шаг 1: Базовая проверка

  • При выполнении lsusb видно 1d50:606f
  • Устройство CAN и плата инструментов включены
  • Кабель данных надежно подключен

Шаг 2: Проверка конфигурации

  • Сеть CAN правильно настроена
  • Скорость CAN хост-компьютера совпадает со скоростью прошивки платы инструментов (по умолчанию 1M)
  • Система перезагружена

Шаг 3: Аппаратная проверка

  • На обоих концах шины CAN установлены терминальные резисторы 120Ω
  • При отключенном питании измерьте сопротивление между CAN-H и CAN-L ≈60Ω
  • Проверьте целостность проводов
  • CAN-H и CAN-L не перепутаны местами

Шаг 4: Обработка особых случаев

  • Если Klipper уже использует ID:

    1. Отключите соответствующую конфигурацию в Klipper
    2. Полностью отключите питание на 1 минуту
    3. Включите питание и выполните поиск заново
  • Измеренное значение терминального сопротивления:

    • ≈60Ω: Нормально
    • ≈120Ω: Резистор только на одном конце
    • ≈40Ω: Резисторы на трех концах
    • ≈140Ω: Возможно, провода перепутаны

Порядок быстрой диагностики

  1. Сначала проверьте устройство: lsusb → Есть 1d50:606f?
  2. Затем проверьте конфигурацию: ip -details link show can0 → Скорость правильная?
  3. Наконец, аппаратная часть: Измерьте сопротивление при отключенном питании → Около 60Ω?

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

Шаги обновления прошивки платы инструментов

Шаг 1: Подготовка

  1. Скомпилируйте новый файл прошивки согласно руководству
  2. Остановите службу Klipper:
sudo systemctl stop klipper

Шаг 2: Получение ID платы инструментов

В файле конфигурации Klipper найдите CAN UUID соответствующей платы инструментов (например: 241696050c56)

Шаг 3: Выполнение обновления прошивки

Используйте следующую команду для прошивки (замените 241696050c56 на ваш фактический CAN UUID):

python3 ~/klipper/lib/canboot/flash_can.py -u 241696050c56

Шаг 4: Проверка результата

  • Видите сообщение CAN Flash Success → Прошивка успешна
  • Видите другое сообщение об ошибке → Прошивка не удалась. Проверьте UUID и подключение

Примечание: После -u должен быть пробел, а затем CAN UUID вашей платы инструментов

Loading...

Шаг 5: Перезапуск службы

sudo systemctl start klipper

Обновление завершено!

Loading...