MKS Robin NANO / Sapphire Pro / Marlin 2.. Или продолжение про порося.

VyacheslavSS
Идет загрузка
Загрузка
06.04.2021
1452
48
Техничка

Подпишитесь на автора

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

Отписаться от уведомлений вы всегда сможете в профиле автора.

7

Начало тут, сопутствующие материалы можно найти у меня в блоге.

Не буду писать лирических вступлений, что, почему и т.д. Сразу к сути.

Представляю общественности бета версию прошивки для MKS Robin Nano адаптированную и в настоящий момент используемую на моем Sapphire PRO. Прошивка так же подойдет и для других принтеров с похожей кинематикой и начинкой. Кодовое назване SHUI. Лого украл в сети дописал буквы, рисовать не умею )), в последствии заменю.

Основные характеристики:

  • Ядро Marlin 2
  • Сторонняя графическая библиотека отсутствует, используется лишь дрйвер дисплея из ядра, поэтому алгоритмы работы с графикой максимально легковесны.
  • Интеграция в Марлин через предоставленный API, никаких изменений в ярде не произоводилось
  • На настоящий момент срез Marlin bugfix2.0.x от 2021-04-03
  • Размер области печти фиксирванный 220x220x??? (в кофигурации есть настройки и они будут работать, но требуются незначительные изменения в ядре Марлин, для оси Z параметр изменяемый)
  • Драйверы шаговых двигателей TMC2208, TMC2209
  • Парковка X-MIN, Y-MAX, Z-MIN (есть вариант X-MIN, Y-MIN, Z-MIN для Two Trees Bluer)
  • Алгоритм компенсации давления филамента LINEAR ADVANCE
  • Сенсор BlTouch. В настоящий момент используется только для измрения уровня стола
  • PID термостат для экструдера и стола
  • Модуль WiFi
  • Плагин Cura+скрипт создания превью

Практически все настраиваемые параметры могут быть изменены через исполнение G-кода, поэтому привычного ранее mks-config.txt нет.

Для установки прошивки необходимо на флешку записать следующие файлы:

  • robin_nano35.bin  - собственно код прошивки
  • RESDUMP.BIN       - картинки, шрифты, прочие ресурсы
  • сfg/printer-config.gcode      - конфигурация

После прошивки выполнить файл сfg/printer-config.gcode. Если присутствует модуль WiFi:

  • 0X00000.BIN, 0X10000.BIN

Прочее:

  • cure.zip - расширения для cura

Плагин от MKS в Cura необходимо отключить.

В прошивке пока нет:

  • Механизма автоматической калибровки стола.
  • Из-за особенностей Марлина не все параметры прошивки можно переключать на горячую, без перекомпиляции исходного кода, как это было сделано в первой версии. Эту задачу на начальном этапе хочу решить созданием нескольких профилей сборки под разные конфигурации принтеров. Вроде бы и логично, так как для принтера с кинематекой CoreXY нет необходимости в переключении на Delta, но вот размеры области печати можно бы и подстраивать на лету.

Именно с этой прошивкой работает мой принтер, поэтому работоспособность ее проверяется часто, другое дело, то, как видит тестирвание программист, сильно отличается от того, что может сделать пользователь ).

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

В процессе разработки вел журнал, который можно посмтотреть тут. Ознакомление с ним желательно, так как будет более понятно, что из себя предствляет прошивка и какие там есть особенности и недоделки.

Некоторые скриншоты тут.

PS. С удовольствием хочу поблагодарить участника нашего сообщества Xam1 за тестировании альфа версий и ряд идей, которые вошли в разработку.

Подпишитесь на автора

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

Отписаться от уведомлений вы всегда сможете в профиле автора.

7
Комментарии к статье

Комментарии

06.04.2021 в 14:06
0

Переезд: github

Обновление прошивки:

2021-04-12

  • Кириллический шрифт. Большие буквы

Подробнее: t-канал, t-обсуждение


2021-04-13
-Сброс частных настроек после печати файла. Не относится к конфигурационным файлам (@name.GCO)
  Опция включается в Настройки/Разное
