forked from MarlinFirmware/Marlin
-
Notifications
You must be signed in to change notification settings - Fork 4
Home
ursoft edited this page Mar 28, 2020
·
40 revisions
Состояние проекта: стабильный Марлин2 + альфа-версия нескольких оригинальных нововведений, обновлен 01/03/2020 к upstream = MarlinFirmware/Marlin/bugfix-2.0.x.
- Улучшения по работе с флешками:
-
При вставке внешней флешки сразу предлагает список файлов, самый свежий выделен. В один клик запускается на печать. Включается
#define SD_SHOW_FILES_ON_MEDIA_INSERTED
-
Поддержана печать с внутренней флешки. Включается
#define SDCARD_CONNECTION LCD_AND_ONBOARD
. При этом не закрыт механизм обновления ПО, а сама флешка доступна ПК как USB-диск со скоростью 12Мбит/с (но не во время печати). Внешней флешкой (в отличие от режима ONBOARD) тоже можно пользоваться - достаточно ее вставить, и принтер перейдет на работу с ней. -
Повтор последней успешной печати. Включается
#define SD_REPRINT_LAST_SELECTED_FILE
. Предлагает в один клик напечатать еще раз или скрутить на другой файл. Если включить#define SD_MENU_MEDIA_SHOW_LAST_PRINT_DURATION
, то в первой строке списка файлов напишет, сколько длилась предыдущая печать. -
Показ длинных имен файлов SD-карты в кириллице. Включается
#define CYRILLIC_FILENAMES
. Поддерживается не весь юникод, а только общее между 1251 и юникодом. Изменениями можно пользоваться как в меню принтера, так и в pronterface. Другим программам требуется перекодировка из 1251 в те кодировки, которыми они умеют пользоваться.
- Улучшения по работе с энкодером:
-
Двойное/долгое нажатие в главном меню. Включается
#define LONGCLICK_FOR_IDLE
. Исполняет файлlong_cli.g
или (если нет такого), запускает прогрев на первый материал. Подробный алгоритм см. по ссылке. -
Крутилка в окне статуса. Включается
#define FEEDRATE_CHANGE_ONLY_WHILE_PRINT
. Если не идет печать, то крутить влево - показ списка файлов (при отсутствии флешек - меню смены филамента), а вправо - пользовательское меню. -
Редакторы: более простой доступ к дальним значениям. Включается
#define LEVELING_FADE_HEIGHT_DEFAULT 10
и#define WRAP_EDITORS
. - PID стола - редактируется и запускается из меню. Искать там же, где и PID экструдеров.
-
Управление кулером обдува COLDEND. По умолчанию SUNON там запитан на выходе для нагревателя второй головы, ШИМ 200 из 255. Это шумно, и (вроде бы) чрезмерно. Можно уменьшить при помощи custom gcode (чтобы у каждого материала был свой вариант). Включать при помощи
#define EXTRUDER_AUTO_FAN_SPEED_CONFIGURABLE
. Появляется командаM106 P1 S100
, где 1 - это индекс первого незанятого в прошивке кулера (0 занят кулером обдува детали), а 100 - значение ШИМ. На этом значении я печатаю PLA FDPLAST, забивания экструдера не наблюдается, кулер же ощутимо тише шумит, чем на ШИМ 200. -
Сохранение режима MBL в EEPROM. Если выключить в меню или не настроить карту, высоту отмены - MBL включен не будет. Если включить, настроить и сохранить в EEPROM - будет работать, не требуя от слайсера команды
M420 S1
(в этом отличие от оригинального марлина, я бы оборвал тамошним программистам руки за такое неадекватное требование при наличии в меню опции включения и сохранения). В режиме 12864 стол теперь тоже мигает при включенной коррекции. - Более аккуратная парковка после прерывания печати.
- Улучшения графического интерфейса пользователя:
-
12864: сохранение пользовательского цвета в EEPROM. Включается
#define NEOPIXEL_EEPROM_STORE_HACK
. -
Показ состояния концевиков в главном окне. Включается
#define LCD_SHOW_ENDSTOPS_STATUS
. Если датчик сработал, то во второй строке главного окна буква его оси (xyz) будет в нижнем регистре. Сразу все видно, не нужно запускатьM119
. -
12864: Иконка SD-карты более информативная. Включается
#define DOGM_SD_PRESENT
. Видно, вставлена ли карта (значок есть), куда вставлена (в материнку или в дисплейный модуль - размер и положение значка), смонтирована ли она принтером (значок не мигает), используется ли в данный момент для печати (внутри значка мигает полоска). -
12864: Заполнены пустоты экрана. Включается
#define DOGM_SHOW_SPEED
,#define DOGM_SHOW_LAYER
,#define DOGM_SHOW_PERF
. Первый включает показ скорости, второй - номер слоя и количество слоёв (считанные с SD-карты, если есть) и третий показывает 2 прогресса: уровень заполнения буфера планировщика движений и диапазон загрузки процессора между перерисовками дисплея (первая половина индикатора - до 5 мс, вторая - до 30 мс на итерацию цикла idle). -
Ручная настройка стола по 3 точкам. Включается
#define LEVEL_CORNERS_3POINT
.
Включил все возможности марлина, которые я счел интересными и работающими. Список получился очень длинный, см. в запросах или прямо в истории изменения исходников. Если какие-то окажутся спорными, то их включение отнесу в свою личную конфигурацию.
- Занижены HEATER_*_MAXTEMP=240, BED_MAXTEMP=90. У меня резкое нежелание портить PTFE-трубку и магнитный коврик, а нейлоном я на другом принтере (закрытом) печатать буду.
- PID экструдера DEFAULT_K* у меня отличаются от значения в Марлин по умолчанию для Ultimaker, но для всех они вряд ли подойдут.
- PID стола DEFAULT_bedK* у меня отличаются от значений, рекомендованных разработчиком
- Предопределенные материалы и температуры. У меня PLA и SBS, с моими любимыми значениями.
- Настройки драйверов ШД отличаются от стокового изделия
- Включена поддержка длинных имен для Octoprint
- Включена поддержка датчика 3dtouch. Задействован Ymax. Его резервно дублирует стоковый датчик Zmin.