Данные конфиги (макросы и скрипты) были разработаны мной для улучшения логики работы алгоритмов принтера, так как стоковые алгоритмы представляли из себя полный «хлам». Также я попытался добавить «юзер френдли» настройки, чтобы каждый смог настроит некоторые моменты под себя.
Скачать альтернативные конфиги
Внимание!!! Данные конфиги все еще находятся в стадии тестирования. Я очень рекомендую ставить эти конфиги только тем, кто хоть как-то разбирается в них. Не смотря на мои тесты, я мог не предвидеть всех ситуаций, которые могут привести к ошибкам.
Внимание!!! Данные конфиги проверены только на той версии прошивки которая указана в инструкции. Версии ниже или выше могут не поддерживаться.
Внимание!!! Данные конфиги не были проверены на работу с QIDIBOX из-за отсутствия у меня оного, но я оставлял все места, связанные с ним, не тронутыми, так что в теории должен работать.
Внимание!!! Данные конфиги были проверены только с Orcaslicer. В теории их можно портировать и на QIDIStudio, но я им не пользуюсь.
Дальнейшая разработка публичной версии конфигов и их правка буквально будет зависеть от отклика и охвата «аудиторией», если ее не будет, то я не вижу смысла как-либо дорабатывать и править их в дальнейшем.
Большинство особенностей, перечисленных тут и не только либо отключаются, либо настраиваются в файле Settings.cfg.
Доработан авто подбор шейперов. Теперь он происходит по 3 точкам и диапазоне частот от 20 до 100 гц. Также, при включенной опции, по окончанию калибровки шейперов будут построены графики. Они буду расположены прямо рядом с конфигами. Работает только с кнопки на экране или по команде M901.

Вместо KAMP используется мой собственный макрос адаптивной карты стола, по сути аналог KAMP, но только под конкретно этот принтер.
Был доработан PLR (возобновление печати после обрыва питания). Теперь восстановление печати может происходить сколько угодно раз за одну печать.
Макросы загрузки и выгрузки филамента также были доработаны. Теперь, при очистке сопла, ускорения фиксированы. Добавлена настройка дельты по температуре при которой начинается процесс очистки сопла. Добавлен признак по температуре для определения ТПУ (опционально), если будет определен что заряжен ТПУ, то будут применены более мягкие скорости экструдера и мягкий катер. При отключенной опции определения ТПУ мягкие скорости и катер будут применены всегда.
Также был доработан для работы с очень жесткими и мягкими пластиками. Его ускорения также теперь фиксированы.
Переписан хоуминг. Теперь стол опускается при любом хоуминге кроме по Z. Отдельный хоуминг по Z происходит в точке нахождения головы.
Добавлена возможность настройки ожидания нагрева стола и камеры, а также таймер сверх ожидания после нагрева перед калибровкой. Добавлена проверка наличия филамента перед стартом печати. Очистка сопла перед печатью происходит с позиционированием стола в точке очистки. Прайминг линии вынесены за область печати и их высота по Zтакже позиционируется.
Различные звуковые оповещения были добавлены в конфиги. На данный момент они присутствуют при:
Была добавлена возможность отключения в любой момент нейрослужб для экономии ресурсов хоста. Также их можно в любой момент включить обратно. Все это делает через кнопку макросов.
Перед установкой данных конфигов, я очень рекомендую сделать резервные копии ваших файлов из флюида. Нужно сделать резервные копии следующих файлов:
Также, я настоятельно рекомендую сделать копию вашего профиля принтера, так как в нем будут редактироваться g-коды.
Через флюид или через ssh закидываем следующие файлы конфигурации с заменой:
Если будете делать через ssh, то они находятся по пути «/home/mks/printer_data/config/».
Также по желанию закидываем «officiall_filas_list.cfg», но я крайне рекомендую это сделать.
Я там убрал кучу ненужных пластиков оставив только базовые варианты и поправил у них температуры, так как эти температуры использовались только при загрузке и выгрузке филамента.
Примеры:


Далее кладем папку «scripts» со всеми файлами туда же.
У вас должна быть папка «scripts» и 6 файлов в ней:


