Skip to content
ursoft edited this page Mar 28, 2020 · 40 revisions

Состояние проекта: стабильный Марлин2 + альфа-версия нескольких оригинальных нововведений, обновлен 01/03/2020 к upstream = MarlinFirmware/Marlin/bugfix-2.0.x.

Список основных оригинальных нововведений

  • Улучшения по работе с флешками:
  1. При вставке внешней флешки сразу предлагает список файлов, самый свежий выделен. В один клик запускается на печать. Включается #define SD_SHOW_FILES_ON_MEDIA_INSERTED
  2. Поддержана печать с внутренней флешки. Включается #define SDCARD_CONNECTION LCD_AND_ONBOARD. При этом не закрыт механизм обновления ПО, а сама флешка доступна ПК как USB-диск со скоростью 12Мбит/с (но не во время печати). Внешней флешкой (в отличие от режима ONBOARD) тоже можно пользоваться - достаточно ее вставить, и принтер перейдет на работу с ней.
  3. Повтор последней успешной печати. Включается #define SD_REPRINT_LAST_SELECTED_FILE. Предлагает в один клик напечатать еще раз или скрутить на другой файл. Если включить #define SD_MENU_MEDIA_SHOW_LAST_PRINT_DURATION, то в первой строке списка файлов напишет, сколько длилась предыдущая печать.
  4. Показ длинных имен файлов SD-карты в кириллице. Включается #define CYRILLIC_FILENAMES. Поддерживается не весь юникод, а только общее между 1251 и юникодом. Изменениями можно пользоваться как в меню принтера, так и в pronterface. Другим программам требуется перекодировка из 1251 в те кодировки, которыми они умеют пользоваться.
  • Улучшения по работе с энкодером:
  1. Двойное/долгое нажатие в главном меню. Включается #define LONGCLICK_FOR_IDLE. Исполняет файл long_cli.g или (если нет такого), запускает прогрев на первый материал. Подробный алгоритм см. по ссылке.
  2. Крутилка в окне статуса. Включается #define FEEDRATE_CHANGE_ONLY_WHILE_PRINT. Если не идет печать, то крутить влево - показ списка файлов (при отсутствии флешек - меню смены филамента), а вправо - пользовательское меню.
  3. Редакторы: более простой доступ к дальним значениям. Включается #define LEVELING_FADE_HEIGHT_DEFAULT 10 и #define WRAP_EDITORS.
  4. 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 стол теперь тоже мигает при включенной коррекции.
  • Более аккуратная парковка после прерывания печати.
  • Улучшения графического интерфейса пользователя:
  1. 12864: сохранение пользовательского цвета в EEPROM. Включается #define NEOPIXEL_EEPROM_STORE_HACK.
  2. Показ состояния концевиков в главном окне. Включается #define LCD_SHOW_ENDSTOPS_STATUS. Если датчик сработал, то во второй строке главного окна буква его оси (xyz) будет в нижнем регистре. Сразу все видно, не нужно запускать M119.
  3. 12864: Иконка SD-карты более информативная. Включается #define DOGM_SD_PRESENT. Видно, вставлена ли карта (значок есть), куда вставлена (в материнку или в дисплейный модуль - размер и положение значка), смонтирована ли она принтером (значок не мигает), используется ли в данный момент для печати (внутри значка мигает полоска).
  4. 12864: Заполнены пустоты экрана. Включается #define DOGM_SHOW_SPEED, #define DOGM_SHOW_LAYER, #define DOGM_SHOW_PERF. Первый включает показ скорости, второй - номер слоя и количество слоёв (считанные с SD-карты, если есть) и третий показывает 2 прогресса: уровень заполнения буфера планировщика движений и диапазон загрузки процессора между перерисовками дисплея (первая половина индикатора - до 5 мс, вторая - до 30 мс на итерацию цикла idle).
  5. Ручная настройка стола по 3 точкам. Включается #define LEVEL_CORNERS_3POINT.

Список включенных (по сравнению со стоковой прошивкой) опций

Включил все возможности марлина, которые я счел интересными и работающими. Список получился очень длинный, см. в запросах или прямо в истории изменения исходников. Если какие-то окажутся спорными, то их включение отнесу в свою личную конфигурацию.

Clone this wiki locally