Металл2024 Реклама
Метобр2024 Реклама

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

-10001-
Идет загрузка
Загрузка
11.02.2024
6647
33
Техничка

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

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

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

43
Статья относится к принтерам:
Creality K1

Вторая часть о замене шкивов - программная.

По механике посмотрите это: Первая часть - механическая (замена самих шкивов)

Итак, шкивы поменяны, но чтобы они работали как надо, нужно изменить Rotation Distance, Homing Speed, отклибровать Sensorless Homing, а раз мы туда залезли - убрать ограничение на измерение Input Shaping - с завода он измеряется только по оси X, а ось Y не измеряется никак, к ней тупо применяется резонанс от X, а шейпер (алгоритм компенсации резонанса) может быть только типа ei, тогда как у меня после разблокировки получилось что нужны zv и mzv.

В общем, оно того стоит, тем более это все абсолютно бесплатно! 😉

Все что было в стоке - так и останется. Ничего не изменится ни в меню, ни в родном web-интерфейсе принтера.

Итак! Начнем! 

Для начала вам нужно знать ip адрес своего принтера - его адрес в вашей домашней локальной сети. 

Проще всего открыть слайсер Creality Print, и там во вкладке Device посмотреть адрес принтера:

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

Тут даже кнопочка "скопировать" сразу есть!

У меня адрес 10.0.1.43, у вас будет другой, может какой-нибудь типа 192.168.1.12.

И не важно, подключен ли принтер к роутеру по Wi-Fi или проводом - адрес у него все равно будет. Скопируйте его, или сфотографируйте.

Так же можно посмотреть адрес в самом принтере: в меню "Шестеренка" вкладка "Network" (Сеть).

Учтите - адрес может быть не постоянным! Если вы выключите ваш роутер, и снова включите, он вновь начнет выдавать всем вашим девайсам в доме адреса, и не факт, что принтер может снова получить адрес именно  10.0.1.43.

Он может получить адрес 10.0.1.17 или 10.0.1.22 - ну вы поняли. Creality Print все равно его найдет, и в самом принтере можно будет посмотреть его текущий адрес, но это неудобно, так что я в настройках своего роутера зарезервировал для своего принтера постоянный адрес 10.0.1.43 - теперь хоть 100 раз он будет переподключаться, все равно он получит адрес 10.0.1.43, и никакой другой. Это удобно.

С этим разобрались! 

Теперь делаем root

Что такое этот root? На этом принтере установлена операционная система Linux. В Linux есть главный, корневой пользователь (root - переводится как корень), который может вообще все: установить и удалить любые приложения, что угодно добавлять и удалять, хоть раздел с самим Linux. Это аналог пользователя "Системный администратор" в Windows.

А есть все остальные пользователи, которые ограничены в своих правах, и, например, не могут что-то добавить или удалить в системных папках, и им разрешено работать только с тем, что уже установлено, и только в своих пользовательских папках, и только с правами, которые дал им root.

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

Так что root - это не какое то там действие, а просто получение доступа к более высоким правам, типа как в Windows выполнить от имени администратора.

Получив root доступ, мы получим права на редактирования документов, и сможем отредактировать значение Rotation Distance, Homing Speed. А так же получим право устанавливать самим любые программы в Linux, и установим Moonracker, Mainsail или Fluid, и вообще все, что захотим.

Убедитесь что у вашего принтера последняя прошивка.

На данный момент это 1.3.3.5

Если у вас не последняя прошивка - обновляемся.

После в принтере идем в меню с шестеренкой, и там выбираем пункт Root account information

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

После чего там появляется предупреждение, мол, получая Root доступ вы потенциально рискуете, и сами отвечаете за все эти риски.

И кнопка ОК с таймером - чтобы вы точно все прочитали, и не нажали случайно! 

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

После того, как таймер истечет, и вы нажмете галочку что со всем согласны, кнопка ОК станет активной, и вы сможете ее нажать.

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

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

Он у всех одинаков:

Логин root (с маленькой буквы)

Пароль creality_2023

Теперь принтер доступен для подключения по сети через Secure Shell Protocol (SSH)

SSH - это защищенный удаленный доступ к командной строке компьютера в сети.

То есть вы со своего компьютера сможете выполнять команды на другом компьютере (в нашем случае - в принтере), даже не подходя к нему.

В Linux и Mac OS поддержка SSH уже встроена, вам нужно только открыть Terminal

В Windows 10 и 11 SSH скорее всего тоже есть - откройте Command Prompt (Командная строка)

В более старых версиях Windows не было поддержки SSH, и ее либо можно установить (погуглите как), либо просто установить PuTTY - https://www.putty.org

Открываем терминал, и вводим: 

ssh root@ip адрес вашего принтера

У меня адрес 10.0.1.43, поэтому я ввожу:

ssh root@10.0.1.43

