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

Обзор распространённых ошибок

Эта страница предназначена для быстрого поиска распространённых ошибок Klipper. Сначала найдите полное ключевое слово ошибки в klippy.log, затем перейдите на соответствующую страницу категории для устранения неполадок.

Быстрый указатель

Тип ошибкиЧасто встречающиеся ключевые словаВход для поиска и устранения
Проблемы подключенияUnable to connect, Timeout on connect, Wait for identify_response, Serial connection closed, Invalid CAN uuid, Lost communication, MCU Protocol error, /dev/serial/by-id, Unable to issue reset command, Got EOF when reading from deviceЭта страница, проблемы подключения, Конфигурация MCU ID, Сеть CAN и поиск ID
Проблемы конфигурацииnot valid, not a valid config section, must be specified, Unable to parse, SAVE_CONFIG, Option conflict, virtual_sdcard, pause_resume, display_statusОшибки конфигурации
Макросы и команды切片器Unknown command, Error evaluating 'gcode_macro, jinja2.exceptions.UndefinedError, dict object has no attributeОшибки конфигурации
Движение и хомингMove out of range, Must home axis first, No trigger, Endstop still triggered, virtual_endstop, Unknown pin chip name, Homing failed due to printer shutdownОшибки движения, концевых выключателей и калибровки стола, Устранение неполадок хоминга без концевых выключателей
Разбор G-codeUnable to parse move, Invalid speed, Machine does not support G20, G2/G3Ошибки движения, концевых выключателей и калибровки стола, Рекомендации по аппроксимации дуг
Калибровка датчиком (зондом)Probe triggered, No trigger on probe, samples_tolerance, bed_mesh, BLTouch failed, Z_TILT, QUAD_GANTRY_LEVEL, no samples between time, SVD did not convergeОшибки движения, концевых выключателей и калибровки стола, Конфигурация и устранение неполадок BLTouch
Нагрев температурыADC out of range, not heating at expected rate, Verify heater, temperature, Thermocouple reader faultОшибки температуры, нагрева и экструзии
Проблемы экструзииExtrude below minimum temp, Extrude only move too long, Move exceeds maximum extrusion, Filament sensor, M600Ошибки температуры, нагрева и экструзии
Таймауты производительностиTimer too close, Missed scheduling, Stepper too far in past, Move queue overflow, stepcompress, Rescheduled timer, restarting too fast, SD busy, Unhandled exception during run, hard pwm event, Can't reset time when stepper activeОшибки системы, производительности и служб
Драйверы TMCUnable to read tmc uart, Unable to write tmc spi, GSTAT, coil short circuit, tmcuart_responseУстранение неполадок TMC
Сеть CANbytes_invalid, Network is down, No buffer space available, Invalid CAN uuid, USB CANBUS bridge, BUS-OFFСеть CAN и поиск ID, Устранение неполадок CAN
Датчики и периферияInvalid adxl345 id, No data, Insufficient axis, Eddy current sensor error, Invalid read data, load_cell_probe, START_READ_NACK, I2C, BUS_TIMEOUTТестирование и калибровка акселерометра, Сборник проблем EDDY, Устранение неполадок Load Cell, эта страница, ошибки связи I2C
Компенсация резонанса и упреждающее давлениеshaper_freq, input_shaper, pressure_advance, smooth_time, accel_chip, TEST_RESONANCES, SHAPER_CALIBRATEКомпенсация резонанса и упреждающее давление

Быстрый поиск по связанным страницам конфигурации

Направление ошибкиРекомендуемая ссылка
Синтаксис конфигурации, отступы, комментарии, повторяющиеся пиныИнструкция по изменению конфигурации
Направление хоминга, направление осей, принудительное перемещениеРуководство по хомингу и калибровке направлений
Концевые выключатели, TAP, оптические концевики, датчики приближенияКонцевые выключатели
Хоминг без концевых выключателей, чувствительность виртуальных концевиковИспользование без концевых выключателей
Нагрев, PID, медленный нагрев, защита по температуреНагрев, Оптимизация verify_heater, Оптимизация M109
Конфигурация вентиляторов, приводные вентиляторы, вентиляторы 7040Справочная конфигурация вентиляторов
Параметры экструдера, расстояние вращения, конфигурация экструзииСправочная конфигурация экструдера, Калибровка станка
Стартовые/финальные макросы, пауза/возобновление, калибровка стола и макросы сеткиВведение в макросы
Часто используемые команды отладки, зонд, компенсация резонансаЧасто используемые команды отладки