-Подключены сенсоры филамента. В правом верхнем углу появляется приктограмма, сигнализирующая об обрыве. Печать встает на паузу при обрыве.
  Перед печатью и после паузы проверяется состояние датчиков филамента.
  Опция включается в Настройки/Разное

06.04.2021 в 16:06
0

класс, спасибо, будем тестировать

06.04.2021 в 16:09
0

Присоединяйтесь. :)

06.04.2021 в 16:12
0

закончу печатать заказ и начну

06.04.2021 в 16:59
0

Здорово! Вячеслав, поздравляю, отлично получилось. Жаль, не поучаствовал и до отпуска вряд ли получится, но журнал изменений на гитхабе читаю

06.04.2021 в 17:05
0

Спасибо. Было интересно поизучать Марлин 2 ))). Буду раз снова общению с Вами. А Вы пробовали себе ставить эту версию?

06.04.2021 в 17:07
0

Увы, после тех первых альфа-версий вообще к принтеру не подходил, не до него сейчас. А последний раз что-то печатал как бы не осенью

07.04.2021 в 09:21
0

Чем она отличается от ванильного марлина? Из текста совсем не понятно.

07.04.2021 в 09:38
1

Наличием графинтерфейса оптимизированного под тачскрин и пальцы рук) 

Ps а вообще стоило несколько фоток выложить приличных, а то и правда непонятно, кто не в теме робин нано

07.04.2021 в 12:34
0

Ещё раз вопрос перечитайте. В ванильном марлине есть #define MKS_ROBIN_TFT35. И вот сюрприз, - графический интерфейс, оптимизированный под пальцы рук!!

07.04.2021 в 12:46
1

Я не против ;). Вы можете пользоваться им. В данном случае альтернатива, которая я знаю как работает, кстати, я знаю как работает и код от MKS ;), что на первом Марлин, что на втором. Считайте это моим хобби, чем делюсь и с Вами.

07.04.2021 в 14:18
0

MKS_ROBIN_TFT35 - это не интерфейс а название платформы. вы наверное имеете в виду  TFT_COLOR_UI и  TFT_LVGL_UI?

Первый(он кстати написан автором с 3Dtoday в прошлом году) - лучше, но он фактически как был текстовый  так и остался, только управление не графическим кнопками а прямо в мелкие  строчки меню.  Не знаю как кому - мне не удобно попадать.
Второй - тормознутый звездец от MKS, меню которого лучше не трогать во время печати- процесс печати может замереть на секунду, да и функционал там прямо скажем минимум. Лишь бы было. Помучался, вернулся на прошивку Вячеслава, еще первую.
Сейчас время появится - первым делом поставлю новую версию, без вопросов.

07.04.2021 в 10:24
0

 Там внизу ссылочка есть на гитхаб. По ней папка со скринами. Красивых картинок не получается, обычно тачскрины принтеров не очень презентабельны на фото, по известной причине.... 

Отличия от Марлин 2 нет, если под ванильным Марлином вы понимаете ядро исполнения g-кода. Если отличие от одного из UI, входящих в марлин, то, скорее всего это будет аналогом UI MKS.

08.04.2021 в 15:11
0

Установил попробовать на SapphirePro (нужна была прошивка marln2 с wifi).

Меню красивые, удобные, действительно классное сенсорное управление, нагрев работает. Но вот двигатели у меня не работают, попытки уйти в Home - ноль эмоций. Пробовал и настройки концевиков другие ставить (думал может как сработавшие считает их) - ничего не вышло. Двигатели руками ходят легко, т.е. не в положении удержания стоят. Драйвера 2208 и 2209, на Z оптический концевик. Разобраться с этим не смог. Пришлось вернуться на сенсорный marlin2 =(

08.04.2021 в 16:18
1

Вероятнее всего Вы после установки прошивки не запустили файл printer_config.gcode?

Без него там много чего вообще работать не будет. Дело в том, что многие ф-и интерфейса исполняют g-код, сниппеты которого заданы в конфигурационном файле.

Просто запустите этот файл "на печать".

08.04.2021 в 18:47
0

Да, действительно, после запуска файла всё заработало.

Прошивка хорошая и удобная, интерфейс приятный. Только жаль что по wifi толком управления нет (через плагин к Cura и загрузить и отправить на печать можно, а через web интерфейс только загрузить файл на принтер можно. Обмен какой-либо метрикой с принтером отсутствует.).

Прошивка хорошая, буду её использовать.

08.04.2021 в 18:58
1

Вы ошибаетесь )). Обмен метрикой присутствует. WiFi UART есть в полном объеме. Но не все сразу. Три проекта (прошивка мат. платы, прошивка wifi, плагин к cura) с переключением между языками (Си++, Питон).. Приходится выбирать приоритеты. Попробуйте с мобильного приложения посмотреть, например WiFi Terminal, порт 8080

