Klipper: что это, плюсы и минусы, порядок установки

Как устроена прошивка Klipper, чем она отличается от Marlin и как выглядит установка на примере Raspberry Pi 4B, Mainsail OS и принтера Bizon 3.
Как устроен Klipper
Klipper — программная система, созданная Кевином О’Коннором. Её идея в разделении работы между материнской платой принтера и внешним одноплатным компьютером. Компьютер с его вычислительной мощностью и памятью обрабатывает G-код и на лету вносит в него улучшения, а микроконтроллер лишь исполняет готовые инструкции. С такой задачей справляются даже устаревшие 8-битные платы. Marlin, с которым обычно сравнивают Klipper, целиком работает на контроллере принтера и ограничен его ресурсами.
Преимущества и недостатки
- Число контролируемых шагов двигателей в секунду достигает 175 тысяч для 8-битных плат и 600 тысяч для 32-битных. Движение становится плавнее и точнее, появляется возможность компенсировать часть недостатков механики.
- Почти все параметры меняются без перепрошивки, а макросы позволяют выполнять цепочки команд — для обслуживания, действий перед печатью и после неё.
- Поддерживаются почти все серийные платы, все виды кинематики от декартовой до дельты, два экструдера и дополнительное оборудование: датчики выравнивания стола, температуры и обрыва прутка, акселерометр, вентиляторы, дисплеи.
Минусы тоже существенны. Нужен одноплатный компьютер достаточной мощности, а это дополнительные расходы. Установка сложна, особенно на нестандартные и самодельные принтеры, и если готовых файлов конфигурации нет, разбираться придётся самостоятельно. Желательно владеть системными командами Linux. С первой попытки система может не заработать. Замена прошивки может лишить принтер гарантии, а в худшем случае плата превращается в «кирпич», который восстановит только специалист. Поэтому заранее стоит запастись заводской прошивкой для отката, хотя производители делятся ею не всегда.
Что подготовить
- Одноплатный компьютер. Предпочтительна Raspberry, но система нетребовательна: для Mainsail OS заявлено от 512 Мб памяти.
- Блок питания 5 В не слабее 2 А.
- Охлаждение: при перегреве одноплатник останавливается, а вместе с ним и печать.
- Кабель для связи с платой принтера, обычно USB type-A на type-B.
- Карта памяти на 8–16 Гб не ниже 10 класса для системы и вторая, любая, для прошивки принтера.
- ПК с программами PuTTY (консоль одноплатника), WinSCP или аналог (обмен файлами), Raspberry Pi Imager для записи системы; для компьютеров не от Raspberry — Rufus или аналог.
Запись системы и первый запуск
Универсальной инструкции нет: плат, принтеров и одноплатников слишком много. Общий порядок такой: записать ОС и запустить её на микрокомпьютере, собрать в консоли прошивку и прошить плату принтера, загрузить файлы конфигурации, выполнить дополнительные настройки. Далее — пример с Raspberry Pi 4B и принтером Bizon 3 на плате Monster 8.

В Raspberry Pi Imager выбирают устройство, затем в разделе «Other specific-purpose OS» — Mainsail OS. Подойдёт и OctoKlipperPi, но Mainsail, по мнению большинства пользователей, быстрее, меньше нагружает компьютер и реже зависает.



Далее указывают карту microSD и в параметрах задают данные своей сети Wi-Fi, имя пользователя и пароль. Запись длится две–пять минут. Карту вставляют в Raspberry и подают питание; через пару минут в домашней сети появляется клиент с именем mainsailos. Его IP-адрес (в примере 192.168.1.110) лучше сразу закрепить в роутере. Если ввести адрес в браузере, откроется веб-интерфейс Mainsail OS — пока без связи с принтером.
Сборка прошивки и прошивка платы
Важно помнить, что заводская прошивка при этом стирается. В PuTTY вводят адрес одноплатника и входят под заданными логином и паролем. Командой cd ~/klipper переходят в папку Klipper, командой make menuconfig запускают конфигуратор и стрелками и клавишей Enter выставляют параметры платы и контроллера. Клавиша Q сохраняет настройки и закрывает конфигуратор. Команда make за пару минут собирает файл klipper.bin в папке out.
Файл удобно забрать через WinSCP. Его обязательно переименовывают в firmware.bin и копируют на пустую microSD — не ту, что стоит в одноплатнике. Карту вставляют в разъём платы обесточенного принтера и включают питание. Запись занимает около тридцати секунд и внешне никак не проявляется; для надёжности ждут минуту, затем принтер выключают и карту вынимают. При успехе расширение файла на карте меняется на .CUR. После этого одноплатник соединяют с принтером кабелем и включают питание.
Файлы конфигурации
Проще всего взять готовый конфиг для своего принтера. В нём явно прописаны пины контроллера и все размеры, координаты и скорости. Например, в разделе двигателя оси Z для Bizon 3 указаны пин шагов PE1, инвертированный пин направления PE0 (инверсию обозначает восклицательный знак), инвертированный пин включения PE2 и 16 микрошагов. Скорость подъёма стола снижена со 100 единиц по умолчанию до 25: для тяжёлого стола прежнее значение грозило пропуском шагов.
Главный файл называется printer.cfg. Редактировать его следует в Notepad++, а не в «Блокноте» или Word. В конфиге также задают рывок и предельные скорости, порт подключения к принтеру, диаметры сопла и нити (в примере сопло 0,6 мм, пруток 1,75 мм).
Загрузить файлы можно через WinSCP в папку /config или через веб-интерфейс: вкладка MACHINE, папка config, перетаскивание файлов в список. После этого систему перезагружают.
Первая печать и дальнейшая настройка
После запуска стоит настроить Pressure Advance — он уменьшает дефекты от переэкструзии при торможении и недоэкструзии при разгоне, улучшая швы и углы (в конфиге примера задан коэффициент 0.1). Input Shaper помогает при «волнах» на стенках от вибрации головки.