Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
Модератор: Kaktus
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
вот что у меня стоит в прошивке * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle.
* But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle.
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
#define Z_CLEARANCE_MULTI_PROBE 5 // Z Clearance between multiple probes
//#define Z_AFTER_PROBING 5 // Z position after probing is done
#define Z_PROBE_LOW_POINT -2 // Farthest distance below the trigger-point to go before stopping
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20
#define Z_PROBE_OFFSET_RANGE_MAX 20
// Enable the M48 repeatability test to test probe accuracy
//#define Z_MIN_PROBE_REPEATABILITY_TEST
// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
// :{ 0:'Low', 1:'High' }
#define X_ENABLE_ON 0
#define Y_ENABLE_ON 0
#define Z_ENABLE_ON 0
#define E_ENABLE_ON 0 // For all extruders
// Disables axis stepper immediately when it's not being used.
// WARNING: When motors turn off there is a chance of losing position accuracy!
#define DISABLE_X false
#define DISABLE_Y false
#define DISABLE_Z false
// Warn on display about possibly reduced accuracy
//#define DISABLE_REDUCED_ACCURACY_WARNING
// @section extruder
#define DISABLE_E false // For all extruders
#define DISABLE_INACTIVE_EXTRUDER true // Keep only the active extruder enabled.
// @section machine
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
#define INVERT_X_DIR false
#define INVERT_Y_DIR false
#define INVERT_Z_DIR false
// @section extruder
// For direct drive extruder v9 set to true, for geared extruder set to false.
#define INVERT_E0_DIR false
#define INVERT_E1_DIR false
#define INVERT_E2_DIR false
#define INVERT_E3_DIR false
#define INVERT_E4_DIR false
// @section homing
//#define NO_MOTION_BEFORE_HOMING // Inhibit movement until all axes have been homed
//#define UNKNOWN_Z_NO_RAISE // Don't raise Z (lower the bed) if Z is "unknown." For beds that fall when Z is powered off.
//#define Z_HOMING_HEIGHT 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
// Be sure you have this distance over your Z_MAX_POS in case.
// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1
// @section machine
// The size of the print bed
#define X_BED_SIZE 200
#define Y_BED_SIZE 200
// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS 0
#define Y_MIN_POS 0
#define Z_MIN_POS 0
#define X_MAX_POS X_BED_SIZE
#define Y_MAX_POS Y_BED_SIZE
#define Z_MAX_POS 200
/**
* Software Endstops
*
* - Prevent moves outside the set machine bounds.
* - Individual axes can be disabled, if desired.
* - X and Y only apply to Cartesian robots.
* - Use 'M211' to set software endstops on/off or report current state
*/
// Min software endstops constrain movement within minimum coordinate bounds
#define MIN_SOFTWARE_ENDSTOPS
#if ENABLED(MIN_SOFTWARE_ENDSTOPS)
#define MIN_SOFTWARE_ENDSTOP_X
#define MIN_SOFTWARE_ENDSTOP_Y
#define MIN_SOFTWARE_ENDSTOP_Z
#endif
// Max software endstops constrain movement within maximum coordinate bounds
#define MAX_SOFTWARE_ENDSTOPS
#if ENABLED(MAX_SOFTWARE_ENDSTOPS)
#define MAX_SOFTWARE_ENDSTOP_X
#define MAX_SOFTWARE_ENDSTOP_Y
#define MAX_SOFTWARE_ENDSTOP_Z
#endif
#if ENABLED(MIN_SOFTWARE_ENDSTOPS) || ENABLED(MAX_SOFTWARE_ENDSTOPS)
//#define SOFT_ENDSTOPS_MENU_ITEM // Enable/Disable software endstops from the LCD
#endif
/**
* Filament Runout Sensors
* Mechanical or opto endstops are used to check for the presence of filament.
*
* RAMPS-based boards use SERVO3_PIN for the first runout sensor.
* For other boards you may need to define FIL_RUNOUT_PIN, FIL_RUNOUT2_PIN, etc.
* By default the firmware assumes HIGH=FILAMENT PRESENT.
*/
//#define FILAMENT_RUNOUT_SENSOR
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
#define NUM_RUNOUT_SENSORS 1 // Number of sensors, up to one per extruder. Define a FIL_RUNOUT#_PIN for each.
#define FIL_RUNOUT_INVERTING false // set to true to invert the logic of the sensor.
#define FIL_RUNOUT_PULLUP // Use internal pullup for filament runout pins.
#define FILAMENT_RUNOUT_SCRIPT "M600"
#endif
* But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle.
*/
#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow
#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points
#define Z_CLEARANCE_MULTI_PROBE 5 // Z Clearance between multiple probes
//#define Z_AFTER_PROBING 5 // Z position after probing is done
#define Z_PROBE_LOW_POINT -2 // Farthest distance below the trigger-point to go before stopping
// For M851 give a range for adjusting the Z probe offset
#define Z_PROBE_OFFSET_RANGE_MIN -20
#define Z_PROBE_OFFSET_RANGE_MAX 20
// Enable the M48 repeatability test to test probe accuracy
//#define Z_MIN_PROBE_REPEATABILITY_TEST
// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
// :{ 0:'Low', 1:'High' }
#define X_ENABLE_ON 0
#define Y_ENABLE_ON 0
#define Z_ENABLE_ON 0
#define E_ENABLE_ON 0 // For all extruders
// Disables axis stepper immediately when it's not being used.
// WARNING: When motors turn off there is a chance of losing position accuracy!
#define DISABLE_X false
#define DISABLE_Y false
#define DISABLE_Z false
// Warn on display about possibly reduced accuracy
//#define DISABLE_REDUCED_ACCURACY_WARNING
// @section extruder
#define DISABLE_E false // For all extruders
#define DISABLE_INACTIVE_EXTRUDER true // Keep only the active extruder enabled.
// @section machine
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
#define INVERT_X_DIR false
#define INVERT_Y_DIR false
#define INVERT_Z_DIR false
// @section extruder
// For direct drive extruder v9 set to true, for geared extruder set to false.
#define INVERT_E0_DIR false
#define INVERT_E1_DIR false
#define INVERT_E2_DIR false
#define INVERT_E3_DIR false
#define INVERT_E4_DIR false
// @section homing
//#define NO_MOTION_BEFORE_HOMING // Inhibit movement until all axes have been homed
//#define UNKNOWN_Z_NO_RAISE // Don't raise Z (lower the bed) if Z is "unknown." For beds that fall when Z is powered off.
//#define Z_HOMING_HEIGHT 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
// Be sure you have this distance over your Z_MAX_POS in case.
// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1
// @section machine
// The size of the print bed
#define X_BED_SIZE 200
#define Y_BED_SIZE 200
// Travel limits (mm) after homing, corresponding to endstop positions.
#define X_MIN_POS 0
#define Y_MIN_POS 0
#define Z_MIN_POS 0
#define X_MAX_POS X_BED_SIZE
#define Y_MAX_POS Y_BED_SIZE
#define Z_MAX_POS 200
/**
* Software Endstops
*
* - Prevent moves outside the set machine bounds.
* - Individual axes can be disabled, if desired.
* - X and Y only apply to Cartesian robots.
* - Use 'M211' to set software endstops on/off or report current state
*/
// Min software endstops constrain movement within minimum coordinate bounds
#define MIN_SOFTWARE_ENDSTOPS
#if ENABLED(MIN_SOFTWARE_ENDSTOPS)
#define MIN_SOFTWARE_ENDSTOP_X
#define MIN_SOFTWARE_ENDSTOP_Y
#define MIN_SOFTWARE_ENDSTOP_Z
#endif
// Max software endstops constrain movement within maximum coordinate bounds
#define MAX_SOFTWARE_ENDSTOPS
#if ENABLED(MAX_SOFTWARE_ENDSTOPS)
#define MAX_SOFTWARE_ENDSTOP_X
#define MAX_SOFTWARE_ENDSTOP_Y
#define MAX_SOFTWARE_ENDSTOP_Z
#endif
#if ENABLED(MIN_SOFTWARE_ENDSTOPS) || ENABLED(MAX_SOFTWARE_ENDSTOPS)
//#define SOFT_ENDSTOPS_MENU_ITEM // Enable/Disable software endstops from the LCD
#endif
/**
* Filament Runout Sensors
* Mechanical or opto endstops are used to check for the presence of filament.
*
* RAMPS-based boards use SERVO3_PIN for the first runout sensor.
* For other boards you may need to define FIL_RUNOUT_PIN, FIL_RUNOUT2_PIN, etc.
* By default the firmware assumes HIGH=FILAMENT PRESENT.
*/
//#define FILAMENT_RUNOUT_SENSOR
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
#define NUM_RUNOUT_SENSORS 1 // Number of sensors, up to one per extruder. Define a FIL_RUNOUT#_PIN for each.
#define FIL_RUNOUT_INVERTING false // set to true to invert the logic of the sensor.
#define FIL_RUNOUT_PULLUP // Use internal pullup for filament runout pins.
#define FILAMENT_RUNOUT_SCRIPT "M600"
#endif
- dark184
- Сообщения: 1505
- Зарегистрирован: 19 фев 2018, 18:18
- Имя: Алексей
- Откуда: Архангельск
- Благодарил (а): 11 раз
- Поблагодарили: 115 раз
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
Нет концевиков, где они расположены физически и как настроены в прошивке.
Сначала в прошивке надо правильно настроить концевики с их физическим расположением на оси и к каким разъемам на плате они подключены. Далее выбираем куда хоумится, у вас в минус все оси
Далее проверяем куда двигается при хоуме, если все оси уходят в минус и там хоумятся, то все норма. Если ось или оси хоумятся не в ту сторону, значит меняем
для соответствующей оси с false на true. Настройка закончена.
Сначала в прошивке надо правильно настроить концевики с их физическим расположением на оси и к каким разъемам на плате они подключены. Далее выбираем куда хоумится, у вас в минус все оси
Код: Выделить всё
// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1
Код: Выделить всё
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
#define INVERT_X_DIR false
#define INVERT_Y_DIR false
#define INVERT_Z_DIR false
Купил себе танк и никого больше не жалею.
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
dark184, // Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
#define INVERT_X_DIR false
#define INVERT_Y_DIR true
#define INVERT_Z_DIR false
// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR 1
#define Z_HOME_DIR -1
вот что получаю #error "Enable USE_YMAX_PLUG when homing Y to MAX."
#define INVERT_X_DIR false
#define INVERT_Y_DIR true
#define INVERT_Z_DIR false
// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR 1
#define Z_HOME_DIR -1
вот что получаю #error "Enable USE_YMAX_PLUG when homing Y to MAX."
- Mazayac
- Сообщения: 1688
- Зарегистрирован: 06 ноя 2018, 22:28
- Имя: Алексей
- Откуда: Нижний Новгород
- Благодарил (а): 166 раз
- Поблагодарили: 166 раз
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
artem82, концевик стоит в min, стол движется в max - и это значит "всё хорошо"?
Вы уверены, что правильно понимаете, где начало координат этого принтера?
Вы уверены, что правильно понимаете, где начало координат этого принтера?
Последний раз редактировалось Mazayac 30 дек 2019, 14:20, всего редактировалось 1 раз.
Sprinters: Mini, Techno 232, Pro Techno. Photon Mono X.
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
Mazayac, а вообще есть какая нибудь литература описывающая все это
- Mazayac
- Сообщения: 1688
- Зарегистрирован: 06 ноя 2018, 22:28
- Имя: Алексей
- Откуда: Нижний Новгород
- Благодарил (а): 166 раз
- Поблагодарили: 166 раз
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
artem82, общих алгоритмов нормально и универсально описанных я не встречал, каша обрывочная в интернете.
Местную Вики можно пошерстить.
Обычно всё ограничивается "подключите по схеме и залейте прошивку от производителя".
Местную Вики можно пошерстить.
Обычно всё ограничивается "подключите по схеме и залейте прошивку от производителя".
Sprinters: Mini, Techno 232, Pro Techno. Photon Mono X.
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
ну вроде заработало, всем большое спс за помощь и с наступающим новым годом! ну если че я еще вернусь)))
- dark184
- Сообщения: 1505
- Зарегистрирован: 19 фев 2018, 18:18
- Имя: Алексей
- Откуда: Архангельск
- Благодарил (а): 11 раз
- Поблагодарили: 115 раз
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
Ну и правильно он пишет, у вас концевик на Y настроен на минимум, а нужно его тогда перестроить на максимум и подключить соответствующе. Т.е. у вас получается концевик Y все таки в максимуме стоит?
Купил себе танк и никого больше не жалею.
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
ну вот и новая проблема при печати тестового кубика на третьем слое останавливается печать???
-
- Сообщения: 485
- Зарегистрирован: 08 фев 2019, 19:15
- Имя: Андрей
- Откуда: Таганрог
- Благодарил (а): 20 раз
- Поблагодарили: 48 раз
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
Возможно неправильно откалиброван нагреватель хотенда. Вентиляторы обдува детали могут "сдувать" температуру и тогда принтер остановится если температура вышла за пределы. У меня так было...
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
а как разблокировать регулировку стола, где именно данная строчка???
- Mazayac
- Сообщения: 1688
- Зарегистрирован: 06 ноя 2018, 22:28
- Имя: Алексей
- Откуда: Нижний Новгород
- Благодарил (а): 166 раз
- Поблагодарили: 166 раз
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
artem82, что пишет на экране при остановке?
Sprinters: Mini, Techno 232, Pro Techno. Photon Mono X.
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
теперь уже стол не хочет нагреваться до 90гр. при выставленной 110гр. хотя по напряжению 12.5 в ,
завтра заменю провода и проверю по новой
завтра заменю провода и проверю по новой
- Alex Post
- Сообщения: 6993
- Зарегистрирован: 11 янв 2017, 17:22
- Имя: Александр
- Откуда: Брест, РБ
- Благодарил (а): 330 раз
- Поблагодарили: 817 раз
- Контактная информация:
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
Стол снизу утеплен? Проверить, сколько реально вольт приходит на стол, померив напряжение прямо на клеммах стола. Предполагаю, заметно меньше 12в.
Prusa i3 rework - трудится с 2015 года
Черно-оранжевый 3D-SPrinter 232 - https://3deshnik.ru/forum/viewtopic.php?f=21&t=393
Черно-оранжевый 3D-SPrinter 232 - https://3deshnik.ru/forum/viewtopic.php?f=21&t=393
-
- Сообщения: 42
- Зарегистрирован: 28 июл 2019, 02:41
- Имя: Vladimir
- Благодарил (а): 1 раз
- Поблагодарили: 1 раз
Re: Прошивка Marlin. Задаём вопросы, углубляемся в дебри, делимся находками
Коллеги, подскажите.
Поставил Platformio + VSCode, пытаюсь скомпилировать прошивку для платы SKR E3 DIP (писал про нее выше), для начала взял уже готовые файлы Marlin 2.0 отсюда:
https://3dtoday.ru/questions/proshivka- ... ent-620073
https://drive.google.com/drive/folders/ ... pfAapvjmUi
Получаю сообщение:
===========================
Warning! `env_default` configuration option in section [platformio] is deprecated and will be removed in the next release! Please use `default_envs` instead
Processing BIGTREE_SKR_MINI (platform: ststm32; framework: arduino; board: genericSTM32F103RC)
-------------------------------------------------------------------------------------------------------------------------
PlatformManager: Installing ststm32
Error: Detected unknown package 'ststm32'
The terminal process terminated with exit code: 1
Terminal will be reused by tasks, press any key to close it.
===========================
Как добавить этот самый ststm32 ?
Поставил Platformio + VSCode, пытаюсь скомпилировать прошивку для платы SKR E3 DIP (писал про нее выше), для начала взял уже готовые файлы Marlin 2.0 отсюда:
https://3dtoday.ru/questions/proshivka- ... ent-620073
https://drive.google.com/drive/folders/ ... pfAapvjmUi
Получаю сообщение:
===========================
Warning! `env_default` configuration option in section [platformio] is deprecated and will be removed in the next release! Please use `default_envs` instead
Processing BIGTREE_SKR_MINI (platform: ststm32; framework: arduino; board: genericSTM32F103RC)
-------------------------------------------------------------------------------------------------------------------------
PlatformManager: Installing ststm32
Error: Detected unknown package 'ststm32'
The terminal process terminated with exit code: 1
Terminal will be reused by tasks, press any key to close it.
===========================
Как добавить этот самый ststm32 ?