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

Сборник вопросов по CAN

Перед началом поиска устройства

  • Перед поиском CAN ID, сначала подключитесь к SSH
  • Убедитесь, что вы вошли в SSH через сеть, а не через последовательный порт
  • Убедитесь, что вы подключили UTOC или установили прошивку CAN-моста на основную плату, и что кабель, подключенный к хост-компьютеру, поддерживает передачу данных

Определение наличия устройства

  • После успешного входа в хост-компьютер введите lsusb для поиска устройств, возможны следующие варианты:
    • Если при вводе lsusb появляется сообщение о том, что команда ls не найдена, установите утилиты, введя следующую команду:
      sudo apt-get install usbutils
    • Если при вводе lsusb ничего не происходит, это проблема системы, которую мы не можем решить, вам нужно изменить систему или использовать заранее проверенную рабочую систему
    • Появляется информация, как на изображении ниже, обратите внимание, что это лишь пример. Вам нужно убедиться, что отображается 1d50:606f
  • 1d50:606f — это устройство, которое вы будете использовать. Дополнительные примечания можно игнорировать, так как из-за проблем с системой они могут отображаться неполно или вообще не отображаться
  • Если отображается несколько 1d50:606f, рекомендуется исключить одно, иначе это повлияет на последующую прошивку и подключение. Например, для FLY MINI PAD рекомендуется использовать встроенный UTOC, а не другие устройства CAN-моста
  • Если устройство не отображается, проверьте подключение кабеля и правильность установленной прошивки.
Примечание

Поиск CAN ID возможен только при наличии 1d50:606f

Определение проблемы по ошибкам

  • Ниже приведены распространенные ошибки
    • OSError: [Errno 19] No such device
    • can.CanError: Failed to transmit: [Errno 100] Network is down
    • can.CanError: Failed to transmit: [Errno 105] No buffer space available
  • Первый случай — хост-компьютер не может найти устройство CAN (основная плата с установленной прошивкой USB-моста или UTOC)
  • Второй случай — CAN0 не настроен или настроен неправильно
  • Третий случай — переполнение буфера или сбой системы
  • Для устранения проблем, связанных со вторым и третьим случаем, см. раздел настройки CAN0 ниже
  • Если ID не найден, см. в самом низу

Проверка поддержки CAN хост-компьютером

  • Если вы используете хост FLY, выполнять эту операцию не нужно
  • Если ваша система — Ubuntu, необходимо выполнить настройку CAN0 в Ubuntu. Документ еще не обновлен
  • Введите следующую команду, чтобы определить, поддерживает ли система CAN
sudo modprobe can && echo "Ваше ядро поддерживает CAN" || echo "Ваше ядро не поддерживает CAN"
  • После ввода вышеуказанной команды, если ядро поддерживает CAN, будет возвращено: Ваше ядро поддерживает CAN; если не поддерживает — Ваше ядро не поддерживает CAN.
  • Если возвращено Ваше ядро поддерживает CAN, можно перейти к следующему шагу — настройке CAN0

Настройка CAN0

  • Эта команда перезаписывает текущую конфигурацию CAN0 в системе. После выполнения необходимо перезагрузить систему
  • Система FAST не требует выполнения этой операции !!!!!!
  • Выберите соответствующую команду в зависимости от вашей ситуации

  • Для скорости 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
  • Перезагрузите устройство
sudo reboot

Если ID не найден, обратите внимание на следующие моменты

  • Если в Klipper настроен соответствующий ID, сначала отключите ID в системных настройках, выключите питание, затем включите его снова или нажмите кнопку сброса на основной плате
  • Совпадает ли скорость CAN хост-компьютера с основной платой, платой инструментов и т.д.
  • Можно использовать следующий код для определения скорости CAN хост-компьютера
  • Проверьте наличие обрыва провода
  • Установлен ли между платой инструментов и устройством (основная плата с установленной прошивкой USB-моста или UTOC) перемычка 120Ω
  • Если перемычка 120Ω установлена, измерьте сопротивление между CAN H и CAN L с помощью мультиметра при полностью отключенном питании устройства, должно быть около 60Ω
  • Проверьте наличие обрыва провода
ip -details link show can0
  • Обведенное место на изображении ниже показывает скорость и буфер CAN хост-компьютера
  • Значение 1024 сверху — текущий буфер CAN0
  • Значение 1000000 снизу — текущая скорость CAN0
  • Если UUID все еще не найден, внимательно проверьте следующие моменты

    • Правильно ли подключена основная плата или плата инструментов CAN
    • Подано ли питание, при использовании основной платы рекомендуется подключить источник питания VCC
    • Поддерживает ли хост-компьютер CAN-сеть
    • Составляет ли сопротивление CAN около 60Ω
    • Правильно ли скомпилирована прошивка

Поиск ID

  • Введите следующую команду для поиска ID
~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0
  • Если ID найден и в конце отображается Application:, указанное как Klipper, значит, этот ID можно использовать напрямую
  • Если ID найден и в конце отображается Application:, указанное как CANBOOT или Katapult, значит, необходимо прошить устройство
Loading...
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
- 3D Mellow -
Loading...