Проблемы с подключением

Пояснение по настройке ID MCU

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

Способ подключенияЭлемент конфигурацииПример
USB прошивкаserial:serial: /dev/serial/by-id/usb-Klipper_xxxxxxxxxxxx
CAN прошивкаcanbus_uuid:canbus_uuid: xxxxxxxxxxxx
Устройство RS232serial:serial: /dev/serial/by-path/xxxxxxxxxxxx
MCU хост-компьютераserial:serial: /tmp/klipper_host_mcu

Правила заполнения:

  1. Основная плата по умолчанию использует [mcu], а инструментальная или расширительная плата использует пользовательские имена, такие как [mcu tool], [mcu toolboard].
  2. Для USB прошивки заполняется только serial:, для CAN прошивки — только canbus_uuid:, не оставляйте оба элемента одновременно в одном [mcu].
  3. В машинах с несколькими MCU каждый [mcu xxx] должен использовать свой реальный идентификатор, не копируйте один и тот же USB ID или CAN UUID.
  4. Имя [mcu xxx] влияет на префикс выводов, например, для [mcu tool] вывод должен быть записан как tool:gpio13; регистр имени должен быть согласован.
  5. xxxxxxxx в примерах документации нельзя использовать напрямую, его необходимо заменить на фактический найденный идентификатор.
  6. Для устройств RS232, помимо serial:, обычно также необходимо указать baud: 250000 и restart_method: command; следуйте документации соответствующего продукта.

Частые ошибки:

  • Использование ID режима прошивки (например, ID, содержащий katapult, canboot) в качестве ID прошивки Klipper.
  • В USB прошивке указан canbus_uuid:, или в CAN прошивке остался старый serial:.
  • Устройство RS232 заполнено только путём, при этом пропущены необходимые baud: или restart_method:.
  • Инструментальная плата настроена как [mcu], что перекрывает конфигурацию MCU основной платы.
  • Префикс вывода не соответствует имени MCU, например, конфигурация [mcu toolboard], а вывод записан как tool:gpio13.