09.04.2021 в 04:37
0

Вячеслав добрый день.  Тестирую вашу прошивку на sapphire pro + 3D touch.:

1. Запуск на печать файла "pid_config.gcode" вызывает перезагрузку принтера. - Включение поддержки длинных имен решило данную проблему

2. Не меняет значение выгрузки филамента - стоит всегда 850мм

3. При выгрузке бэкапа настроек manual leveling point - все сбрасываются на 30

4. При возможности сделайте ввод Gкода с экрана - Он есть в виджетах с GКодом Самый последний из всех.  

5. Очень похоже, что не работает NOZZLE_TO_PROBE_OFFSET - Если при запуске GКода с конфигурацией был выставлен Zофсет, то он не перезаписывается командой М206 X0 Y0 Z0. Помогает обновление опять файлом конфигурации. 

Спасибо Вам за проделанную работу! 

09.04.2021 в 11:05
0

5. Да, сейчас bltouch работает только в виджете измерения стола для получения справочных данных, по которым можно увидеть его (стола) перекос. Парковка по bltouch и заполнения mesh автоуровня не подключены.

4. Выполнить g код можно с экрана. Найдите виджет с консолью. Там кнопки, они настраиваемые через конфигурацию. Одна из них настроена  на ручной ввод.

По остальным пунктам сегодня посмотрю. Спасибо.

09.04.2021 в 12:37
0

У меня сейчас странная ситуация получается:

При ручной калибровке стола по точкам он выставляется в 0+-.

А когда начинаю печатать сопло в 1,5 мм от стола и опустить его до печати командой  M206 Z-1.5 не получается.

09.04.2021 в 12:54
0

Погодите пока с этим смещением, по z этот алгоритм еще не до конца внедрен. Там у вас выставлен 0? Концевик по Z есть?

09.04.2021 в 12:56
0

Выставлен в 0.  Концевик стоит. по нему сопло останавливается  в нормальном зазоре(Лист бумаги). 

09.04.2021 в 13:19
0

Ну тут что то в настройках самого Марлин)... Могу еще предположить, что вы выставили смещение M206? Я его выведу в конфигурации позже, конечно. Попробуйте M206 X0 Y0 Z0, потом M500

По пункту 3, ошибку обнаружил. Спасибо.

По 1 не проявляется.. Там в настройках есть опция включения логов, включите. На флешке в корне появится файл SHUI.LOG, посмотрите, что там в последних строчках? При запуске pid_config.gcode  появляется виджет с графиком температуры?

09.04.2021 в 13:36
0

П5. Сбросился обновлением конфига. Похоже, что он его однократно записал и более не менял даже по команде М206. 

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

В логе:

10:00:00: 3D Printer Ready.

20:17:38: printer_config.gcode 

20:17:38: printer_config.gcode

20:17:38: Settings Stored

20:17:46: 3D Printer OFF.

10:00:00: 3D Printer Ready.

Вячеслав может вам другой какой канал более удобен для трансляции ошибок или продолжать сюда писать?

09.04.2021 в 13:50
0

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

09.04.2021 в 13:52
0

Перед перезагрузкой "синий экран смерти" появляется с сообщением от Марлин о причинах ухода на ребут?

09.04.2021 в 13:58
0

На буквально пару секунд появляется виджет с печатью, как будто он начал применять Gкод и потом перезагрузка без синих экранов.

09.04.2021 в 14:14
0