ssh - команда подключения, после нее пробел, после пробела - имя пользователя (у нас это root), после знак @ (at) после адрес нашего принтера.

at — значит "в" 

Vasia at home — Вася в доме (Вася дома) 😁

Адрес vasia@google.com значит: Вася в почтовом сервере по адресу google.com (vasia at google.com).

А root@10.0.1.43 значит: пользователь с именем root по адресу 10.0.1.43 (root at 10.0.1.43).

В Windows это будет выглядеть так:

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

В первый раз оно ругнется - мол, я не могу понять что это за новый хост 10.0.1.43 - будем ему доверять? Напишите yes или no.

Напишите yes (полностью) и нажмите Enter.

Далее нужно ввести пароль - creality_2023

Причем во время ввода пароль не будет виден, курсор не будет двигаться, никаких звездочек не появится - просто ничего. Но он вводится! 😁

Введите, и нажмите Enter.

root@K1-03DA /root значит что все удалось - мы в нашем принтере, в папке пользователя root! 

Если все получилось, идем на https://github.com/CrealityOfficial/K1_Series_Annex

K1_Series_Annex - это готовая преднастроенная сборка c web интерфейсами Mainsail и Fluid от Creality - именно для нашего принтера.

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

Нажимаем на зеленую кнопочку Code, из нее выпадает меню, где выбираем Download ZIP.

Нам скачивается ZIP архив, разархивируем его.

Вот его содержимое:

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперовТам есть небольшое руководство - root guide, но мы это уже сделали.

А в pin out фотографии с платами принтера, где подписано для чего какой порт на плате.

Берем USB флэшку.

Выбираем оболочку Mainsail или Fluid - кому что больше нравится.

Выбранную папку копируем на флэшку.

Я выбрал Mainsail, и скопировал папку "mainsail" на флэшку. Ничего другого копировать не надо! 

Вставляем флэшку в принтер.

В выбранной вами папке есть README_en - туториал по установке на китайском и на английском языках.

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперовОткрываем, заходим в терминале в наш принтер, и копируем команды.