Далее открываем «printer.cfg» для редактирования.
Комментируем в начале строки (через #), присоединяющие KAMP (если они есть):
[include KAMP_Settings.cfg]
[include KAMP/KAMP_Settings.cfg]
Добавляем в начало строку:
[include Settings.cfg]
Вы должны получить по итогу что-то подобное:

Далее, находим блок [filament_switch_sensor filament_switch_sensor] и заменяем его полностью на этот:
[filament_switch_sensor filament_switch_sensor]
pause_on_runout: True
runout_gcode:
M118 Filament run out
FILA_DETECT
{% set can_auto_reload = print-er.save_variables.variables.auto_reload_detect|default(0) %}
{% if can_auto_reload == 1 %}
AUTO_RELOAD_FILAMENT
{% endif %}
insert_gcode:
event_delay: 3.0
pause_delay: 0.5
switch_pin:!THR:PA1
Далее ищем блок [bed_mesh] и в конец добавляем эти строки:
fade_start: 1
fade_end: 10
fade_target: 0
faulty_region_1_min: -1, -1
faulty_region_1_max: 28, 28
Пример:

Далее, после строк:
[virtual_sdcard]
path: ~/printer_data/gcodes
Добавляем:
[skew_correction]
Пример:

Теперь, ищем блок [resonance_tester] и заменяем его полностью на это:
[resonance_tester]
accel_chip:lis2dw
min_freq: 20
max_freq: 100
probe_points:
135, 5, 10
135, 70, 10
135, 135, 10
В блоке [printer] значение в строке square_corner_velocity меняем на 5 если там стоит другое.
square_corner_velocity: 5
Если вы хотите не просто включать/выключать освещение в принтере, а настраивать его яркость (но будет шим который будет видеть камера), то ищем блок [output_pin caselight] и полностью заменяем его на:
[output_pin caselight]
pin:PC9
pwm: true
cycle_time: 0.01
shutdown_value:0
value:1.0
Теперь у вас будет ползунок настройки яркости в веб интерфейсе:

Далее идем в слайсер (Проверено только на Orcaslicer) и открываем профиль принтера для редактирования g-кодов.
В стартовом g-коде удаляем все и вписываем следующее:
PRINT_START BED=[bed_temperature_initial_layer_single] HOTEND=[nozzle_temperature_initial_layer] CHAMBER=[chamber_temperature] EXTRUDER=[initial_no_support_extruder]
save_last_file HOTEND=[nozzle_temperature] HOTBED=[bed_temperature] CHAMBER=[chamber_temperature]
adapt_bedmesh XMIN={first_layer_print_min[0]} XMAX={first_layer_print_max[0]} YMIN={first_layer_print_min[1]} YMAX={first_layer_print_max[1]}
G0 X108 Y5 F6000
SET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count]
M83
M104 S[nozzle_temperature_initial_layer]
T[initial_tool]
G1 X108.000 Y-0.5 F30000
probe
M190 S[bed_temperature_initial_layer_single]
M191 S[chamber_temperature]
M109 S[nozzle_temperature_initial_layer]
M106 P2 S0
G91
G1 Z[initial_layer_print_height] F600
;G1 E3 F1800
G90
M83
G0 X128 E8 F{outer_wall_volumetric_speed/(24/20) * 60}
G0 X133 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}
G0 X138 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}
G0 X143 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}
G0 X148 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}
G0 X153 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}
G91
G1 X1 Z-0.300
G1 X4
G1 Z1 F1200
G90
M400
G1 X158.000 Y-0.5 F30000
G91
G1 Z-0.7 F600
G90
M83
G0 X178 E10 F{outer_wall_volumetric_speed/(24/20) * 60}
G0 X183 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}
G0 X188 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}
G0 X193 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}
G0 X198 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5) * 60}
G0 X203 E.3742 F{outer_wall_volumetric_speed/(0.3*0.5)/4 * 60}
G91
G1 X1 Z-0.300
G1 X4
G1 Z1 F1200
G90
M400
G1 Z1 F600
;SET_SKEW XY=141.53,141.50,100.23 XZ=141.32,141.52,100.23 YZ=141.52,141.41,100.23
Если вы в будущем будете настраивать свой skew correction, то раскоментируйте строку SET_SKEW и замените в ней значения на свои.
В завершающем g-коде просто удаляем все, он должен быть пустой.
Если у вас проблемы с таймлапсами, что они пишутся как будто не до конца, то листаем до g-кода после смены слоя и удаляем там все, после чего вписываем это:
G92 E0
TIMELAPSE_TAKE_FRAME
SET_PRINT_STATS_INFO CURRENT_LAYER={layer_num + 1}
После этого полностью перезапустите принтер.
Когда принтер включится, выполните макрос INSTALL_REQ_LIB.

Он установит зависимости для построения графиков шейперов. Это займет какое-то время. По окончанию будет дан звуковой сигнал.
Далее отредактируйте параметры в Settings.cfg под себя.
Если нужно отключить нейрослужбы, то выполните макрос REMOVE_ALGO_APP:

Внимание!!! Отключение нейрослужб это не тоже самое что отключение на экране. На экране просто вкл/выкл функция, а в этом случае отключается сама служба, что заметно разгружает хост, и галочка на экране перестает на что-то влиять.
Для начала в веб-интерфейсе нажимаем на 3 точки слева вверху:

Далее нажимаем кнопку «компоновка панели управления»:

После ставим галочку напротив пункта «Макросы»:

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

Далее, я очень рекомендую проверить позицию по Y для чистки сопла об стол. Если сопло будет тыкаться в отверстие это приведет к проблемам и возможно к поломке. Это значение в параметре variable_clear_y_scrub в файле Settings.cfg. По умолчанию это 282. Если вы хотите использовать другое, то проверяйте с другим значением по Y.
Для этого хоумимся по всем осям и после этого вводим команду: G1 X135 Y282 Z0 F3000
После чего смотрим где стоит кончик сопла. Если оно стоит в прорези между основой пластины и «ушком», то значение Y надо поднять пока кончик сопла не окажется на нижней половине «ушка».
Рисунок как подбирать значение Y у variable_clear_y_scrub в файле Settings.cfg:

Подобранное значение надо вписать в variable_clear_y_scrub в файл Settings.cfg.
Автор: @cerega66