Запрос USB ID: Для USB прошивки выполните ls /dev/serial/by-id/* для получения идентификатора.

Запрос CAN ID: Поиск сети CAN и идентификатора

Запрос пути RS232: Выполните ls -l /dev/serial/by-path/ для получения стабильного пути к устройству.

Конфигурация инструментальной платы: Добавление MCU инструментальной платы и кросс-платная конфигурация

mcu 'xxx': Unable to connect

Сообщение об ошибке: Верхний компьютер не может найти или подключиться к плате.

Loading...

Распространенные причины:

  • Идентификатор USB-устройства не указан или указан неверно.
  • CAN UUID не указан, указан неверно или устройство не в сети.
  • UTOC, USB-кабель, CAN-мостовая прошивка или питание неисправны.
  • CAN0 не запущен или конфигурация CAN-сети некорректна.

Методы устранения:

  1. Откройте klippy.log и прокрутите в самый низ, чтобы подтвердить конкретное сообщение об ошибке.

  2. Если появляется [Errno 2], это обычно означает, что найденный идентификатор USB-устройства не был добавлен в printer.cfg.

    Loading...
  3. Если появляется Timeout on connect, Wait for identify_response или Serial connection closed, продолжайте диагностику согласно разделу Таймаут рукопожатия при подключении MCU; это может произойти как при USB-подключении, так и при подключении через последовательный мост.

    Loading...
  4. Если появляется Unable to open CAN port: [Errno 19] No such device, это обычно означает отсутствие устройства UTOC, USB-мостовой CAN-прошивки или устройства CAN0.

    Loading...
  5. Если появляется [Errno 100] Network is down или [Errno 105] No buffer space available, перепроверьте конфигурацию CAN0 согласно разделу CAN-сеть и поиск ID.

mcu 'mcu': Invalid CAN uuid

Сообщение об ошибке: CAN UUID недействителен или не может быть распознан.

Loading...

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

Методы устранения:

  1. Повторно выполните поиск CAN UUID согласно разделу CAN-сеть и поиск ID.
  2. Убедитесь, что в printer.cfg указан фактически найденный UUID.
  3. Убедитесь, что в одном [mcu] не включены одновременно serial: и canbus_uuid:.
  4. Проверьте CAN-H, CAN-L, терминальные резисторы, питание и скорость CAN в прошивке.

Option 'serial' in section 'mcu' must be specified

Сообщение об ошибке: В секции конфигурации [mcu] необходимо указать serial.

Loading...

Причина ошибки: При подключении через USB-прошивку не указан serial:, или секция конфигурации [mcu] была случайно удалена.

Методы устранения:

  1. Повторно выполните поиск идентификатора USB-устройства.
  2. В секции конфигурации [mcu] файла printer.cfg укажите:
[mcu]
serial: /dev/serial/by-id/фактически_найденный_ID
  1. Сохраните и перезапустите Klipper.

Если на текущей плате прошита CAN-прошивка, используйте canbus_uuid:, не указывайте serial:.

USB ID не найден / вмешательство системных служб

Сообщение об ошибке: Выполнение ls /dev/serial/by-id/* не дает вывода или сообщает No such file or directory; при подключении Klipper сообщает mcu 'xxx': Unable to open serial port, [Errno 2] No such file or directory, или USB-плата в системе многократно отключается и подключается заново.

Распространенные причины:

  • Плата не находится в состоянии работы прошивки Klipper и все еще находится в режиме прошивки Katapult / CanBoot / DFU и т.п.
  • USB-кабель, USB-порт, питание верхнего компьютера или питание платы неисправны.
  • В некоторых версиях udev в Debian 11 Bullseye могут быть проблемы, из-за которых путь устройства /dev/serial/by-id/ не создается.
  • В настольных версиях Linux могут быть установлены ModemManager или BRLtty, которые могут перехватывать последовательные устройства, мешая Klipper стабильно подключаться к плате.

Методы диагностики:

Операции при отключенном питании

Перед повторным подключением USB-кабеля, проверкой кабелей питания платы или упорядочиванием USB / CAN жгутов полностью выключите принтер и отключите источник питания. Не упорядочивайте распиновку интерфейсов и не прикасайтесь к клеммам при включенном питании.

  1. Сначала убедитесь, что плата прошита и работает под управлением прошивки Klipper. USB ID должен содержать usb-Klipper, не записывайте в printer.cfg ID режимов katapult, canboot, Bootloader или DFU.
  2. Отключите питание, замените на надежный USB-кабель для передачи данных и другой USB-порт верхнего компьютера, затем снова включите питание и выполните ls /dev/serial/by-id/*.
  3. Если используется Debian 11 Bullseye, старая версия MainsailOS / FluiddPi / Armbian и т.п., выполните следующую команду для проверки версии udev:
apt-cache policy udev
  1. Если подтверждена проблема с udev в Debian 11, в первую очередь обновите udev через штатные источники обновления системы или замените на более новую версию образа системы.
  2. Проверьте наличие служб, которые могут перехватывать последовательный порт:
systemctl list-units --all | grep -Ei 'ModemManager|brltty'
  1. Если подтверждена установка этих служб, и текущему верхнему компьютеру не нужны функции модема или брайлевского терминала, подставьте полные имена модулей, отображаемые предыдущей командой, в команды, остановите и отключите их, затем перезагрузите систему:
sudo systemctl disable --now ModemManager.service
sudo systemctl disable --now brltty.service
sudo systemctl disable --now brltty.path
  1. После завершения снова запросите USB ID и убедитесь, что serial: в секции [mcu] файла printer.cfg совпадает с фактическим выводом.

Справочная конфигурация: Конфигурация MCU ID.

Serial connection closed / Timeout on connect / Wait for identify_response

Сообщение об ошибке: При запуске Klipper или выполнении FIRMWARE_RESTART в журнале последовательно или многократно появляются:

mcu 'xxx': Timeout on connect
mcu 'xxx': Wait for identify_response
serialhdl.error: mcu 'xxx': Serial connection closed

Характер ошибки: Этот набор ошибок означает, что верхний компьютер уже пытался установить соединение с MCU, но MCU не вернул информацию об идентификации прошивки в установленный срок. Он описывает сбой рукопожатия при подключении и не указывает напрямую, вызвано ли это параметрами прошивки, путем устройства, жгутом проводов или самим аппаратным обеспечением.

Распространенные причины:

  • Неверно выбран интерфейс связи, контакты, тактовая частота, стартовый адрес или смещение загрузчика в прошивке MCU.
  • Прошивка не была корректно записана, или плата все еще находится в режиме прошивки DFU, Bootloader, Katapult / CanBoot и т.п.
  • В serial: указан неверный, устаревший или неполный путь устройства.
  • Неисправны USB-кабель данных, USB-порт, микросхема последовательного моста или питание платы.
  • При использовании CAN-инструментальной платы неисправны мостовое устройство, CAN-сеть или конфигурация canbus_uuid:.

Методы устранения:

  1. Просмотрите полный klippy.log, чтобы определить, возникает ли этот набор ошибок на этапе первоначального подключения при запуске или при повторном подключении после потери связи MCU во время печати.
  2. Выполните следующие команды, чтобы убедиться, что система стабильно распознает MCU, и полностью сравните вывод с serial: в секции [mcu]:
ls -l /dev/serial/by-id/
dmesg --ctime | tail -n 80
  1. Если USB ID существует и стабилен, но постоянно появляется Wait for identify_response, сверьтесь с документацией соответствующего продукта FLY и заново проверьте параметры компиляции прошивки и способ прошивки, уделяя особое внимание интерфейсу связи, смещению загрузчика и конфигурации тактовой частоты; не записывайте в printer.cfg ID устройства в режиме прошивки.
  2. Если USB ID не существует или в dmesg многократно отключается, проверьте систему и подключение согласно разделу USB ID не найден / вмешательство системных служб на этой странице.
Операции при отключенном питании

Перед повторным подключением или заменой USB / CAN жгутов, проверкой интерфейса питания платы полностью выключите принтер и отключите источник питания. Не упорядочивайте распиновку и не прикасайтесь к клеммам при включенном питании.

  1. Після відключення живлення замініть на надійний готовий кабель і підключіть до інтерфейсу上位机, потім знову увімкніть живлення для тестування; не розбирайте блок живлення та не змінюйте підключення до мережі.
  2. Для CAN-пристроїв продовжуйте звертатися до Усунення помилок CAN та повторно перевірте мостові пристрої, статус CAN і UUID.
  3. Якщо перше підключення пройшло нормально, але Serial connection closed з'являється лише під час друку, спочатку перевірте проблему обриву зв'язку під час роботи відповідно до Lost communication with MCU і не перепрошуйте прошивку багаторазово, щоб приховати проблему.

Lost communication with MCU

Повідомлення про помилку: переривання зв'язку між Klipper і MCU, у журналі може з'явитися Lost communication with MCU, Lost communication with mcu або подібні повідомлення.

Типові сценарії: під час повернення в нуль або руху, щойно спрацьовує кінцевий вимикач, основна плата або інструментальна плата втрачає зв'язок; після повторного увімкнення живлення з'єднання відновлюється.

Типові причини:

  • Помилка підключення кінцевого вимикача, що при спрацьовуванні викликає ненормальне коротке замикання сигнального контакту з живленням або землею.
  • Під час використання трипровідних, оптичних або霍尔 кінцевих вимикачів неправильний порядок підключення живлення, землі та сигнального проводу.
  • Пошкодження ізоляції дротів кінцевих вимикачів, затискання проводів або коротке замикання під час руху в кабельному каналі.
  • Миттєве спрацьовування кінцевого вимикача викликає коливання живлення основної плати, перезапуск MCU або переривання USB / CAN зв'язку.
  • Кабель USB / CAN між MCU та上位机 проходить поруч із сильним джерелом перешкод, що робить втрату зв'язку більш імовірною при спрацьовуванні кінцевих вимикачів або русі.
  • Конфігурація контактів кінцевих вимикачів не відповідає фактичному підключенню, що викликає спрацьовування помилкових інтерфейсів.

Методи усунення:

Операції з відключенням живлення

Перед підключенням/відключенням проводів кінцевих вимикачів, перевіркою порядку проводів, оглядом проводів у кабельному каналі або використанням мультиметра для вимірювання цілісності/опору повністю вимкніть принтер і відключіть блок живлення. Режим вимірювання опору/цілісності мультиметра можна використовувати лише при вимкненому живленні, забороняється вимірювати опір або проводити тест на коротке замикання при увімкненому живленні.

  1. Після відключення живлення перевірте порядок проводів кінцевого вимикача, особливо для трипровідних вимикачів: чи правильно підключені VCC, GND, Signal.
  2. Після відключення живлення тимчасово від'єднайте відповідний провід кінцевого вимикача, знову встановіть його та увімкніть живлення, щоб перевірити, чи основна плата все ще втрачає зв'язок.
  3. Після відключення живлення використовуйте мультиметр у режимі цілісності/опору, щоб перевірити наявність короткого замикання до та після спрацьовування кінцевого вимикача, особливо перевірте, чи сигнальний контакт не з'єднаний з живленням.
  4. Перевірте кабельний канал, роз'єми та місця вигину проводів, щоб переконатися, що при спрацьовуванні або русі не відбувається затискання проводів і короткого замикання.
  5. Перевірте кабель USB / CAN між MCU та上位机, намагаючись уникати проводів двигунів, нагрівачів, нагрівального столу та силових кабелів.
  6. Якщо корпус, блок живлення або екран не мають надійного заземлення, це також може підвищити сприйнятливість до перешкод; перевіряйте лише точку заземлення та стан розетки, надані виробником, не розбирайте блок живлення та не змінюйте заземлення мережі самостійно.
  7. Переконайтеся, що контакти кінцевих вимикачів у конфігурації відповідають документації основної плати та фактичному підключенню.
  8. Після виправлення проблеми виконайте QUERY_ENDSTOPS, щоб підтвердити, що стан кінцевих вимикачів нормально змінюється з open на TRIGGERED.

Відповідні довідкові матеріали з конфігурації: Кінцеві вимикачі, Підключення живлення.

Unable to issue reset command on MCU

Повідомлення про помилку: Unable to issue reset command on MCU 'xxx', у журналі зазвичай супроводжується webhooks client ...: Disconnected і Restarting printer.

Характер помилки: ця помилка зазвичай не є першою, а є подальшим повідомленням, коли Klipper намагається відправити команду скидання на MCU після втрати зв'язку, відключення живлення або переривання зв'язку. Під час усунення слід прокрутити журнал вгору і знайти першу справжню помилку (наприклад, Lost communication with MCU, Timer too close, Verify heater, помилки TMC тощо).

Типові причини:

  • Попередня втрата зв'язку з MCU, переривання USB / CAN або збій прошивки, через що команда скидання не може бути доставлена.
  • Недостатнє живлення основної плати, інструментальної плати або зовнішнього MCU, втрата живлення під час скидання.
  • Поганий контакт або пошкодження USB / CAN кабелю.
  • MCU виконує завдання з високим навантаженням (наприклад, нагрівання, багатоточкове сканування столу) і примусово скидається.
  • Сильні перешкоди сигналу між上位机 та MCU (двигуни, нагрівачі біля кабелів зв'язку).

Методи усунення:

Операції з відключенням живлення

Перед повторним підключенням/відключенням USB / CAN кабелів, перевіркою проводів або впорядкуванням прокладки повністю вимкніть принтер і відключіть блок живлення. Забороняється підключати/відключати дроти або торкатися клем при увімкненому живленні.

  1. Відкрийте klippy.log, знайдіть першу справжню помилку перед Unable to issue reset command і спершу усуньте проблему відповідно до її категорії.
  2. Після відключення живлення повторно підключіть USB / CAN кабелі, замініть на надійний готовий кабель і переконайтеся, що з'єднання міцне.
  3. Перевірте стабільність живлення основної та інструментальної плат, уникайте спільного використання нестабільного контуру живлення з двигунами та нагрівальним столом.
  4. Переконайтеся, що USB / CAN кабелі зв'язку прокладені подалі від проводів двигунів, нагрівачів і нагрівального столу.
  5. Виконайте FIRMWARE_RESTART, при необхідності повністю вимкніть живлення на 10 секунд і знову увімкніть.
  6. Якщо проблема повторюється, продовжуйте усунення згідно з Lost communication with MCU і Усунення помилок CAN.

Got EOF when reading from device

Повідомлення про помилку: Got EOF when reading from device, у журналі зазвичай з'являється після Attempting MCU 'xxx' reset command, що означає, що під час спроби скидання MCU з боку上位机 послідовне / USB з'єднання вже розірване.

Характер помилки: це помилка, повернена операційною системою上位机 (Linux), Klipper лише передає маркер кінця файлу (EOF), прочитаний pyserial. Це вказує на те, що USB / послідовний канал фізично розірваний або пристрій зник, а не на проблему з параметрами конфігурації.

Типові причини:

  • Низька якість USB-кабелю, поганий контакт, недостатнє живлення USB-порту, втрата зв'язку під час скидання.
  • Коливання живлення основної або інструментальної плати, скидання або втрата живлення MCU призводить до зникнення пристрою з системи.
  • Аномалії USB-контролера上位机, несправність USB-порту або політика сну USB у системі.
  • При використанні CAN-інструментальної плати через USB-міст, зникнення мостового пристрою (у цьому випадку в журналі також може з'явитися Unable to issue reset command on MCU).

Методи усунення:

Операції з відключенням живлення

Перед повторним підключенням/відключенням USB / CAN кабелів, перевіркою проводів живлення або заміною кабелів повністю вимкніть принтер і відключіть блок живлення.

  1. Спершу визначте, який саме MCU повідомляє про помилку, потім перевірте відповідний USB / CAN канал зв'язку.
  2. Після відключення живлення повторно підключіть USB-кабель, замініть на якісний USB-кабель і спробуйте інший USB-порт上位机.
  3. Виконайте ls /dev/serial/by-id/*, щоб перевірити, чи пристрій все ще присутній у системі; якщо пристрій зник, це вказує на проблему з живленням, кабелем або скиданням MCU.
  4. Перевірте стабільність живлення основної та інструментальної плат, підтвердьте нормальне падіння напруги на проводах живлення (не розбирайте блок живлення та не змінюйте підключення до мережі самостійно).
  5. Якщо в журналі також з'являється Unable to issue reset command on MCU, обробіть це разом із Unable to issue reset command.
  6. Якщо проблема пов'язана з CAN-інструментальною платою, перевірте стан шини згідно з Усунення помилок CAN.
  7. Якщо проблема повторюється, продовжуйте усунення згідно з Lost communication with MCU.

Timeout on wait for 'xxx' response

Повідомлення про помилку: Timeout on wait for 'neopixel_result' response, Timeout on wait for 'trsync_state' response тощо.

Типові причини:

  • Нестабільний канал зв'язку CAN / USB, MCU не встигає відповісти на запит上位机.
  • Надмірне навантаження на MCU (наприклад, одночасний швидкий друк + багатоосьовий рух + запити акселерометра).
  • Занадто велика кількість світлодіодів Neopixel або погана якість лінії даних, що викликає тайм-аут neopixel_result.
  • Несумісність версії прошивки MCU з上位机.

Методи усунення:

  1. Перевірте надійність з'єднання USB / CAN кабелів, намагайтеся уникати джерел перешкод, таких як проводи двигунів і нагрівачів.
  2. Якщо проблема з тайм-аутом Neopixel, зменшіть кількість світлодіодів або замініть на якісний кабель даних, підтвердьте правильність конфігурації data_pin.
  3. Переконайтеся, що версії прошивок усіх MCU однакові, при необхідності перекомпілюйте та перепрошуйте.
  4. Знизьте швидкість друку та прискорення, щоб перевірити, чи проблема відтворюється.

MCU Protocol error

Повідомлення про помилку: помилка протоколу MCU, у журналі може з'явитися MCU Protocol error, Unknown command або Command format mismatch.

Loading...

Типові причини:

  • Оновлено Klipper на上位机, але прошивка основної або інструментальної плати не була перекомпільована та перепрошита.
  • Версії прошивок основної плати, інструментальної плати, EDDY, ADXL та інших зовнішніх MCU несумісні з Klipper на上位机.
  • Використання кастомної системи або сторонніх плагінів, що викликає невідповідність команд, підтримуваних хостом Klipper та MCU.

Методи усунення:

  1. Перевірте, чи нещодавно оновлювалися Klipper, системний образ або плагіни.
  2. Перекомпілюйте та перепрошуйте прошивки Klipper для всіх MCU.
  3. Якщо проблема з інструментальною платою, EDDY, ADXL або іншим зовнішнім MCU, синхронно оновіть відповідну прошивку зовнішнього пристрою.
  4. Якщо використовується кастомна система, підтвердьте, що вона підтримує поточну версію Klipper.
  5. Після завершення прошивки виконайте FIRMWARE_RESTART і повторно підключіться для тестування.

Ошибка связи I2C (START_READ_NACK / BUS_TIMEOUT)

Сообщение об ошибке: MCU 'xxx' I2C request to addr 42 reports error START_READ_NACK, I2C request to addr 104 reports error START_READ_NACK или I2C ... BUS_TIMEOUT.

Распространенные причины:

  • Неверно настроен адрес устройства I2C, или на шине отсутствует устройство с указанным адресом.
  • Ослабление, обрыв соединения I2C или перепутанные линии SDA/SCL.
  • Отсутствие подтягивающих резисторов или затухание сигнала из-за слишком длинной шины.
  • Считывание датчика до его готовности (например, немедленный запрос сразу после включения питания).
  • Конфликт адресов нескольких устройств I2C.

Способы решения:

Отключение питания

Перед проверкой соединений I2C, модулей датчиков или подтягивающих резисторов полностью выключите принтер и отключите его от источника питания.

  1. При выключенном питании проверьте надежность соединений I2C (SDA, SCL, VCC, GND) и убедитесь, что линии не перепутаны.
  2. Убедитесь, что адрес I2C в конфигурации соответствует фактическому адресу устройства. Распространенные адреса: ADXL345 — 0x53 (83) или 0x1D (29), MPU6050 — 0x68 (104).
  3. Проверьте наличие подтягивающих резисторов на шине I2C (обычно 4,7 кОм); если модуль имеет встроенные подтягивающие резисторы, дополнительные не требуются.
  4. Если шина слишком длинная (более 30 см), попробуйте укоротить соединения или снизить скорость I2C.
  5. Если ошибка возникает только один раз при запуске, это может быть связано с задержкой инициализации датчика — понаблюдайте, стабильна ли работа в дальнейшем.
  6. Убедитесь, что на одной шине I2C нет двух устройств с одинаковым адресом.

Ошибка I2C датчика EDDY: при возникновении BUS_TIMEOUT с вихретоковым датчиком EDDY обратитесь к Сборнику проблем EDDY.

Специализированные FAQ

НаправлениеВход
Конфликты конфигурации, разбор параметров, SAVE_CONFIGОшибки конфигурации
Неизвестные команды, шаблоны макросов, стартовый G-code слайсераОшибки конфигурации
Движение, хоуминг, концевые выключатели, зонд, выравнивание сеткиОшибки движения, концевых выключателей и выравнивания
Бесконтактный хоуминг, virtual_endstop, чувствительность DIAGПоиск неисправностей бесконтактного хоуминга, Использование бесконтактного хоуминга
Температура, нагрев, экструзия, обнаружение обрыва нитиОшибки температуры, нагрева и экструзии
Производительность, тайм-ауты, прошивка, системные службыОшибки системы, производительности и служб
G2/G3, аппроксимация дуг, точность пути слайсераРекомендации по аппроксимации дуг
Связь с драйверами TMC, перегрев, проблемы с обмоткамиПоиск неисправностей TMC
Сеть CAN, UUID, bytes_invalidСеть CAN и поиск ID
Акселерометр и тестирование резонансаТестирование и калибровка акселерометра
Вихретоковый датчик EDDYСборник проблем EDDY
Load Cell, датчик давленияПоиск неисправностей датчика Load Cell
Loading...