3D Print
DIY 打印机
Marlin 2.X固件_Configuration
Marlin_MKS-TinyBee(ESP32)
Marlin-独立配置文件(快速配置)
Marlin-LCD增加机器调试
常见问题
ESP3D_2.1X
OctoPrint for Android
Klipper 3D打印机
Klipper 摄像头
Klipper-中文Gcode
Klipper-打印预览
Kiauh_部署加速
配置文件_功能注释
Klipper-添加Shell支持
Klipper-常用命令
Klipper-机器校准
Klipper-打完自动关机
Klipper-Android版
Klipper-层暂停
Mainsail-交互宏
TMC2209/2208
步数计算
最大速度/最大加速度
常见问题
3D打印机打印时风扇不转
SD卡更新固件失败
支撑平面塌陷
其他黑科技
切片软件
耗材变脆
Fusion360
参数化设计__Fusion 360
Fusion 360-齿轮齿条绘制
不含设计历史导出
STL模型可编辑
申请教育账户
本文档使用 MrDoc 发布
-
+
首页
Marlin-独立配置文件(快速配置)
一些常用的配置参数散布在 `Marlin\Configuration.h` 和 `Marlin\Configuration_adv.h` 之中,修改起来要花很多时间在寻找上,我们可以通过创建一个通用的配置文件把其中比较常用的设置提取出来 ## 独立配置文件 本质就是使用改文件的参数影响源配置,两种方式: 1. 直接禁用源文件中对应变量,这个文件中创建所需变量 2. 源文件变量的参数修改为变量,这个文件中对该变量进行赋值 `Marlin\Config_ZWZW.h`,所有带 `_ZWZW` 均为额外增加的参数,不带的为官方参数 ```java #pragma once // 勿动,头文件保护宏,防止重复加载 /* =================================== 打印机常规配置 =======================================*/ // #define CUSTOM_MACHINE_NAME "ZWZW" // 打印机名称(可选) // (必选)设定打印机尺寸(mm) // __________________________________________________________________________ #define X_BED_SIZE 200 // X轴尺寸 #define Y_BED_SIZE 200 // Y轴尺寸 #define Z_MAX_POS 200 // Z轴尺寸 // (必选)归零方向 // __________________________________________________________________________ #define X_HOME_DIR -1 // X复位方向 #define Y_HOME_DIR -1 // Y复位方向 #define Z_HOME_DIR -1 // Z复位方向 // 限位触发电平 // __________________________________________________________________________ #define INVERTING_ZWZW false // false=低触发, true=高触发 // (可选)EEPROM // __________________________________________________________________________ #define EEPROM_SETTINGS // 允许使用保存修改到EEPROM #define EEPROM_AUTO_ZWZW // 启用自动初始化EEPROM(首次和出错会重置EEPROM) /* =================================== 主板设定 =======================================*/ // (必选)主板类型选择(只能选一个)这种方式选择的主板不支持 Auto Bulid Marlin 自动编译 // __________________________________________________________________________ // #define MKS_TINYBEE_ZWZW // MKS TinyBee // #define MKS_GEN_L_V21_ZWZW // MKS_GEN_L_V2.1 // #define MKS_GEN_L_V2_ZWZW // MKS_GEN_L_V2 #define MKS_GEN_L_ZWZW // MKS_GEN_L_V1 #define BAUDRATE_ZWZW 250000 // (必选)波特率 // (可选)ESP3D支持(仅限MKS TinyBee) // __________________________________________________________________________ #ifdef MKS_TINYBEE_ZWZW // 勿动,仅在 TinyBee 启用时有效 #define ESP3D_ZWZW // 启用ESP3D支持 #endif /* =================================== 步进电机设定 =======================================*/ // (必选)步进电机运动设置 // __________________________________________________________________________ #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 500 } // 设定步进电机每毫米步数 #define DEFAULT_MAX_FEEDRATE { 300, 300, 5, 25 } // 设定步进电机最高速度(mm/s) #define DEFAULT_MAX_ACCELERATION { 3000, 3000, 100, 10000 } // 设定步进电机最大加速度(mm/s) #define MOTOR_MAX_ZWZW // (可选)允许屏幕中设定 步进电机最高速度和最大加速度 // (必选)步进电机方向(false/true) // __________________________________________________________________________ #define INVERT_X_DIR true // X 步进方向 #define INVERT_Y_DIR true // Y 步进方向 #define INVERT_Z_DIR true // Z 步进方向 #define INVERT_E0_DIR false // 挤出机 步进方向 // (可选)双Z // __________________________________________________________________________ // #define Z2_DRIVER_ZWZW // 启用双Z(只有E1作为额外的Z) // (可选)Core运行系统设定(只能选一个),不知道是什么的请勿勾选 // __________________________________________________________________________ // #define COREXY // #define COREXZ // #define COREYZ // #define COREYX // #define COREZX // #define COREZY /* =================================== 温度设定 =======================================*/ #define BED_ZWZW // (可选)启用热床 // (必选)最大温度设定 // __________________________________________________________________________ #define HEATER_MAXTEMP_ZWZW 270 // 喷头最大温度 #define BED_MAXTEMP_ZWZW 60 // 热床最大温度 // (必选)预热稳定设置 // __________________________________________________________________________ #define RESIDENCY_TIME_ZWZW 10 // 温度到达后等待稳定的时间 #define WINDOW_ZWZW 1 // 等待稳定时间中允许浮动的温度 #define HYSTERESIS_ZWZW 3 // 温度接近值,开始进入等待稳定的触发值 /* =================================== LCD屏幕相关设置 =======================================*/ // (可选)屏幕类型选择(只能选一个) // __________________________________________________________________________ #define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER // 128*64 LCD // #define MKS_12864OLED_SSD1306 // 128*64 OLED // #define REPRAP_DISCOUNT_SMART_CONTROLLER // 2004 LCD // (可选)LCD屏幕旋钮方向设定 // __________________________________________________________________________ // #define REVERSE_ENCODER_DIRECTION // 翻转所有 // #define REVERSE_MENU_DIRECTION // 翻转上下方向 #define REVERSE_SELECT_DIRECTION // (LCD修改版_必选)翻转左右方向 // (可选)LCD屏幕其他杂项 // __________________________________________________________________________ #define SD_ZWZW // 启用SD卡 #define PID_ZWZW // 启用PID调整 #define MESH_BED_LEVELING // 辅助调平 // #define SOFT_ENDSTOPS_MENU_ITEM // LCD可解除软限位 ``` ## 加载配置文件 我们需要在 `Marlin\Configuration.h` 和 `Marlin\Configuration_adv.h` 中添加加载配置文件的指令 ```java // 放置在 #pragma once 后即可 #include "./Config_ZWZW.h" // 加载独立配置文件 ``` 因为配置文件对源配置文件中修改过多,这里列举出所要做的修改 ### Configuration.h ```java // 主板类型设定 #ifndef MOTHERBOARD // #define MOTHERBOARD BOARD_MKS_GEN_L_V21 // 手动指定(需要则启用并禁用配置文件中的) #ifdef MKS_TINYBEE_ZWZW #define MOTHERBOARD BOARD_MKS_TINYBEE // MKS TinyBee #endif #ifdef MKS_GEN_L_V21_ZWZW #define MOTHERBOARD BOARD_MKS_GEN_L_V21 // MKS_GEN_L_V2.1 #endif #ifdef MKS_GEN_L_V2_ZWZW #define MOTHERBOARD BOARD_MKS_GEN_L_V2 // MKS_GEN_L_V2 #endif #ifdef MKS_GEN_L_ZWZW #define MOTHERBOARD BOARD_MKS_GEN_L // MKS_GEN_L_V1 #endif #endif // 波特率设定(保留非参数设定) #ifdef BAUDRATE_ZWZW // 如果配置文件定义则使用定义,未定义使用默认的 #define BAUDRATE BAUDRATE_ZWZW // 根据配置文件设置波特率 #else #define BAUDRATE 250000 // 非参数设定手动设置 #endif // 串口2及其波特率设定,主要用于ESP3D(保留非参数设定) #ifdef ESP3D_ZWZW // Web控制(ESP3D)使用(必须搭配Configuration_adv.h中Web配置,不使用启用会报错) #define SERIAL_PORT_2 -1 #define BAUDRATE_2 BAUDRATE_ZWZW // 根据配置文件设置波特率,Web同配置即可 #else //#define SERIAL_PORT_2 -1 //#define BAUDRATE_2 250000 // :[2400, 9600, 19200, 38400, 57600, 115200, 250000, 500000, 1000000] Enable to override BAUDRATE #endif // 打印机名称(显示中LCD屏幕上的) //#define CUSTOM_MACHINE_NAME "3D Printer" // 默认禁用 // 双Z(保留非参数设定) #ifdef Z2_DRIVER_ZWZW // 根据配置文件来决定是否开启双Z #define Z2_DRIVER_TYPE A4988 #else //#define Z2_DRIVER_TYPE A4988 // 默认不开启 #endif // 预热稳定设置(直接使用配置参数替换原有参数) #if HAS_E_TEMP_SENSOR #define TEMP_RESIDENCY_TIME RESIDENCY_TIME_ZWZW // 温度到达后等待稳定的时间 #define TEMP_WINDOW WINDOW_ZWZW // 等待稳定时间中允许浮动的温度 #define TEMP_HYSTERESIS HYSTERESIS_ZWZW // 温度接近值,开始进入等待稳定的触发值 #endif #if TEMP_SENSOR_BED #define TEMP_BED_RESIDENCY_TIME RESIDENCY_TIME_ZWZW // 温度到达后等待稳定的时间 #define TEMP_BED_WINDOW WINDOW_ZWZW // 等待稳定时间中允许浮动的温度 #define TEMP_BED_HYSTERESIS HYSTERESIS_ZWZW // 温度接近值,开始进入等待稳定的触发值 #endif // 最大加热(直接使用配置参数替换原有参数) #define HEATER_0_MAXTEMP HEATER_MAXTEMP_ZWZW // 喷头0 #define BED_MAXTEMP BED_MAXTEMP_ZWZW // 热床 // 热床PID(保留非参数设定) #ifdef BED_ZWZW // 若配置文件中启用热床则开启PID #define PIDTEMPBED #else //#define PIDTEMPBED #endif // PID屏幕设置(保留非参数设定) #ifdef PID_ZWZW #define PID_EDIT_MENU // PID配置菜单 #define PID_AUTOTUNE_MENU // PID自动计算 #else //#define PID_EDIT_MENU //#define PID_AUTOTUNE_MENU #endif // Core设置(默认都是禁用,需要在配置文件中启用就行) //#define COREXY // 类似这种 // 限位触发电平(保留非参数设定) #ifdef INVERTING_ZWZW // 如果配置文件中设定了,则按设定来批量设置 #define X_MIN_ENDSTOP_INVERTING INVERTING_ZWZW #define Y_MIN_ENDSTOP_INVERTING INVERTING_ZWZW #define Z_MIN_ENDSTOP_INVERTING INVERTING_ZWZW #define I_MIN_ENDSTOP_INVERTING INVERTING_ZWZW #define J_MIN_ENDSTOP_INVERTING INVERTING_ZWZW #define K_MIN_ENDSTOP_INVERTING INVERTING_ZWZW #define U_MIN_ENDSTOP_INVERTING INVERTING_ZWZW #define V_MIN_ENDSTOP_INVERTING INVERTING_ZWZW #define W_MIN_ENDSTOP_INVERTING INVERTING_ZWZW #define X_MAX_ENDSTOP_INVERTING INVERTING_ZWZW #define Y_MAX_ENDSTOP_INVERTING INVERTING_ZWZW #define Z_MAX_ENDSTOP_INVERTING INVERTING_ZWZW #define I_MAX_ENDSTOP_INVERTING INVERTING_ZWZW #define J_MAX_ENDSTOP_INVERTING INVERTING_ZWZW #define K_MAX_ENDSTOP_INVERTING INVERTING_ZWZW #define U_MAX_ENDSTOP_INVERTING INVERTING_ZWZW #define V_MAX_ENDSTOP_INVERTING INVERTING_ZWZW #define W_MAX_ENDSTOP_INVERTING INVERTING_ZWZW #define Z_MIN_PROBE_ENDSTOP_INVERTING INVERTING_ZWZW #else // 如果配置文件中没有进行设定,则采用手动设置 #define X_MIN_ENDSTOP_INVERTING false #define Y_MIN_ENDSTOP_INVERTING false #define Z_MIN_ENDSTOP_INVERTING false #define I_MIN_ENDSTOP_INVERTING false #define J_MIN_ENDSTOP_INVERTING false #define K_MIN_ENDSTOP_INVERTING false #define U_MIN_ENDSTOP_INVERTING false #define V_MIN_ENDSTOP_INVERTING false #define W_MIN_ENDSTOP_INVERTING false #define X_MAX_ENDSTOP_INVERTING false #define Y_MAX_ENDSTOP_INVERTING false #define Z_MAX_ENDSTOP_INVERTING false #define I_MAX_ENDSTOP_INVERTING false #define J_MAX_ENDSTOP_INVERTING false #define K_MAX_ENDSTOP_INVERTING false #define U_MAX_ENDSTOP_INVERTING false #define V_MAX_ENDSTOP_INVERTING false #define W_MAX_ENDSTOP_INVERTING false #define Z_MIN_PROBE_ENDSTOP_INVERTING false #endif // 步进电机运运动设置(默认的禁用,在配置文件中进行设定) // #define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 400, 500 } // #define DEFAULT_MAX_FEEDRATE { 300, 300, 5, 25 } // 允许屏幕中设定 步进电机最高速度和最大加速度(保留非参数设定) #ifdef MOTOR_MAX_ZWZW // 最高速度设置 #define LIMITED_MAX_FR_EDITING // 允许LCD屏幕和M203设置,默认最大范围为 DEFAULT_MAX_FEEDRATE * 2 #else //#define LIMITED_MAX_FR_EDITING #endif // #if ENABLED(LIMITED_MAX_FR_EDITING) // 禁用自定义范围,使用基础参数*2 // #define MAX_FEEDRATE_EDIT_VALUES { 600, 600, 10, 50 } // 或自行定义范围 // #endif #ifdef MOTOR_MAX_ZWZW // 最大加速度设置 #define LIMITED_MAX_ACCEL_EDITING // 允许LCD屏幕和M201设置,默认最大范围为 DEFAULT_MAX_ACCELERATION * 2 #else //#define LIMITED_MAX_ACCEL_EDITING #endif // #if ENABLED(LIMITED_MAX_ACCEL_EDITING) // 禁用自定义范围,使用基础参数*2 // #define MAX_ACCEL_EDIT_VALUES { 6000, 6000, 200, 20000 } // 或自行定义范围 // #endif // 电机方向(默认的禁用,在配置文件中进行设定) // #define INVERT_X_DIR false // #define INVERT_Y_DIR true // #define INVERT_Z_DIR false // #define INVERT_E0_DIR false // 归零方向(默认的禁用,在配置文件中进行设定) // #define X_HOME_DIR -1 // #define Y_HOME_DIR -1 // #define Z_HOME_DIR -1 // 打印尺寸(默认的禁用,在配置文件中进行设定) // #define X_BED_SIZE 200 // #define Y_BED_SIZE 200 // #define Z_MAX_POS 200 // 软限位(默认的禁用,在配置文件中进行设定) #if EITHER(MIN_SOFTWARE_ENDSTOPS, MAX_SOFTWARE_ENDSTOPS) // #define SOFT_ENDSTOPS_MENU_ITEM // 允许LCD中关闭软限位 #endif // 辅助调平(手动调平)(默认就是禁用,需要在配置文件中进行设定) // #define MESH_BED_LEVELING // EEPROM // #define EEPROM_SETTINGS // 允许EEPROM保存和恢复(默认就是禁用,需要在配置文件中进行设定) //#define DISABLE_M503 // Saves ~2700 bytes of flash. Disable for release! #define EEPROM_CHITCHAT // Give feedback on EEPROM commands. Disable to save PROGMEM. #define EEPROM_BOOT_SILENT // Keep M503 quiet and only give errors during first load #if ENABLED(EEPROM_SETTINGS) #if ENABLED(EEPROM_AUTO_ZWZW) // 配置文件中设定是否启用错误自动恢复(保留非参数设定) #define EEPROM_AUTO_INIT // 出现任何错误时自动初始化EEPROM #define EEPROM_INIT_NOW // 新构建后首次启动时初始化EEPROM #else //#define EEPROM_AUTO_INIT //#define EEPROM_INIT_NOW #endif #endif // 屏幕语言(保留非参数设定) #ifndef REPRAP_DISCOUNT_SMART_CONTROLLER // 判断是否是 2004屏幕 #define LCD_LANGUAGE zh_CN // 非2004,均采用中文 #else #define LCD_LANGUAGE en // 2004屏幕,使用英文 #endif // SD卡(默认禁用,额外添加即可) #ifdef SD_ZWZW #define SDSUPPORT // 启用SD #define SD_CHECK_AND_RETRY // SD检查并重试 #endif // LCD旋钮翻转(全部禁用,在配置文件中配置即可) // #define REVERSE_ENCODER_DIRECTION // 翻转所有 // #define REVERSE_MENU_DIRECTION // 翻转上下方向 // #define REVERSE_SELECT_DIRECTION // (LCD修改版_必选)翻转左右方向 ``` ### Configuration_adv.h ```java // ESP3D设置(保留非参数设定) #ifdef ESP3D_ZWZW #define ESP3D_WIFISUPPORT // ESP3D Library WiFi management (https://github.com/luc-github/ESP3DLib) #if EITHER(WIFISUPPORT, ESP3D_WIFISUPPORT) #define WEBSUPPORT // 启动Web服务器(可能包括自动发现) #define OTASUPPORT // 支持空中传送固件更新 #define WIFI_CUSTOM_COMMAND // 接受来自主机的功能配置命令(例如WiFi ESP3D) #endif #else // #define ESP3D_WIFISUPPORT // ESP3D Library WiFi management (https://github.com/luc-github/ESP3DLib) #if EITHER(WIFISUPPORT, ESP3D_WIFISUPPORT) //#define WEBSUPPORT // Start a webserver (which may include auto-discovery) //#define OTASUPPORT // Support over-the-air firmware updates //#define WIFI_CUSTOM_COMMAND // Accept feature config commands (e.g., WiFi ESP3D) from the host /** * To set a default WiFi SSID / Password, create a file called Configuration_Secure.h with * the following defines, customized for your network. This specific file is excluded via * .gitignore to prevent it from accidentally leaking to the public. * * #define WIFI_SSID "WiFi SSID" * #define WIFI_PWD "WiFi Password" */ //#include "Configuration_Secure.h" // External file with WiFi SSID / Password #endif #endif ```
造物者W
2024年3月6日 11:00
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码