#
# Marlin Firmware
# config.ini - Options to apply before the build
#
[config:base]
#
# ini_use_config - A comma-separated list of actions to apply to the Configuration files.
#                  The actions will be applied in the listed order.
#  - none
#    Ignore this file and don't apply any configuration options
#
#  - base
#    Just apply the options in config:base to the configuration
#
#  - minimal
#    Just apply the options in config:minimal to the configuration
#
#  - all
#    Apply all 'config:*' sections in this file to the configuration
#
#  - another.ini
#    Load another INI file with a path relative to this config.ini file (i.e., within Marlin/)
#
#  - https://me.myserver.com/path/to/configs
#    Fetch configurations from any URL.
#
#  - example/Creality/Ender-5 Plus @ bugfix-2.1.x
#    Fetch example configuration files from the MarlinFirmware/Configurations repository
#    https://raw.githubusercontent.com/MarlinFirmware/Configurations/bugfix-2.1.x/config/examples/Creality/Ender-5%20Plus/
#
#  - example/default @ release-2.0.9.7
#    Fetch default configuration files from the MarlinFirmware/Configurations repository
#    https://raw.githubusercontent.com/MarlinFirmware/Configurations/release-2.0.9.7/config/default/
#
#  - [disable]
#    Comment out all #defines in both Configuration.h and Configuration_adv.h. This is useful
#    to start with a clean slate before applying any config: options, so only the options explicitly
#    set in config.ini will be enabled in the configuration.
#
#  - [flatten] (Not yet implemented)
#    Produce a flattened set of Configuration.h and Configuration_adv.h files with only the enabled
#    #defines and no comments. A clean look, but context-free.
#
ini_use_config                           = none

# Load all config: sections in this file
;ini_use_config                          = all
# Disable everything and apply subsequent config:base options
;ini_use_config                          = [disable], base
# Load config file relative to Marlin/
;ini_use_config                          = another.ini
# Download configurations from GitHub
;ini_use_config                          = example/Creality/Ender-5 Plus @ bugfix-2.1.x
# Download configurations from your server
;ini_use_config                          = https://me.myserver.com/path/to/configs
# Evaluate config:base and do a config dump
;ini_use_config                          = base
;config_export                           = 2

[config:minimal]
motherboard                              = BOARD_RAMPS_14_EFB
serial_port                              = 0
baudrate                                 = 250000

use_watchdog                             = on
thermal_protection_hotends               = on
thermal_protection_hysteresis            = 4
thermal_protection_period                = 40

bufsize                                  = 4
block_buffer_size                        = 16
max_cmd_size                             = 96

extruders                                = 1
temp_sensor_0                            = 1

temp_hysteresis                          = 3
heater_0_mintemp                         = 5
heater_0_maxtemp                         = 275
preheat_1_temp_hotend                    = 180

bang_max                                 = 255
pidtemp                                  = on
pid_k1                                   = 0.95
pid_max                                  = 255
pid_functional_range                     = 10

default_kp                               = 22.20
default_ki                               = 1.08
default_kd                               = 114.00

x_driver_type                            = A4988
y_driver_type                            = A4988
z_driver_type                            = A4988
e0_driver_type                           = A4988

x_bed_size                               = 200
x_min_pos                                = 0
x_max_pos                                = X_BED_SIZE

y_bed_size                               = 200
y_min_pos                                = 0
y_max_pos                                = Y_BED_SIZE

z_min_pos                                = 0
z_max_pos                                = 200

x_home_dir                               = -1
y_home_dir                               = -1
z_home_dir                               = -1

x_min_endstop_hit_state                  = HIGH
y_min_endstop_hit_state                  = HIGH
z_min_endstop_hit_state                  = HIGH

default_axis_steps_per_unit              = { 80, 80, 400, 500 }
axis_relative_modes                      = { false, false, false, false }
default_max_feedrate                     = { 300, 300, 5, 25 }
default_max_acceleration                 = { 3000, 3000, 100, 10000 }

homing_feedrate_mm_m                     = { (50*60), (50*60), (4*60) }
homing_bump_divisor                      = { 2, 2, 4 }

