Проблемы с прошивкой Marlin

Поэтому я работаю над созданием клона Prusa i3 MK3, и до сих пор все шло хорошо, но когда я вношу изменения в прошивку и повторно загружаю ее, принтер, похоже, не получает ее. Например, я изменил программные конечные точки на новые значения в коде, перекомпилировал его и повторно загрузил, но когда я использую M211, принтер все еще сообщает свои старые значения конечных точек. Кроме того, кажется, что он может вернуться домой только к минимуму, а не к максимуму (не самая большая сделка).

Любые советы о том, как заставить принтер распознавать свои новые границы/есть ли способ просто установить его с помощью G-кода?

, 👍3

Обсуждение

Вы загрузили новые значения из прошивки, загруженной с помощью M502? Если нет, то это может быть вашей проблемой. См. "M502 сбросит все настраиваемые настройки до "заводских значений по умолчанию", которые those?"., @0scar


1 ответ


1

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

Когда вы загружаете прошивку, это делается через так называемый двоичный шестнадцатеричный файл. В этом файле, хранящемся в памяти микроконтроллера, хранится полная "программа", настроенная вашим редактором кода (скомпилированная, следовательно, двоичный файл). Обратите внимание, что пользователю "программы" разрешено изменять значения определенных параметров1), изменения сохраняются в другой части памяти, которая не перезаписывается при загрузке новой прошивки. Вы вручную должны получить "установленные" значения из вашего нового файла прошивки, чтобы сохранить их в "рабочей памяти". Отправьте G-коды M502 и M500, чтобы получить и сохранить значения из прошивки.


1) Помните о невозможности хранения пользовательских параметров в некоторых старых версиях Marlin в сочетании с определенными платами контроллера принтера (например, линейка плат SKR), но это исправлено в последних версиях, например, хранение осуществляется на SD - карте. По этой причине описанное выше хранилище памяти называется не EEPROM, а "рабочей памятью", то есть не обязательно должно быть хранилищем EEPROM.


,

Я сделал это, но M211 все еще говорит, что мои программные конечные точки находятся в старом месте, и теперь, когда я пытаюсь вернуться домой по оси x, он говорит: echo:Hoing Failed Ошибка:Принтер остановился. kill() называется! Ошибка:Принтер остановился. kill() называется! есть какие-нибудь советы?, @natalia

@amanda С помощью M211 вы включаете или отключаете программные конечные точки, с помощью M119 вы получаете состояние и можете инвертировать логику состояния. Что вы делаете с M211 в прошивке?, @0scar

@0scar может ли машина работать только с программными конечными точками или я должен добавить физические? Поможет ли это с проблемами самонаведения?, @natalia

@natalia Для удобства вы должны использовать аппаратные концевые упоры, тогда вы можете разместить каждую ось, иначе вам нужно, как оператору принтера, позиционировать головку перед каждой печатью вручную. Это описано более подробно здесь., @0scar