Виджета с печатью быть не должно... Должен быть отдельный виджет с графиком температуры. Суффикс _config - определяет особый тип файлов, которым не требуется UI печати. Вы его не переименовывали? Но, даже если и переименовали, пролему надо решить. Не должно быть перезагрузки.... По содержанию файла:


M117 SHUI M20 W1    ;Включить особый виджет
M117 SHUI M11 F6       ;Отобразить пиктограмму в статус строке (верхний правй угол)
M303 E0 S200 C5 U :Начать калибровку сопла
M117 SHUI M11 F6
M303 E-1 S60 C5 U
M500
M117 PID Finished    ;Сообщение в статус строке внизу (должно попасть в лог)

то есть, чтобы исключить проблемы с UI содержание файла можно изменить:

M117 Tuning hotend PID  ;Сообщение в статус строке внизу (должно попасть в лог)
M303 E0 S200 C5 U
M117 Tuning bad PID  ;Сообщение в статус строке внизу (должно попасть в лог)
M303 E-1 S60 C5 U
M500
M117 PID Finished    ;Сообщение в статус строке внизу (должно попасть в лог)

В этом случае калибровка пойдет, но молчаливо, лишь высвечивая сообщения в статусной строке.


Да, вот еще момент. Я вижу, у вас WiFi модуль есть? Скажите а Вы плагин MKS от Сura убрали? Дело в том, что он тоже в этот момент держит соединение с принтером и пытается посылать сообщения. Я пока не стал разбираться, но это приводит к уходу принтера на ребут.

09.04.2021 в 14:47
0

Не переименовывал. Сейчас вставил код который приведен выше - эффекта не дало - ушел в ребут. 

Плагин от МКС удалил - поставил ваш(Он значительно быстрее)

Попробовал выключить WIFI - тоже в ребут. 

калибровка Gкодами проходит нормально. 

в логе пусто

10:00:00: Media Inserted

10:00:00: 3D Printer Ready.

09.04.2021 в 14:49
0

А если выключить лог? Тоже уходит в ребут?

В Марлин 2 применена очень старая библиотека работы с FAT, я уже натыкался на подобные проблемы, проявляющиеся не стабильно, связанные с удалением, переименованием файлов... Да и потоковая запись в файл периодически прерывается с требованием его переоткрытия....


Такой файл у Вас отработает без ошибок?


M117 Tuning hotend PID
M117 Tuning bad PID



И с русскими комментариями:



M117 Tuning hotend PID  ;Сообщение в статус строке внизу (должно попасть в лог)
M117 Tuning bad PID  ;Сообщение в статус строке внизу (должно попасть в лог)


Еще вариант теста (должен отобразиться виджет с графиком температуры):


M117 SHUI M20 W1


В логге должны быть сообщения..

09.04.2021 в 14:50
0

