Main_ru - ghzserg/zmod GitHub Wiki

Main

Read in English

Макрос - это небольшая программа на языке Klipper/Gcode.

Он может вызываться:

  • Из файла GCODE
  • Из консоли Fluidd/Mainsail (нажать английскую букву C в fluidd)

Note

Значение указанное в скобках - это значение по умолчанию

@zmod_help_bot


🔷 Основные параметры 🔷

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

START_PRINT

Эта документация устарела. Актуальная версия доступна по ссылке

Замена родного начального 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
  • То запускается построение карты стола, но она сама не сохраняется

Top


END_PRINT

Эта документация устарела. Актуальная версия доступна по ссылке

Замена родного конечного 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 при завершении печати ("")

Top


_USER_START_PRINT

Эта документация устарела. Актуальная версия доступна по ссылке

Пользовательский макрос для добавления собственных действий в начале печати.

Этот макрос вызывается автоматически в конце макроса START_PRINT. Используется для расширения стандартного процесса инициализации печати пользовательскими командами.

Где использовать:

  • Добавить собственные команды нагрева или калибровки
  • Выполнить дополнительные настройки перед началом печати
  • Включить/выключить устройства (вентилятор, датчики и т.д.)
  • Добавить пользовательскую очистку сопла или прочие подготовительные операции

Пример переопределения в mod_data/user.cfg:

[gcode_macro _USER_START_PRINT]
gcode:
    # Включить дополнительный вентилятор
    SET_PIN PIN=my_fan VALUE=1
    # Какая-то ваша команда
    G4 P1000  ; пауза 1 секунда
    # Еще какие-то действия

Примечание: По умолчанию макрос пустой и может быть переопределен пользователем в соответствии с его нуждами.

Top


_USER_END_PRINT

Эта документация устарела. Актуальная версия доступна по ссылке

Пользовательский макрос для добавления собственных действий в конце печати.

Этот макрос вызывается автоматически в конце макроса END_PRINT. Используется для расширения стандартного процесса завершения печати пользовательскими командами.

Где использовать:

  • Выполнить дополнительные действия по окончании печати
  • Выключить дополнительные устройства
  • Сохранить статистику или логи
  • Запустить пользовательскую очистку или обслуживание принтера

Пример переопределения в mod_data/user.cfg:

[gcode_macro _USER_END_PRINT]
gcode:
    # Выключить дополнительный вентилятор
    SET_PIN PIN=my_fan VALUE=0
    # Отправить уведомление
    M118 Печать завершена!
    # Или другие ваши команды

Примечание: По умолчанию макрос пустой и может быть переопределен пользователем в соответствии с его нуждами.

Top


CANCEL

Эта документация устарела. Актуальная версия доступна по ссылке

Отменить печать

Top


CLEAR_NOZZLE

Эта документация устарела. Актуальная версия доступна по ссылке

Очистка сопла о стол как в родной прошивке

  • 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

Top


LED_ON

Эта документация устарела. Актуальная версия доступна по ссылке

Включить подсветку

Top


LED_OFF

Эта документация устарела. Актуальная версия доступна по ссылке

Выключить подсветку

Top


LED

Эта документация устарела. Актуальная версия доступна по ссылке

Включить подсветку на несколько процентов

  • S - процент (50)

Top


PAUSE

Эта документация устарела. Актуальная версия доступна по ссылке

Поставить печать на паузу

Top


RESUME

Эта документация устарела. Актуальная версия доступна по ссылке

Восстановить печать после паузы

Top


PLAY_MIDI

Эта документация устарела. Актуальная версия доступна по ссылке

Проиграть MIDI файл

  • FILE - имя файла (For_Elise.mid) файлы хранятся в mod_data/midi/

Top


REBOOT

Эта документация устарела. Актуальная версия доступна по ссылке

Перезагрузить принтер

Top


CLOSE_DIALOGS

Эта документация устарела. Актуальная версия доступна по ссылке

Вызывает медленное закрытие диалогов с родного экрана. Используется для закрытия окна по окончанию печати или при отмене печати.

Может приводить к зависанию принтера.

Реализация: @darksimpson

Также управляется через глобальный параметр CLOSE_DIALOGS

Top


FAST_CLOSE_DIALOGS

Эта документация устарела. Актуальная версия доступна по ссылке

Вызывает быстрое закрытие диалогов с родного экрана. Используется для закрытия окна по окончанию печати или при отмене печати.

Работает быстрее, не приводит к зависанию принтера.

Для работы быстрого закрытия диалогов необходимо через меню экрана принтера перейти на вкладку Настройки -> Иконка WiFi -> Сетевой режим -> включить ползунок Только локальные сети.

Также управляется через глобальный параметр CLOSE_DIALOGS

Реализация: @darksimpson

Top


NEW_SAVE_CONFIG

Эта документация устарела. Актуальная версия доступна по ссылке

Вызывает SAVE_CONFIG с родного экрана. Можно использовать для перезагрузки клиппера без зависания родного экрана.

Реализация: @darksimpson

Работает около минуты.

Иногда может приводить к некорректной работе родного экрана

Top


SHUTDOWN

Эта документация устарела. Актуальная версия доступна по ссылке

Выключить принтер


Back Top Forward

⚠️ **GitHub.com Fallback** ⚠️