x_enable_on                              = 0
y_enable_on                              = 0
z_enable_on                              = 0
e_enable_on                              = 0

invert_x_dir                             = false
invert_y_dir                             = true
invert_z_dir                             = false
invert_e0_dir                            = false

step_state_e                             = HIGH
step_state_x                             = HIGH
step_state_y                             = HIGH
step_state_z                             = HIGH

disable_x                                = off
disable_y                                = off
disable_z                                = off
disable_e                                = off

proportional_font_ratio                  = 1.0
default_nominal_filament_dia             = 1.75

junction_deviation_mm                    = 0.013

default_acceleration                     = 3000
default_travel_acceleration              = 3000
default_retract_acceleration             = 3000

default_minimumfeedrate                  = 0.0
default_mintravelfeedrate                = 0.0

minimum_planner_speed                    = 0.05
min_steps_per_segment                    = 6
default_minsegmenttime                   = 20000

[config:basic]
bed_overshoot                            = 10
busy_while_heating                       = on
default_ejerk                            = 5.0
default_keepalive_interval               = 2
default_leveling_fade_height             = 0.0
disable_other_extruders                  = on
display_charset_hd44780                  = JAPANESE
eeprom_boot_silent                       = on
eeprom_chitchat                          = on
endstoppullups                           = on
extrude_maxlength                        = 200
extrude_mintemp                          = 170
host_keepalive_feature                   = on
hotend_overshoot                         = 15
jd_handle_small_segments                 = on
lcd_info_screen_style                    = 0
lcd_language                             = en
max_bed_power                            = 255
mesh_inset                               = 0
min_software_endstops                    = on
max_software_endstops                    = on
min_software_endstop_x                   = on
min_software_endstop_y                   = on
min_software_endstop_z                   = on
max_software_endstop_x                   = on
max_software_endstop_y                   = on
max_software_endstop_z                   = on
preheat_1_fan_speed                      = 0
preheat_1_label                          = "PLA"
preheat_1_temp_bed                       = 70
prevent_cold_extrusion                   = on
prevent_lengthy_extrude                  = on
printjob_timer_autostart                 = on
probing_margin                           = 10
show_bootscreen                          = on
soft_pwm_scale                           = 0
string_config_h_author                   = "(none, default config)"
temp_bed_hysteresis                      = 3
temp_bed_residency_time                  = 10
temp_bed_window                          = 1
temp_residency_time                      = 10
temp_window                              = 1
validate_homing_endstops                 = on
xy_probe_feedrate                        = (133*60)
z_clearance_between_probes               = 5
z_clearance_deploy_probe                 = 10
z_clearance_multi_probe                  = 5

[config:advanced]
arc_support                              = on
auto_report_temperatures                 = on
autotemp                                 = on
autotemp_oldweight                       = 0.98
bed_check_interval                       = 5000
default_stepper_timeout_sec              = 120
default_volumetric_extruder_limit        = 0.00
disable_idle_x                           = on
disable_idle_y                           = on
disable_idle_z                           = on
disable_idle_e                           = on
e0_auto_fan_pin                          = -1
encoder_100x_steps_per_sec               = 80
encoder_10x_steps_per_sec                = 30
encoder_rate_multiplier                  = on
extended_capabilities_report             = on
extruder_auto_fan_speed                  = 255
extruder_auto_fan_temperature            = 50
fanmux0_pin                              = -1
fanmux1_pin                              = -1
fanmux2_pin                              = -1
faster_gcode_parser                      = on
homing_bump_mm                           = { 5, 5, 2 }
max_arc_segment_mm                       = 1.0
min_arc_segment_mm                       = 0.1
min_circle_segments                      = 72
n_arc_correction                         = 25
serial_overrun_protection                = on
slowdown                                 = on
slowdown_divisor                         = 2
temp_sensor_bed                          = 0
thermal_protection_bed_hysteresis        = 2
thermocouple_max_errors                  = 15
tx_buffer_size                           = 0
watch_bed_temp_increase                  = 2
watch_bed_temp_period                    = 60
watch_temp_increase                      = 2
watch_temp_period                        = 20