Да :(

09.04.2021 в 15:26
0

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

09.04.2021 в 15:40
0

Не все в Ребут

22:34:28: Settings Changed

22:34:31: Settings Stored

10:00:00: 3D Printer Ready.

10:00:00: 3D Printer Ready.

10:00:00: 3D Printer Ready.

Знаете что странно, то что файл конфигурации то он принимает нормально

10:00:00: 3D Printer Ready.

22:35:45: printer_config.gcode

22:35:45: printer_config.gcode

22:35:46: Settings Stored

22:35:53: 3D Printer OFF.

10:00:00: 3D Printer Ready.

09.04.2021 в 15:47
0

Вот если создать файл test_config.gcode с содержанием

M117 Tuning hotend PID
M117 Tuning bad PID

В браузере файлов он отобразится как test c пиктограммой конфигурационных файлов. Запуск его тоже приветет к ошибке? Должно быть просто молчаливое исполнение, а в логе соответсвующие записи.

Если это так, дальше можно постепенно расширить файл до вызова виджета с графиком температур добавив туда:

M117 SHUI M20 W1


Возможно в файле конфигурации нет комманд M117 (например), которые приводят к критической ошибке


Пробовал русские  комментаррии, отработало.... Но у меня linux, т.е. файла сохраняется по автомату в utf-8, для windows это cp1251. С cp1251 ничего не вышло, но ребут не ушло...

15:21:32: Начало калибровки
15:21:32: PID Autotune
15:41:32: VTULKA.GCO
15:41:32: PID Autotune
03:00:00: 3D Printer Ready.
15:57:49: pid_config.gcode
15:57:49: pid_config.gcode
15:57:49: PID Autotune


09.04.2021 в 16:07
0

Все равно в ребут. С любым наполнением из выше представленного перегружается хоть ты его пытай. 

В логах по прежнему пусто

23:00:44: Media Inserted

10:00:00: 3D Printer Ready.

23:03:55: Media Inserted

10:00:00: 3D Printer Ready.

Я тоже думал, что причина в кодировке. Я тоже вроде как на линуксе(mac), попробовал создать на виндовой машине - эффект тот же. 

Еще момент "В браузере файлов он отобразится как test c пиктограммой конфигурационных файлов." - у меня они отображаются с пиктограммой не конфигурационного файла



09.04.2021 в 16:54
0

Еще момент на который наткнулся. При переносе настроек из версии Marlin-bugfix-2.0.x в Shui коэффициент LA надо подбирать заново. Мой LA из 3.5 превратился в 1.6. Пока не разобрался углы представляли жалкое зрелище. 

14.04.2021 в 13:07
0

3,5 для второго марлина - что-то запредельное, 1.6 тоже много, уже на пределе. 

09.04.2021 в 18:38
0

Подтверждаю ошибку с pid файлом. При попытке напечатать появляется черное окно, но с кнопками согласия/отмены печати и через полсекунды после подтверждения печати уходит в перезагрузку. Ручками в консоли калибруется нормально

Не очень понятно как отключить моторы после ручной парковки домой. Где-то есть кнопка, которую я упускаю? 

09.04.2021 в 18:45
0

Выключите в настройках Имена 8.3 или обновите прошивку.

>Не очень понятно как отключить моторы после ручной парковки домой. Где-то есть кнопка, которую я упускаю?

Нет, скорее я ее упустил. А на каком виджете возникает необходимость ее использования?

09.04.2021 в 18:55
0

На парковке. Я обычно иду в 0 по высоте и руками двигаю-калибрую листочком. Сейчас его приходится сначала выключать

09.04.2021 в 19:06
0

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

10.04.2021 в 03:14
0

Точки смены парковки:

Не меняется Х.  

10.04.2021 в 07:19
0

Подскажите, пожалуйста, а где не меняется длина выгрузки филамента? Я вчера попробовал, и для первого и для второго экструдера что загрузка, что выгрузка, оба параметра меняются. 

И тут. Вы про новый параметр пишете, имеете ввиду  dX?

19.04.2021 в 00:02
0

Хотелось  что бы была возможность выбора кинематик так как проект интересный и хотелось его попробовать на самосборных принтерах

19.04.2021 в 08:06
0

См. ниже

19.04.2021 в 08:06
0

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

Вместе с прошивкой я выложил файл конфигурации. Вы можете посмотреть с какими опциями собран Марлин. Можем и попробовать собрать под ваш принтер.

19.04.2021 в 19:45
0

если вам прислать файл конфигурации то сможите собрать?

20.04.2021 в 09:43
0

Конечно, но если Вы его сделаете на основе моего, и будете понимать, что не все, что можно включить в файле конфигурации поддерживается ui.

И лучше словами изложить требования, возможно конфигурация еще кому-то подойдет:

  • Кинематика такая
  • Концевики там...
  • Размер стола...

И тд. Начнем с минимума.

Ps. В первом посте есть ссылка на t-канал.

Для написания комментариев, пожалуйста, авторизуйтесь.

Читайте в блогах

Недельный Дайджест от Импринты №8

Мелки из Dark Souls

Пасхальный кролик Роберт и яичная тележка

Anycubic chiron. Обзор , сравнение с конкурентами, и ремонт. Часть 1

Камера заднего вида автомобиля - в 3d принтер. Или, как отключить разметку на камере заднего вида.

Применение ПММА для функциональных изделий