среда, 10 февраля 2021 г.

Marlin: печать с платы с управлением через смарт-дисплей

Подвернулся совет по настройке Marlin для печати с платы (например, SKR 1.4), но под управлением со смарт-дисплея (например, BTT TFT35 V3.0) в смарт-режиме, а не в режиме эмуляции 12864.

SDSUPPORT (in Configuration.h)

LONG_FILENAME_HOST_SUPPORT (in Configuration_adv.h)

AUTO_REPORT_SD_STATUS (in Configuration_adv.h)

SDCARD_CONNECTION ONBOARD (in Configuration_adv.h)

EMERGENCY_PARSER (in Configuration_adv.h)

SERIAL_FLOAT_PRECISION 4 (in Configuration_adv.h)

HOST_ACTION_COMMANDS (in Configuration_adv.h)

HOST_PROMPT_SUPPORT (in Configuration_adv.h)

Так и время печати показывает и обработкой gcode занимается непосредственно плата принтера, но при этом сохраняется возможность управлять процессом печати и в тач режиме. Правда, с небольшой задержкой.

И там же про буферизацию обмена дисплей-плата.
Все изменения в configuration_adv.h

Здесь поднял количество команд хранящихся в буфере с 4 до 16. 

#define BUFSIZE 16 

Просто есть теория, что из-за лагов дисплея или помех или хе чего еще, команды поступающие от дисплея не успевают вовремя доходить и буфер команд опустошается из-за чего печать и виснет. По дефолту было 4 поднял до 16. Думаю хуже не будет

#if BOTH(SDSUPPORT, DIRECT_STEPPING)

  #define BLOCK_BUFFER_SIZE 32

#elif ENABLED(SDSUPPORT)

  #define BLOCK_BUFFER_SIZE 32

#else

  #define BLOCK_BUFFER_SIZE 32

#endif

Тут по честному не понял толком для чего этого. Что-то типа кэша команд при чтении с SD карты . В общем удвоил значения

#define TX_BUFFER_SIZE 32

Здесь увеличил до 32, для включения функции Advanced_OK

#define EMERGENCY_PARSER

Это для нормальной обработки аварийного завершения работы. 

#define NO_TIMEOUTS 1000

Тоже важный параметр для защиты от сбоев во время печати под управлением с дисплея. При ошибках передачи данных отправляет запрос на повторное получение пакета и ждет указанное время в миллисекундах

#define ADVANCED_OK

Помогает избежать ошибок опустошения буфера из-за плохого соединения и слишком быстрого выполнения команд принтером  

Комментариев нет:

Отправить комментарий

Ваш комментарий откроется после проверки и подтверждения.
Благодарю за понимание необходимости проверки!