Main_ru - ghzserg/zmod GitHub Wiki
Макрос - это небольшая программа на языке Klipper/Gcode.
Он может вызываться:
- Из файла GCODE
- Из консоли Fluidd/Mainsail (нажать английскую букву
Cв fluidd)
Note
Значение указанное в скобках - это значение по умолчанию
🔷 Основные параметры 🔷 |
|||
|---|---|---|---|
| START_PRINT | END_PRINT | CLOSE_DIALOGS | FAST_CLOSE_DIALOGS |
| LED | LED_OFF | LED_ON | PLAY_MIDI |
| CLEAR_NOZZLE | NEW_SAVE_CONFIG | CANCEL | |
| PAUSE | RESUME | REBOOT | SHUTDOWN |
Эта документация устарела. Актуальная версия доступна по ссылке
Замена родного начального g-code (если используется с экраном, то добавить M140 или M190 Sтемпература_стола и M109 или M104 Sтемпература_экструдера)
- EXTRUDER_TEMP - температура экструдера (245)
- BED_TEMP - температура стола (80)
- MESH - имя карты стола, которую подгружать, если не задано, то ничего не подгружается, если не существует то будет создана ("")
- FORCE_LEVELING - принудительно строить карту стола (False)
- SKIP_LEVELING - не строить карту стола ни при каком условии. Сильнее FORCE_KAMP и FORCE_LEVELING (False)
- FORCE_KAMP - запустить построение адаптивной карты стола (False) Рекомендуется также поставить
SAVE_ZMOD_DATA CLEAR=LINE_PURGE, что позволит использовать место для очистки, там где снята карта стола. - Z_OFFSET - Установить Z офсет (0.0)
- INTERNAL - Для PRO версии при работе в режиме без родного экрана, 1 - включить внутреннюю рециркуляцию (0)
- EXTERNAL - Для PRO версии при работе в режиме без родного экрана, 1 - включить внешнюю рециркуляцию (0)
Любой вызов калибровки FORCE_KAMP или FORCE_LEVELING вызывает CLEAR_NOZZLE
Во время запуска START_PRINT вызывается ZSSH_RELOAD, который восстанавливает SSH подключение, если это требуется
Пример для Orca c родным экраном. Удаляете стартовый код и ставите то что ниже
START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]
M190 S[bed_temperature_initial_layer_single]
M104 S[nozzle_temperature_initial_layer]
Пример для Orca в режиме без родного экрана
START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single]
Чтобы корректно считались слои во Fluidd, в стартовый код прописать:
SET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count]
И в код смены слоя добавить:
SET_PRINT_STATS_INFO CURRENT_LAYER={layer_num + 1}
Какие есть варианты снятия карты стола?
дикобраз
Это не параметры START_PRINT, это глобальные флаги/параметры, которые ставится через SAVE_ZMOD_DATA:
Эта документация устарела. Актуальная версия доступна по ссылке
- PRECLEAR - использовать пред очистку сопла в CLEAR_NOZZLE 0-нет, 1-да (0).
- CLEAR - Выбрать алгоритм очистки сопла (LINE_PURGE)
- PRINT_LEVELING - при каждой печати строить карту стола 0-нет, 1-да (0).
- USE_KAMP - Где возможно использовать адаптивную карту стола(KAMP), вместо полной карты стола 0-нет, 1-да (0)
- DISABLE_PRIMING - запретить очистку сопла выдавливанием 0-нет, 1-да (0)
-
FORCE_MD5 - если 1 (по умолчанию 1) - проверять MD5 сумму файла, при ошибке - удалять файл. Пропишите в скрипты постобработки вызов addMD5.bat или addMD5.sh для Mac/Linux(не забудьте добавить право исполнения на файл
chmod +x addMD5.sh) он лежит в mod. Подробнее Его надо скачать к себе на компьютер, а потом в Orca прописать. Профиль процесса -> Прочее -> Скрипты пост обработки.С:\путь_до_файла\addMD5.bat; -
DISABLE_SKEW - 1 - запретить SKEW коррекцию, 0 - загрузить профиль
skew_profile(будет вызван макросSKEW_PROFILE LOAD=skew_profile) (1) - AUTO_REBOOT - автоматическая перезагрузка принтера после окончания печати 0-нет, 1-да, 2-FIRMWARE_RESTART(только в режиме без родного экрана, с экраном REBOOT) (0).
- CLOSE_DIALOGS - автоматически закрывать диалоги по окончанию и отмене печати 0-нет, 1-да медленно, 2-да быстро Для работы быстрого закрытия диалогов необходимо через меню экрана принтера перейти на вкладку "Настройки" -> "Иконка WiFi" -> "Сетевой режим" -> включить ползунок "Только локальные сети" (0).
- STOP_MOTOR - Автоматически выключать моторы после печати/отмены печати через 25 секунд 0-нет, 1-да (1).
- MIDI_START - играть MIDI при запуске печати ("")
- MIDI_END - играть MIDI при завершении печати ("")
Эта документация устарела. Актуальная версия доступна по ссылке
- Если MESH не пустой, то загружается карта с именем записанном в параметре MESH
- Если SKIP_LEVELING = True - то карта стола не будет сниматься ни при каких условиях
- В противном случае,
- Если стоит FORCE_CAMP = True, то снимается KAMP
- В противном случае
- Если не загружена карта стола (родная голова всегда грузит карту MESH_DATA) или если FORCE_LEVELING = True
- То запускается построение карты стола, но она сама не сохраняется
Эта документация устарела. Актуальная версия доступна по ссылке
Замена родного конечного g-code
Это не параметры END_PRINT, это глобальные флаги/параметры, которые ставится через SAVE_ZMOD_DATA
Эта документация устарела. Актуальная версия доступна по ссылке
- AUTO_REBOOT - автоматическая перезагрузка принтера после окончания печати 0-нет, 1-да,2-FIRMWARE_RESTART(только в режиме без родного экрана, с экраном REBOOT) (0).
- CLOSE_DIALOGS - автоматически закрывать диалоги по окончанию и отмене печати 0-нет, 1-да медленно, 2-да быстро Для работы быстрого закрытия диалогов необходимо через меню экрана принтера перейти на вкладку "Настройки" -> "Иконка WiFi" -> "Сетевой режим" -> включить ползунок "Только локальные сети" (0).
- STOP_MOTOR - Автоматически выключать моторы после печати/отмены печати через 25 секунд 0-нет, 1-да (1)
- MIDI_END - играть MIDI при завершении печати ("")
Эта документация устарела. Актуальная версия доступна по ссылке
Пользовательский макрос для добавления собственных действий в начале печати.
Этот макрос вызывается автоматически в конце макроса START_PRINT. Используется для расширения стандартного процесса инициализации печати пользовательскими командами.
Где использовать:
- Добавить собственные команды нагрева или калибровки
- Выполнить дополнительные настройки перед началом печати
- Включить/выключить устройства (вентилятор, датчики и т.д.)
- Добавить пользовательскую очистку сопла или прочие подготовительные операции
Пример переопределения в mod_data/user.cfg:
[gcode_macro _USER_START_PRINT]
gcode:
# Включить дополнительный вентилятор
SET_PIN PIN=my_fan VALUE=1
# Какая-то ваша команда
G4 P1000 ; пауза 1 секунда
# Еще какие-то действияПримечание: По умолчанию макрос пустой и может быть переопределен пользователем в соответствии с его нуждами.
Эта документация устарела. Актуальная версия доступна по ссылке
Пользовательский макрос для добавления собственных действий в конце печати.
Этот макрос вызывается автоматически в конце макроса END_PRINT. Используется для расширения стандартного процесса завершения печати пользовательскими командами.
Где использовать:
- Выполнить дополнительные действия по окончании печати
- Выключить дополнительные устройства
- Сохранить статистику или логи
- Запустить пользовательскую очистку или обслуживание принтера
Пример переопределения в mod_data/user.cfg:
[gcode_macro _USER_END_PRINT]
gcode:
# Выключить дополнительный вентилятор
SET_PIN PIN=my_fan VALUE=0
# Отправить уведомление
M118 Печать завершена!
# Или другие ваши командыПримечание: По умолчанию макрос пустой и может быть переопределен пользователем в соответствии с его нуждами.
Эта документация устарела. Актуальная версия доступна по ссылке
Отменить печать
Эта документация устарела. Актуальная версия доступна по ссылке
Очистка сопла о стол как в родной прошивке
- EXTRUDER_TEMP - температура экструдера (230)
- BED_TEMP - температура стола (80)
PRECLEAR - использовать пред очистку сопла в CLEAR_NOZZLE 0-нет, 1-да (0).
Это не параметр CLEAR_NOZZLE, это глобальный флаг, который ставится через SAVE_ZMOD_DATA PRECLEAR=1. Подробнее тут
Переопределение макроса CLEAR_NOZZLE в mod_data/user.cfg не изменит родную очистку сопла о стол, при вызове непосредственно с родного экрана, т.к. родной экран прекрасно работает и без zMod, а значит не использует макросы zMod
Эта документация устарела. Актуальная версия доступна по ссылке
Включить подсветку
Эта документация устарела. Актуальная версия доступна по ссылке
Выключить подсветку
Эта документация устарела. Актуальная версия доступна по ссылке
Включить подсветку на несколько процентов
- S - процент (50)
Эта документация устарела. Актуальная версия доступна по ссылке
Поставить печать на паузу
Эта документация устарела. Актуальная версия доступна по ссылке
Восстановить печать после паузы
Эта документация устарела. Актуальная версия доступна по ссылке
Проиграть MIDI файл
- FILE - имя файла (For_Elise.mid) файлы хранятся в mod_data/midi/
Эта документация устарела. Актуальная версия доступна по ссылке
Перезагрузить принтер
Эта документация устарела. Актуальная версия доступна по ссылке
Вызывает медленное закрытие диалогов с родного экрана. Используется для закрытия окна по окончанию печати или при отмене печати.
Может приводить к зависанию принтера.
Реализация: @darksimpson
Также управляется через глобальный параметр CLOSE_DIALOGS
Эта документация устарела. Актуальная версия доступна по ссылке
Вызывает быстрое закрытие диалогов с родного экрана. Используется для закрытия окна по окончанию печати или при отмене печати.
Работает быстрее, не приводит к зависанию принтера.
Для работы быстрого закрытия диалогов необходимо через меню экрана принтера перейти на вкладку Настройки -> Иконка WiFi -> Сетевой режим -> включить ползунок Только локальные сети.
Также управляется через глобальный параметр CLOSE_DIALOGS
Реализация: @darksimpson
Эта документация устарела. Актуальная версия доступна по ссылке
Вызывает SAVE_CONFIG с родного экрана. Можно использовать для перезагрузки клиппера без зависания родного экрана.
Реализация: @darksimpson
Работает около минуты.
Иногда может приводить к некорректной работе родного экрана
Эта документация устарела. Актуальная версия доступна по ссылке
Выключить принтер

