Конфигурирование платы SKR 1.3 с драйверами TMC 2130 в SPI и BLtouch, для Ender 3.
И так, будем считать что плату мы благополучно подключили, ПО установили, Marlin 2.0 с оф. сайта скачали. Рекомендую взять именно с оф. сайта, так как там актуальная версия, и очень много багов допиливается, в часности стоковый дисплей Endera. Для конфигурирования я брал готовый конфиг под ender 3, он лежит сдесь:C:Marlin-bugfix-2.0.xconfigexamplesCrealityEnder-3. Для компиляции пошивки без ошибок путь не должен содержать кириллических символов.
Приступим:
1. Открываем файл platformio.ini и в нем правим:
env_default = LPC1768.Сохраняем, больше этот файл нам не понадобится.
2. Открываем файл configuration.h и в нем правим:
#define SERIAL_PORT -1
#define SERIAL_PORT_2 0 // порты для связи с пк.
#define MOTHERBOARD BOARD_BIGTREE_SKR_V1_3 // указываем тип нашей платы
#define THERMAL_PROTECTION_HOTENDS // включаем защиту от перегрева
#define THERMAL_PROTECTION_BED
#define THERMAL_PROTECTION_CHAMBER
#define X_DRIVER_TYPE TMC2130
#define Y_DRIVER_TYPE TMC2130
#define Z_DRIVER_TYPE TMC2130
#define E0_DRIVER_TYPE TMC2130 // указываем тип драйверов
#define S_CURVE_ACCELERATION // при желании указываем более плавные ускорения.
#define INVERT_E0_DIR true // направление мотора экструдера (если редукторный то пишем false)
#define LEVEL_BED_CORNERS // включаем выравнивание углов. (памяти в плате достаточно, пользуемся этим)
#if ENABLED(LEVEL_BED_CORNERS)
#define LEVEL_CORNERS_INSET 35 // (mm) An inset for corner leveling
#define LEVEL_CORNERS_Z_HOP 5 // (mm) Move nozzle up before moving between corners
#define LEVEL_CORNERS_HEIGHT 0.1 // (mm) Z height of nozzle at leveling points
#define LEVEL_CENTER_TOO // Move to the center after the last corner
#endif
#define HOMING_FEEDRATE_XY (30*60) // более адекватные скорости HOMING
#define HOMING_FEEDRATE_Z (4*60)
#define LCD_LANGUAGE ru // язык меню
#define DISPLAY_CHARSET_HD44780 CYRILLIC // отображение кириллицы на экране
#define SDSUPPORT // поддержка карты памяти
#define SPEAKER // включаем спикер
#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 0
#define LCD_FEEDBACK_FREQUENCY_HZ 0 // отключаем звук в меню (что б не пищал лишний раз)
#define CR10_STOCKDISPLAY // включаем стоковый дисплей
#define FAN_SOFT_PWMДля BLtouch:
#define SOFT_PWM_SCALE 0 // убираем свист от куллеров
#define BLTOUCH // включаем BLtouch
#define Z_MIN_PROBE_ENDSTOP_INVERTING true // инвертируем сигал (можно оставить и false, но это влияет на точность)
#define ENDSTOPPULLUP_ZMIN_PROBE // устраняем возможный дребезг
#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN // включаем если подключали вместо концевика Z
#define X_PROBE_OFFSET_FROM_EXTRUDER -40 // расстояние от датчика по X
#define Y_PROBE_OFFSET_FROM_EXTRUDER -13 // расстояние от датчика по Y
#define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // расстояние от датчика по Z(здесь оставляем 0 )
#define MIN_PROBE_EDGE 25 // расстояние от края, чтоб не уперлось в прищепки (у вас может быть другое значение)
#define MULTIPLE_PROBING 2 // количество проб (2 достаточно)
#define Z_MIN_PROBE_REPEATABILITY_TEST // тестирование BLtouch (может пригодиться)
#define AUTO_BED_LEVELING_BILINEAR // способ выравнивания (можно и другой выбрать, но этот работает отлично)
#define GRID_MAX_POINTS_X 4 // количество точек измерения
#define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X
#define LEFT_PROBE_BED_POSITION MIN_PROBE_EDGE // указываем позиции крайних замеров (у вас могут быть другие значения в зависимости от крепления датчика)
#define RIGHT_PROBE_BED_POSITION 170
#define FRONT_PROBE_BED_POSITION MIN_PROBE_EDGE
#define BACK_PROBE_BED_POSITION 170
#define Z_SAFE_HOMING // включаем для хоуминга Z в середине столаСохраняем, здесь у нас всё. Переходим к следующему файлу.
3. Открываем configuration_adv.h.
#define FAN_KICKSTART_TIME 200 // если плохо стартует вентилятор обдува модели помогаем ему
#define E0_AUTO_FAN_PIN FAN1_PIN // Если подключили вентилятор обдува радиатора печатной головы вместо нагревателя второго хотенда#
#define EXTRUDER_AUTO_FAN_TEMPERATURE 50 // температура включения и выключения
#define EXTRUDER_AUTO_FAN_SPEED 255 // максимальная скорость
define HOMING_BUMP_DIVISOR { 4, 4, 4 } // более нежные делители скорости для хоуминга (Бережом концевики )
#define DEFAULT_STEPPER_DEACTIVE_TIME 300 // время удержания ШД
#define MANUAL_FEEDRATE {100*60, 100*60, 10*60, 50*60} // более адекватные скорости для движения осей из меню принтера
#define DEFAULT_MINSEGMENTTIME 50000 // Улучшаем печать по USB#
#if ENABLED(SDSUPPORT)
#define BLOCK_BUFFER_SIZE 32
#else
#define BLOCK_BUFFER_SIZE 16
#endif
#define MAX_CMD_SIZE 96
#define BUFSIZE 32
#define TX_BUFFER_SIZE 32
define STATUS_MESSAGE_SCROLLING // Включаем прокрутку длинных статусных сообщений на экране
#define LCD_TIMEOUT_TO_STATUS 60000 // Увеличиваем задержку (в миллисекундах) перед автоматическим выходом из меню на главный экран
#define LCD_SET_PROGRESS_MANUALLY // «Чиним» прогресс-бар при печати через USB
#define SD_MENU_CONFIRM_START // включаем подтверждение при выборе файла с флешки для печати (если нужно)
#define SCROLL_LONG_FILENAMES // Включаем прокрутку длинных имен файлов на флешке в меню
#ifdef TARGET_LPC1768 // настраиваем SD карту
//#define LPC_SD_LCD // Use the SD drive in the external LCD controller.
#define LPC_SD_ONBOARD // Use the SD drive on the control board. (No SD_DETECT_PIN. M21 to init.)
//#define LPC_SD_CUSTOM_CABLE // Use a custom cable to access the SD (as defined in a pins file).
//#define USB_SD_DISABLED // Disable SD Card access over USB (for security).
#if ENABLED(LPC_SD_ONBOARD)
//#define USB_SD_ONBOARD // Данную опцию можно включить, чтоб видеть флешку с хоста, как через кард-ридер, но я не проверял
#endif
#endif
#define BABYSTEPPING // возможность вручную задавать точно оффсет оси Z во время печати из меню принтера
#if ENABLED(BABYSTEPPING)
//#define BABYSTEP_WITHOUT_HOMING
//#define BABYSTEP_XY // Also enable X/Y Babystepping. Not supported on DELTA!
#define BABYSTEP_INVERT_Z false // Change if Z babysteps should go the other way
#define BABYSTEP_MULTIPLICATOR 2 // Babysteps are very small. Increase for faster motion.
#define DOUBLECLICK_FOR_Z_BABYSTEPPING // Double-click on the Status Screen for Z Babystepping.
#if ENABLED(DOUBLECLICK_FOR_Z_BABYSTEPPING)
#define DOUBLECLICK_MAX_INTERVAL 1250 // Maximum interval between clicks, in milliseconds.
// Note: Extra time may be added to mitigate controller latency.
//#define BABYSTEP_ALWAYS_AVAILABLE // Allow babystepping at all times (not just during movement).
#define MOVE_Z_WHEN_IDLE // Jump to the move Z menu on doubleclick when printer is idle.
#if ENABLED(MOVE_Z_WHEN_IDLE)
#define MOVE_Z_IDLE_MULTIPLICATOR 1 // Multiply 1mm by this factor for the move step size.
#endif
#endif
#define MIN_STEPS_PER_SEGMENT 1 // Уменьшаем размер минимальной отрабатываемой группы шаговНастраиваем драйвера:
#if HAS_TRINAMIC
#define HOLD_MULTIPLIER 0.5 // ток в режиме удержания
#define INTERPOLATE true // интерполяция до 256 микрошагов
#if AXIS_IS_TMC(X)
#define X_CURRENT 760 // ток двигателя
#define X_MICROSTEPS 16 // микрошаги
#define X_RSENSE 0.11
#endif
#if AXIS_IS_TMC(X)
#define Y_CURRENT 760 // ток двигателя
#define Y_MICROSTEPS 16 // микрошаги
#define Y_RSENSE 0.11
#endif
#if AXIS_IS_TMC(X)
#define Z_CURRENT 760 // ток двигателя
#define Z_MICROSTEPS 16 // микрошаги
#define Z_RSENSE 0.11
#endif
#if AXIS_IS_TMC(X)При сильном нагреве ток можно уменьшить, а при пропуске шагов увеличить из меню принтера.
#define E0_CURRENT 900 // ток двигателя
#define E0_MICROSTEPS 16 // микрошаги
#define E0_RSENSE 0.11
#endif
#define TMC_USE_SW_SPI // включаем SPI режим
#define STEALTHCHOP_XY // Включаем тихий режим StealthChop
#define STEALTHCHOP_Z
#define STEALTHCHOP_E
#define CHOPPER_TIMING CHOPPER_DEFAULT_24V // Задаем режим работы чоппера SpreadCycle
#define MONITOR_DRIVER_STATUS // Включаем защиту драйверов от перегрева
#if ENABLED(MONITOR_DRIVER_STATUS)
#define CURRENT_STEP_DOWN 50 // [mA]
#define REPORT_CURRENT_CHANGE
#define STOP_ON_ERROR
#endif
define HYBRID_THRESHOLD // Включаем гибридный режим -при превышении указанной здесь скорости алгоритм будет переключаться со StealthChop на SpreadCycle (можно будет изменить из меню принтера)
#define X_HYBRID_THRESHOLD 120 // [mm/s]
#define Y_HYBRID_THRESHOLD 120
#define Z_HYBRID_THRESHOLD 10
#define E0_HYBRID_THRESHOLD 15
#define TMC_DEBUG // Включаем отладочный режим
#define TMC_ADV() { // тут ни чего не трогаем (это разширенные настройки для каждого драйвера)
stepperE0.intpol(0);
stepperZ.intpol(0);
}
#define AUTO_REPORT_TEMPERATURES // отправка температуры по usb
#define NO_VOLUMETRICS // Выключаем экструзию по объему
#define EXTENDED_CAPABILITIES_REPORT // Включаем расширенный отчет о возможностях прошивки для USB хостаНа это всё. Сохраняем, нажимаем кнопку компиляции прошивки. По окончании компиляции готовый файл firmware.bin нужно закинуть на флешку, флешку вставить в принтер. Файл firmware.bin лежит в по пути C:Marlin-bugfix-2.0.x.pioenvsLPC1768. После проверяем что все крутится куда нужно, нагревается там где нужно и останавливается там где нужно.
P.S Сильно не пинайте, статья первая.
Еще больше интересных статей
Qidi Q1 Pro разбор экструдера (для начинающих Qidiводов)
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Простое решение проблемы легкой кривизны стола Creality K1C b K1SE (спойлер - гроверы)
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Blue Pill & SSD1306, ну очень маленькие.., но 32 бит!
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Решил я тут попробовать перейти с 8 бит на 32.
Готовы...
Комментарии и вопросы
Так как бугры на фото видны то...
В гидропонных системах различн...
почему бы не отсканировать реш...
Ender 3 v3 SE04 сопло, Hyper P...
Требуется готовая пришивка на...
Всем привет! нужна ваша помощь...
Всем привет. На днях заменил т...