Вызов макросов не через меню экрана, не через веб интерфейс, а просто по нажатию кнопки? Это легко и просто.
Полное описание настройки в конфигурации смотрите на официальном ресурсе прошивки Klipper
Я покажу свой пример настройки
Пример использования с платой Bigtreetech SKR 3
На плате можно задействовать свободные пины для концевых выключателей или детекции чего-то там….
Активация макросов может осуществляться как по высокому так и по низкому уровню сигнала. Проще всего подключить конечно по низкому, то есть подтягивая управляющий пин к земле (GND). Собственно как и подключаются чаще всего механические концевые выключатели. Кнопки в данном случае должны быть с нормально разомкнутыми контактами.
Сначала выбираем что нужно активировать. Пусть это будет для одной кнопки стандартный макрос паузы, который обычно добавляется в любую конфигурацию с прошивкой Klipper — [gcode_macro PAUSE]
А для второй кнопки создадим свой макрос предварительного нагрева:
[gcode_macro heating]
gcode:
SET_HEATER_TEMPERATURE HEATER=heater_bed TARGET=85
SET_HEATER_TEMPERATURE HEATER=extruder TARGET=230
ВНИМАНИЕ! На некоторых 3д принтерах одновременный разогрев сопла и стола не рекомендуется!
Смотрим какие пины задействованы и прописываем строки для работы макросов от кнопок.
[gcode_button press_heating]
pin: !PC2
press_gcode: heating
[gcode_button press_pause]
pin: !PA0
press_gcode: PAUSE
А чтобы не городить кучу кнопок, можно установить плату автоотключения, благодаря которой 3д принтер еще будет безопаснее и функциональнее. Подробнее про плату автоотключения.
Спасибо за ваши комментарии, лайки и подписку на канал)