Для чего?
Для расширения функционала. Для подключения внешнего акселерометра если плату головы перенесли в отсек электроники. Для возможности установки платы стороннего производителя в голову вместо штатной (тут чуть сложнее с подключением питания и датчиком температуры, но процесс прошивки схожий).
Сразу предупреждаю, все действия, описанные здесь, а также любые иные действия так или иначе связанные с этим гайдом вы выполняете на свой страх и риск. За любой прямой или косвенный ущерб, возникший в результате этих действий я ответственность не несу. Будьте внимательны, прошивки в принтерах могут быть разных версий, где-то всё будет работать отлично, где-то могут быть незначительные отличия в процессе подключения, где-то может вообще не заработать, я не могу дать 100% гарантий.
Всё делалось на принтере Х-мах 3 с прошивкой VERSION: V4.3.15
Итак, начинаем начинать!
Что нам нужно: Принтер хмах3, ноут или комп, в той же сети, что и принтер, плата мцу, кабель усб для неё, программы для доступа к файловой системе принтера (Filezilla, опционально – можно прошить прямо из консоли), SSH подключение (Putty). В данной статье я буду показывать на примере платы Raspberry pi Pico c процессором RP2040, потому что она у меня есть и этот же процессор стоит в плате головы и в плате внешнего усб акселерометра fly adxl345. Все они шьются одинаково.
Берём вашу плату мцу, зажимаем на ней кнопку BOOT (BOOTSEL) и подключаем ее к компу. Плата определяется как съемный диск. Определилась? Если да – идем дальше. Нет – повторяем процедуру, пока не определится.
Подключаемся по SSH к принтеру:
Запускаем Putty, пишем в Host Name IP принтера, порт 22 -> нажимаем OPEN
Вводим логин mks, пароль makerbase. Обратите внимание, пароль вводится, но не отображается!

При успешной авторизации видим это:

Далее будут команды и скрины с участком консоли, чтоб было видно наглядно как это выглядит
Переходим в директорию клиппера
cd ~/klipper
make clean
make menuconfig
В открывшемся окне выбираем

Нажимаем enter
Выбираем архитектуру процессора, в нашем случае Raspberry Pi RP2040
Enter
Далее проверяем опции (нажать enter)
Должно стоять всё так:
Далее нажимаем Q , подтверждаем изменения Y, окно закроется.
В консоли продолжаем, вводим
make
Начнется компиляция прошивки для платы. При успешной компиляции получаем:
Нам нужен файл прошивки klipper.uf2 . На этом этапе возможны варианты прошивки напрямую из принтера, но я их рассматривать не буду, они подробно рассмотрены тут: klipper.wiki, раздел прошивка MCU.
Putty пока не закрываем.
Запускаем Filezilla
Хост – IP адрес принтера, логин пароль mks makerbase, порт 22. Нажимаем быстрое соединение
Идем в столбце удаленный сайт в /home/mks/klipper/out
Берем файл klipper.uf2 и копируем его на наш съемный диск распберри. (RPI-RP2)
После копирования диск пропадает, мцу прошита!
Filezilla закрываем
Открываем Putty
Выходим из директории klipper
cd
Получаем список всего железа, висящего на usb
lsusb
Вытаскиваем мцу из компа и втыкаем её в принтер. Просто втыкаем, ничего зажимать не нужно!
Снова получаем список всего железа, висящего на usb
lsusb
Видим уже 2 одинаковых девайса. Один из них и есть наша мцу. Вторая – плата в башке принтера. Вводим
ls /dev/serial/by-id/*
А вот тут уже интереснее: идем в орку или чуди студию и открываем конфиги, файл MKS_THR.cfg. Нам нужно знать, как прописана мцу в голове принтера
Видим, …..6458 это голова, значит …..330F наша мцу. Закрываем.
Создаем новый файл в конфигах, назовём его к примеру fly_adxl345.cfg
Открываем его и пишем,
ID копируем из Putty
Сохранить, закрыть.
Отрываем printer.cfg
Прописываем [include fly_adxl345.cfg]
Сохранить и перезагрузить
Переходим в раздел система и видим нашу мцу!
Радуемся. Прописываем в файл fly_adxl345.cfg функционал пинов, аксель и прочие плюшки.
Если мцу не используется достаточно закомментировать строку
поставив ; в начале строки и нажать сохранить и перезагрузить. Всё, мцу вместе со всеми прописанными плюшками отключена в программе и ни на что не влияет. Можно отключить ее от принтера.
На этом всё, удачи! Ваш @s_tver