cp /tmp/udisk/sda1/mainsail/* /usr/data/

cp - copy, команда "копировать" из папки на флэшке по адресу /tmp/udisk/sda1/mainsail/ в папку на принтере /usr/data/

У меня не получилось сначала: он сказал - нет такого файла!

Оказалось, что на моей флэшке было два раздела, и нужно было не из sda1, а из sda2 копировать.

Поменял - все скопировалось. 

Флэшку можно вынуть.

Теперь, когда папка с флэшки скопирована в принтер, вводим команду:

/usr/data/mainsail.sh install

Что собственно значит - установить mainsail из папки /usr/data/.

Все! Дел на 5 минут, включая скачивание! 🤷🏻‍♂️

Теперь ваш Mainsail интерфейс будет доступен на порте 4409

То есть по адресу:

ip_адрес_вашего_принтера:4409

В моем случае это адрес:

http://10.0.1.43:4409

Обратите внимание, порт указывается через : - двоеточие.

Вводим адрес в браузере, и мы в Mainsail.

Вспомниаем, ради чего все это! 😆

Нам нужно:

  1. Поменять значения Rotation Distance, Homing Speed под новые шкивы!
  2. Отклибровать Sensorless Homing 

Переходим в раздел Machine:

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

И ищем файл c именем printer.cfg - в этом файле находятся почти все настройки для нашего принтера.

cfg - это сокращенно от configuration - конфигурация принтера, в общем.

Ищем именно и только printer.cfg - никаких printer.cfg1 или printer-20240207_113309.cfg, это все резервные копии, на случай если вы что-то сломаете.

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

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

Открывам это файл.

  1. Находим  [stepper_x], меняем rotation_distance на 40, а homing_speed на 20.

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов 

  2. Находим [stepper_y], и делаем то же самое - меняем rotation_distance на 40, а homing_speed на 20.

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

После этого жмем SAVE & RESTART - принтер перезагрузится, чтобы применит новые настройки!

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

Sensorless Homing - парковка без всяких датчиков и концевиков. У нашего принтера нет никаких концевиков.

Когда печатающая головка упирается в препятствие, мотор испытывает повышенную нагрузку, пытаясь его преодолеть, и его потребляемый ток возрастает. В этом принтере стоят драйверы моторов tmc2209 - они умеют видеть ток мотора, и по нему определяют - а не уперлись ли мы во что-то? 😁

По ссылке описана процедура настройки и калибровки этой чедесной функции драйвера tmc2209, можете ознакомиться, если интересно:

Sensorless Homing

После замены шкивов я обнаружил, что по оси Y у меня все паркуется нормально, а вот по оси X паркуется с треском - то есть таки высоко усилие! 

Усилие парковки, при  котором Sensorless Homing понимает, что мы уперлись во что-то, указывается в параметре driver_SGTHRS

Для оси X он находится в разделе [tmc2209 stepper_x]

Для оси Y - в разделе [tmc2209 stepper_y]

По умолчанию там стоит значение driver_SGTHRS: 65

Я попробовал, и у меня получилось что X хорошо паркуется со значением 75

Его я и оставил, а Y и не трогал. 🤷🏻‍♂️

Можете попробовать сделать так же: 

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

У меня с этим значением все паркуется как надо! 

Поздравления - шкивы установлены! Делов то!  👍🤣

Разблокировка шейперов

Раз мы так далеко зашли, можно еще немного улучшить принтер - убрать ограничение на измерение Input Shaping!

Как оказалось, с заводскими настройками принтер почему-то измеряет резонанс только по оси X, а ось Y не измеряется никак, к ней тупо применяется резонанс от X, а шейпер (алгоритм компенсации резонанса) может быть только типа ei, тогда как у меня после разблокировки получилось что нужны zv и mzv.

Вот что у меня было с заводскими настройками:

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

На X и Y все одинаково, а тип шейпера - только ei

После разблокировки стало так:

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

Кто уже с Klipper имел дело - поймет!

Чтобы убрать ограничение, нужно установить Helper Script

Helper Script

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

Я этого не делал. 🤷🏻‍♂️

Подключаетесь к своему К1 через SSH, и вводите это:

cd && wget --no-check-certificate https://raw.githubusercontent.com/Guilouz/Creality-K1-and-K1-Max/main/Scripts/installer.sh

Оно скачивает вам в папку root файлик инсталлера - installer.sh

После этого запускаем его командой:

cd && sh ./installer.sh

cd перенесет вас в папку root откуда угодно, поэтому можно запускать этот инсталлер откуда хочешь! 

sh запускает сам installer.sh

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

Выбираем 1 - меню инсталляций. И жмем Enter.

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперовЭто меню со списком того, что этот инсталлер умеет устанавливать.

Выбираем номер 13 - пишем "13" и жмем Enter.

Improved Shapers Calibration устанавливается. 

Вот здесь можно почитать о нем:

Improved Shapers Calibrations

После установки можете выйти из программы (q и Enter).

Все готово! 

Теперь заново откалибруйте принтер! Можно сделать это через Console (консоль) Mainsail, введя в нее:

INPUT_SHAPER_CALIBRATION

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

А после окончания процедуры калибровки обязательно введите:

SAVE_CONFIG

Это сохранит результаты калибровки.

Или можно через меню настроек принтера сделать - через него теперь тоже калибровка полноценная проводится, я проверил!

Теперь будут тестироваться и X и Y, и будут применятся наиболее подходящие шейперы, а не только шейпер ei.

Чтобы проверить, применились ли у вас новые шейперы, загляните в printer.cfg, как было описано выше.

Прокрутите его в самый низ, до раздела [input_shaper], и там должны быть разные названия шейперов и разные цыфры:

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

Это значит, что все получилось! 

Вот что это дало лично мне:

По факту в некоторых местах с завода было эхо, которое исчезло после разблокировки и нормальной калибровки по всем осям (один и тот же файл и филамент, до и после): 

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперов

Так же на другой детальке я заметил, что угол, которые ранее слегка выступал, стал более ровными. Не смог никак это сфотографировать.

Вот так примерно (рисунок утрированный, на глаз это почти незаметно):

Creality K1: замена шкивов - программная часть, root, Mainsail, разблокировка шейперовТо есть делать стоит однозначно! 👍😎

В этом Helper Script есть и другие фишечки. 

Например, Klipper Adaptive Meshing & Purging - KAMP 

Но у меня он не установился. Вернее, для его установки сначала нужно установить Supervisor Lite, после установки которого у меня Mainsail перестал подключаться. 

Как удалишь через тот же Helper Script - вновь подключается! 😁

Возможно это потому, что я не вернул принтер к заводским настройкам после установки! 🤷🏻‍♂️

Ну может потом разберусь. 

А на данном этапе мы и так получили максимум от принтера - качество печати заметно улучшилось!

У меня лапки, и я все сломал! Родители убьют! Что делать?!!!!1111

Невозможно все сломать - это просто комп на Linux, на который залита прошивка. 

Все установленное можно удалить через Helper Script, и можно переустановить официальную прошивку - при переустановке все это сотрется.

Но если прям вообще ничего не работает, Creality предлагает специальный инструмент для экстренного восстановления прошивки:

K1 Firmware Recovery Tool

Плату принтера нужно подключить к компу через USB, возможно поставить драйвера, и прошить по инструкции.

Тут дел на 15 минут, а я писал эту статью 4 часа! Очень надеюсь, она хотя бы пятерым людям поможет! 😁

Over and out! 😆

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

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

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

43
Комментарии к статье
Кремень КБ Реклама
Кремень КМ Реклама