Board doesn't boot with PID values in config files

I have an issue with my azteeg x5 gt. I’ve installed the latest firmware edge b6153da.
If I set pid values in the config, the board never boots up and my viki 2 lcd remains blank.
If they are commented out it boots. I can set them with M301 just fine, and I can do this in my startup gcode in my slicer for now, but this isn’t ideal

The relevant part of my config

# Hotend temperature control configuration
temperature_control.hotend.enable            true             # Whether to activate this ( "hotend" ) module at all. All configuration is ignored if false.
temperature_control.hotend.thermistor_pin    0.24             # Pin for the thermistor to read
temperature_control.hotend.heater_pin        2.4              # Pin that controls the heater
temperature_control.hotend.thermistor        Semitec        
#temperature_control.hotend.beta             4066             # or set the beta value

temperature_control.hotend.set_m_code 104 #
temperature_control.hotend.set_and_wait_m_code 109 #
temperature_control.hotend.designator T #
temperature_control.hotend.max_temp 300
temperature_control.hotend.runaway_heating_timeout 225 # max is 4088 seconds
#temperature_control.hotend.p_factor 39.8 #
#temperature_control.hotend.i_factor 2.908 #
#temperature_control.hotend.d_factor 136 #

#temperature_control.hotend.max_pwm 64 # max pwm, 64 is a good value if driving a 12v resistor with 24v.

I actually get this with setting some custom menu options too.
Strangely no matter what I do I can’t get more than the 4 that I already put in.
even if I copy an existing one and just change the name, and designation by one character

Full Config

# Robot module configurations : general handling of movement G-codes and slicing into moves
arm_solution      corexy
default_feed_rate                            1000             # Default rate ( mm/minute ) for G1/G2/G3 moves
default_seek_rate                            1000             # Default rate ( mm/minute ) for G0 moves
mm_per_arc_segment                           0.5              # Arcs are cut into segments ( lines ), this is the length for these segments.  Smaller values mean more resolution, higher values mean faster computation
#mm_per_line_segment                          5                # Lines can be cut into segments ( not usefull with cartesian coordinates robots ).

Arm solution configuration : Cartesian robot. Translates mm positions into stepper positions

alpha_steps_per_mm 320 # Steps per mm for alpha stepper
beta_steps_per_mm 320 # Steps per mm for beta stepper
gamma_steps_per_mm 3200 # Steps per mm for gamma stepper

Planner module configuration : Look-ahead and acceleration configuration

planner_queue_size 32 # DO NOT CHANGE THIS UNLESS YOU KNOW EXACTLY WHAT YOUR ARE DOING
acceleration 500 # Acceleration in mm/second/second.
z_acceleration 500 # Acceleration for Z only moves in mm/s^2, 0 disables it, disabled by default. DO NOT SET ON A DELTA
acceleration_ticks_per_second 1000 # Number of times per second the speed is updated
junction_deviation 0.05 # Similar to the old “max_jerk”, in millimeters, see :
# and . Lower values mean being more careful, higher values means being faster and have more jerk

Stepper module configuration

microseconds_per_step_pulse 1 # Duration of step pulses to stepper drivers, in microseconds
base_stepping_frequency 100000 # Base frequency for stepping

Stepper module pins ( ports, and pin numbers, appending “!” to the number will invert a pin )

alpha_step_pin 2.1 # Pin for alpha stepper step signal
alpha_dir_pin 0.11! # Pin for alpha stepper direction
alpha_en_pin nc # Pin for alpha enable pin 0.10
alpha_current 0.5 # X stepper motor current
x_axis_max_speed 3000 # mm/mi
alpha_max_rate 18700.0 # mm/min actuator max speed

beta_step_pin 2.2 # Pin for beta stepper step signal
beta_dir_pin 0.20! # Pin for beta stepper direction
beta_en_pin nc # Pin for beta enable
beta_current 0.5 # Y stepper motor current
y_axis_max_speed 3000 # mm/min
beta_max_rate 18700.0 # mm/min actuator max speed

gamma_step_pin 2.3 # Pin for gamma stepper step signal
gamma_dir_pin 0.22! # Pin for gamma stepper direction
gamma_en_pin nc # Pin for gamma enable
gamma_current 1.0 # Z stepper motor current
z_axis_max_speed 300 # mm/min
gamma_max_rate 300.0 # mm/min actuator max speed

bigfoot settings

motor_driver_control.alpha.enable true # alpha (X) is a TMC26X
motor_driver_control.alpha.designator X # A to set the settings
motor_driver_control.alpha.chip TMC2660 # chip name
motor_driver_control.alpha.current 1000 # current in milliamps
motor_driver_control.alpha.max_current 3000 # max current in milliamps
motor_driver_control.alpha.microsteps 32 # microsteps 256 max
motor_driver_control.alpha.alarm false # set to true means the error bits are checked
motor_driver_control.alpha.halt_on_alarm false # if set to true means ON_HALT is entered on any error bits being set
motor_driver_control.alpha.spi_channel 0 # SPI channel 1 is sdcard channel
motor_driver_control.alpha.spi_cs_pin 0.10 # SPI CS pin
#motor_driver_control.alpha.spi_frequency 100000 # SPI frequency
motor_driver_control.alpha.sense_resistor 100 # set the sense resistor used.

motor_driver_control.beta.enable true # beta (Y) is a TMC26X
motor_driver_control.beta.designator Y # B to set the settings
motor_driver_control.beta.chip TMC2660 # chip name
motor_driver_control.beta.current 1000 # current in milliamps
motor_driver_control.beta.max_current 3000 # max current in milliamps
motor_driver_control.beta.microsteps 32 # microsteps 256 max
motor_driver_control.beta.alarm false # set to true means the error bits are checked
motor_driver_control.beta.halt_on_alarm false # if set to true means ON_HALT is entered on any error bits being set
motor_driver_control.beta.spi_channel 0 # SPI channel 1 is sdcard channel
motor_driver_control.beta.spi_cs_pin 0.19 # SPI CS pin DRV8711 requires inverted CS
#motor_driver_control.beta.spi_frequency 100000 # SPI frequency
motor_driver_control.beta.sense_resistor 100 # set the sense resistor used

motor_driver_control.gamma.enable true # gamma (Z) is a TMC26X
motor_driver_control.gamma.designator Z # G to set the settings
motor_driver_control.gamma.chip TMC2660 # chip name
motor_driver_control.gamma.current 1500 # current in milliamps
motor_driver_control.gamma.max_current 3000 # max current in milliamps
motor_driver_control.gamma.microsteps 32 # microsteps 256 max
motor_driver_control.gamma.alarm false # set to true means the error bits are checked
motor_driver_control.gamma.halt_on_alarm false # if set to true means ON_HALT is entered on any error bits being set
motor_driver_control.gamma.spi_channel 0 # SPI channel 1 is sdcard channel
motor_driver_control.gamma.spi_cs_pin 0.21 # SPI CS pin DRV8711 requires inverted CS
#motor_driver_control.gamma.spi_frequency 100000 # SPI frequency
motor_driver_control.gamma.sense_resistor 100 # set the sense resistor used

Serial communications configuration ( baud rate default to 9600 if undefined )

uart0.baud_rate 115200 # Baud rate for the default hardware serial port
second_usb_serial_enable false # This enables a second usb serial port (to have both pronterface and a terminal connected)
#msd_disable false # disable the MSD (USB SDCARD) when set to true

Extruder module configuration

extruder.hotend.enable true # Whether to activate the extruder module at all. All configuration is ignored if false
extruder.hotend.steps_per_mm 2092 # Steps per mm for extruder stepper
extruder.hotend.default_feed_rate 600 # Default rate ( mm/minute ) for moves where only the extruder moves
extruder.hotend.acceleration 500 # Acceleration for the stepper motor mm/sec²
extruder.hotend.max_speed 50 # mm/s

extruder.hotend.step_pin 2.0 # Pin for extruder step signal
extruder.hotend.dir_pin 0.5! # Pin for extruder dir signal
extruder.hotend.en_pin nc # Pin for extruder enable signal

extruder offset

extruder.hotend.x_offset 0 # x offset from origin in mm
extruder.hotend.y_offset 0 # y offset from origin in mm
extruder.hotend.z_offset 0 # z offset from origin in mm

firmware retract settings when using G10/G11, these are the defaults if not defined, must be defined for each extruder if not using the defaults

extruder.hotend.retract_length 3 # retract length in mm
extruder.hotend.retract_feedrate 45 # retract feedrate in mm/sec
extruder.hotend.retract_recover_length 0 # additional length for recover
extruder.hotend.retract_recover_feedrate 8 # recover feedrate in mm/sec (should be less than retract feedrate)
extruder.hotend.retract_zlift_length 0 # zlift on retract in mm, 0 disables
extruder.hotend.retract_zlift_feedrate 6000 # zlift feedrate in mm/min (Note mm/min NOT mm/sec)
delta_current 1.0 # Extruder stepper motor current

motor_driver_control.delta.enable true # delta (E1) is a TMC26X
motor_driver_control.delta.designator A # D to set the settings
motor_driver_control.delta.chip TMC2660 # chip name
motor_driver_control.delta.current 1000 # current in milliamps
motor_driver_control.delta.max_current 3000 # max current in milliamps
motor_driver_control.delta.microsteps 32 # microsteps 256 max
#motor_driver_control.delta.decay_mode 1 # decay mode default
motor_driver_control.delta.alarm false # set to true means the error bits are checked
motor_driver_control.delta.halt_on_alarm false # if set to true means ON_HALT is entered on any error bits being set
motor_driver_control.delta.spi_channel 0 # SPI channel 1 is sdcard channel
motor_driver_control.delta.spi_cs_pin 0.4 # SPI CS pin
#motor_driver_control.delta.spi_frequency 100000 # SPI frequency
motor_driver_control.delta.sense_resistor 100 # set the sense resistor used.

Second extruder module configuration

extruder.hotend2.enable true # Whether to activate the extruder module at all. All configuration is ignored if false
extruder.hotend2.steps_per_mm 2092 # Steps per mm for extruder stepper
extruder.hotend2.default_feed_rate 600 # Default rate ( mm/minute ) for moves where only the extruder moves
extruder.hotend2.acceleration 500 # Acceleration for the stepper motor, as of 0.6, arbitrary ratio
extruder.hotend2.max_speed 50 # mm/s

extruder.hotend2.step_pin 2.8 # Pin for extruder step signal
extruder.hotend2.dir_pin 2.13 # Pin for extruder dir signal
extruder.hotend2.en_pin nc # Pin for extruder enable signal

extruder.hotend2.x_offset 18 # x offset from origin in mm
extruder.hotend2.y_offset 0 # y offset from origin in mm
extruder.hotend2.z_offset 0 # z offset from origin in mm
epsilon_current 1.0 # Second extruder stepper motor current

motor_driver_control.epsilon.enable true # epsilon (E2) is a TMC26X
motor_driver_control.epsilon.designator B # E to set the settings
motor_driver_control.epsilon.chip TMC2660 # chip name
motor_driver_control.epsilon.current 1000 # current in milliamps
motor_driver_control.epsilon.max_current 3000 # max current in milliamps
motor_driver_control.epsilon.microsteps 32 # microsteps 256 max
motor_driver_control.epsilon.alarm false # set to true means the error bits are checked
motor_driver_control.epsilon.halt_on_alarm false # if set to true means ON_HALT is entered on any error bits being set
motor_driver_control.epsilon.spi_channel 0 # SPI channel 1 is sdcard channel
motor_driver_control.epsilon.spi_cs_pin 4.29 # SPI CS pin DRV8711 requires inverted CS
#motor_driver_control.epsilon.spi_frequency 100000 # SPI frequency
motor_driver_control.epsilon.sense_resistor 100 # set the sense resistor used

Laser module configuration

laser_module_enable false # Whether to activate the laser module at all. All configuration is ignored if false.
#laser_module_pin 2.7 # this pin will be PWMed to control the laser
#laser_module_max_power 0.8 # this is the maximum duty cycle that will be applied to the laser
#laser_module_tickle_power 0.0 # this duty cycle will be used for travel moves to keep the laser active without actually burning

switch.psu.enable true # turn atx on/off
switch.psu.input_on_command M80 #
switch.psu.input_off_command M81 #
switch.psu.output_pin 1.19 # small mosfet (NB not inverted)
switch.psu.output_type digital # on/off only
#switch.psu.ignore_on_halt true # so the PSU does not turn off on a HALT condition (like limit trigger)
# However leave commented or set to false if you want the PSU to turn off for an over heat fault condition

Hotend temperature control configuration

temperature_control.hotend.enable true # Whether to activate this ( “hotend” ) module at all. All configuration is ignored if false.
temperature_control.hotend.thermistor_pin 0.24 # Pin for the thermistor to read
temperature_control.hotend.heater_pin 2.4 # Pin that controls the heater
temperature_control.hotend.thermistor Semitec # see
#temperature_control.hotend.beta 4066 # or set the beta value

temperature_control.hotend.set_m_code 104 #
temperature_control.hotend.set_and_wait_m_code 109 #
temperature_control.hotend.designator T #
temperature_control.hotend.max_temp 300
temperature_control.hotend.runaway_heating_timeout 225 # max is 4088 seconds
#temperature_control.hotend.p_factor 39.8 #
#temperature_control.hotend.i_factor 2.908 #
#temperature_control.hotend.d_factor 136 #

#temperature_control.hotend.max_pwm 64 # max pwm, 64 is a good value if driving a 12v resistor with 24v.

Hotend2 temperature control configuration

temperature_control.hotend2.enable true # Whether to activate this ( “hotend” ) module at all. All configuration is ignored if false.

temperature_control.hotend2.thermistor_pin 0.25 # Pin for the thermistor to read
temperature_control.hotend2.heater_pin 2.5 # Pin that controls the heater
temperature_control.hotend2.thermistor Semitec # see
##temperature_control.hotend2.beta 4066 # or set the beta value
temperature_control.hotend2.set_m_code 104 #
temperature_control.hotend2.set_and_wait_m_code 109 #
temperature_control.hotend2.designator T1 #
temperature_control.hotend2.max_temp 300
temperature_control.hotend2.runaway_heating_timeout 225
#temperature_control.hotend2.p_factor 39.8 # permanently set the PID values after an auto pid
#temperature_control.hotend2.i_factor 2.908 #
#temperature_control.hotend2.d_factor 136 #

#temperature_control.hotend2.max_pwm 64 # max pwm, 64 is a good value if driving a 12v resistor with 24v.

temperature_control.bed.enable true #
temperature_control.bed.thermistor_pin 0.23 #
temperature_control.bed.heater_pin 2.7 #
temperature_control.bed.thermistor EPCOS100K # see
#temperature_control.bed.beta 4066 # or set the beta value

temperature_control.bed.set_m_code 140 #
temperature_control.bed.set_and_wait_m_code 190 #
temperature_control.bed.designator B #
temperature_control.bed.max_temp 125
#temperature_control.bed.max_pwm 64 # max pwm, 64 is a good value if driving a 12v resistor with 24v.
#temperature_control.bed.p_factor 200.1 # permanently set the PID values after an auto pid
#temperature_control.bed.i_factor 6.990 #
#temperature_control.bed.d_factor 1432

Switch module for fan control

switch.fan.enable true #
switch.fan.input_on_command M106 #
switch.fan.input_off_command M107 #
switch.fan.output_pin 0.26 #

switch.misc.enable true #
switch.misc.input_on_command M42 #
switch.misc.input_off_command M43 #
switch.misc.output_pin 1.22 #

Switch module for servo control

switch.servo.enable true # Enable this module
switch.servo.input_on_command M280 # M280 S7.5 would be midway
switch.servo.input_off_command M281 # Same as M280 S0 0% duty cycle, effectively off
switch.servo.output_pin 1.23 # Must be a PWM capable pin
switch.servo.output_type hwpwm # H/W pwm output settable with S parameter in the input_on_comand
switch.servo.pwm_period_ms 20 # set period to 20ms (50Hz) default is 50Hz

automatically toggle a switch at a specified temperature. Different ones of these may be defined to monitor different temperatures and switch different swithxes

useful to turn on a fan or water pump to cool the hotend

#temperatureswitch.hotend.enable true #
#temperatureswitch.hotend.designator T # first character of the temperature control designator to use as the temperature sensor to monitor
#temperatureswitch.hotend.switch misc # select which switch to use, matches the name of the defined switch
#temperatureswitch.hotend.threshold_temp 60.0 # temperature to turn on (if rising) or off the switch
#temperatureswitch.hotend.heatup_poll 15 # poll heatup at 15 sec intervals
#temperatureswitch.hotend.cooldown_poll 60 # poll cooldown at 60 sec intervals

filament out detector

#filament_detector.enable true #
#filament_detector.encoder_pin 0.26 # must be interrupt enabled pin (0.26, 0.27, 0.28)
#filament_detector.seconds_per_check 2 # may need to be longer
#filament_detector.pulses_per_mm 1 .0 # will need to be tuned
#filament_detector.bulge_pin 0.27 # optional bulge detector switch and/or manual suspend

Switch module for spindle control

#switch.spindle.enable false #

Endstops

endstops_enable true # the endstop module is enabled by default and can be disabled here
corexy_homing true # set to true if homing on a hbit or corexy
alpha_min_endstop 1.24 # add a ! to invert if endstop is NO connected to ground
#alpha_max_endstop 1.27! #
alpha_homing_direction home_to_min # or set to home_to_max and set alpha_max
alpha_min -10 # this gets loaded after homing when home_to_min is set
alpha_max 400 # this gets loaded after homing when home_to_max is set
beta_min_endstop 1.25 #
#beta_max_endstop 1.28! #
beta_homing_direction home_to_min #
beta_min -53 #
beta_max 400 #
#gamma_min_endstop 1.26! #
#gamma_max_endstop 1.29! #
gamma_homing_direction home_to_min #
gamma_min 0 #
gamma_max 500 #

optional enable limit switches, actions will stop if any enabled limit switch is triggered

#alpha_limit_enable false # set to true to enable X min and max limit switches
#beta_limit_enable false # set to true to enable Y min and max limit switches
#gamma_limit_enable false # set to true to enable Z min and max limit switches

#probe endstop
#probe_pin 1.29 # optional pin for probe

alpha_fast_homing_rate_mm_s 20 # feedrates in mm/second
beta_fast_homing_rate_mm_s 50 # "
gamma_fast_homing_rate_mm_s 4 # "
alpha_slow_homing_rate_mm_s 10 # "
beta_slow_homing_rate_mm_s 25 # "
gamma_slow_homing_rate_mm_s 2 # "

alpha_homing_retract_mm 5 # distance in mm
beta_homing_retract_mm 5 # "
gamma_homing_retract_mm 1 # "

#endstop_debounce_count 100 # uncomment if you get noise on your endstops, default is 100

optional Z probe

zprobe.enable true # set to true to enable a zprobe
zprobe.probe_pin 1.29^ # pin probe is attached to if NC remove the !
zprobe.slow_feedrate 5 # mm/sec probe feed rate
#zprobe.debounce_count 100 # set if noisy
zprobe.fast_feedrate 100 # move feedrate mm/sec
zprobe.probe_height 10 # how much above bed to start probe

associated with zprobe the leveling strategy to use

leveling-strategy.rectangular-grid.enable true # The strategy must be enabled in the config, as well as the zprobe module.
leveling-strategy.rectangular-grid.x_size 400 # size of bed in the X axis
leveling-strategy.rectangular-grid.y_size 400 # size of bed in the Y axis
leveling-strategy.rectangular-grid.size 3 # The size of the grid, for example, 7 causes a 7x7 grid with 49 points.
# Must be an odd number.
leveling-strategy.rectangular-grid.probe_offsets 33.7,11.7,0 # Optional probe offsets from the nozzle or tool head
leveling-strategy.rectangular-grid.save false # If the saved grid is to be loaded on boot then this must be set to true
leveling-strategy.rectangular-grid.initial_height 10 # will move to Z10 before the first probe
#leveling-strategy.three-point-leveling.enable true # a leveling strategy that probes three points to define a plane and keeps the Z parallel to that plane
#leveling-strategy.three-point-leveling.point1 100.0,0.0 # the first probe point (x,y) optional may be defined with M557
#leveling-strategy.three-point-leveling.point2 200.0,200.0 # the second probe point (x,y)
#leveling-strategy.three-point-leveling.point3 0.0,200.0 # the third probe point (x,y)
#leveling-strategy.three-point-leveling.home_first true # home the XY axis before probing
#leveling-strategy.three-point-leveling.tolerance 0.03 # the probe tolerance in mm, anything less that this will be ignored, default is 0.03mm
#leveling-strategy.three-point-leveling.probe_offsets 0,0,0 # the probe offsets from nozzle, must be x,y,z, default is no offset
#leveling-strategy.three-point-leveling.save_plane false # set to true to allow the bed plane to be saved with M500 default is false

kill button (used to be called pause) maybe assigned to a different pin, set to the onboard pin by default

kill_button_enable true # set to true to enable a kill button
kill_button_pin 1.30 # kill button pin.

Panel See

panel.enable true # set to true to enable the panel code

Example viki2 config for an azteeg miniV2 with IDC cable

panel.lcd viki2 # set type of panel
panel.spi_channel 0 # set spi channel to use P0_18,P0_15 MOSI,SCLK
panel.spi_cs_pin 0.16 # set spi chip select
panel.encoder_a_pin 3.26!^ # encoder pin
panel.encoder_b_pin 3.25!^ # encoder pin
panel.click_button_pin 2.11!^ # click button
panel.a0_pin 2.6 # st7565 needs an a0
panel.contrast 0 # override contrast setting (default is 9)
panel.encoder_resolution 2 # override number of clicks to move 1 item (default is 4)
#panel.button_pause_pin 1.30^ # kill/pause set one of these for the auxilliary button on viki2
#panel.back_button_pin 1.22!^ # back button recommended to use this on EXP1
panel.buzz_pin 1.31 # pin for buzzer on EXP2
panel.red_led_pin 1.19 # pin for red led on viki2 on EXP1
panel.blue_led_pin 1.20 # pin for blue led on viki2 on EXP1
panel.external_sd true # set to true if there is an extrernal sdcard on the panel
panel.external_sd.spi_channel 0 # set spi channel the sdcard is on
panel.external_sd.spi_cs_pin 1.21 # set spi chip select for the sdcard
panel.external_sd.sdcd_pin 1.18!^ # sd detect signal (set to nc if no sdcard detect) 1.18
panel.menu_offset 1 # some panels will need 1 here

Example miniviki2 config

#panel.lcd mini_viki2 # set type of panel
#panel.spi_channel 0 # set spi channel to use P0_18,P0_15 MOSI,SCLK
#panel.spi_cs_pin 0.16 # set spi chip select
#panel.encoder_a_pin 3.25!^ # encoder pin
#panel.encoder_b_pin 3.26!^ # encoder pin
#panel.click_button_pin 2.11!^ # click button
#panel.a0_pin 2.6 # st7565 needs an a0
##panel.contrast 18 # override contrast setting (default is 18)
##panel.encoder_resolution 2 # override number of clicks to move 1 item (default is 2)
#panel.menu_offset 1 # here controls how sensitive the menu is. some panels will need 1

panel.alpha_jog_feedrate 6000 # x jogging feedrate in mm/min
panel.beta_jog_feedrate 6000 # y jogging feedrate in mm/min
panel.gamma_jog_feedrate 200 # z jogging feedrate in mm/min

panel.hotend_temperature 185 # temp to set hotend when preheat is selected
panel.T1_temperature 185 # temp to set hotend when preheat is selected
panel.bed_temperature 60 # temp to set bed when preheat is selected

network settings

network.enable true # enable the ethernet network services
network.webserver.enable true # enable the webserver
network.telnet.enable true # enable the telnet server
network.plan9.enable true # enable the plan9 network filesystem
network.ip_address 192.168.42.40 # the IP address
network.ip_mask 255.255.0.0 # the ip mask
network.ip_gateway 192.168.42.1 # the gateway address

Example of a custom menu entry, which will show up in the Custom entry.

NOTE _ gets converted to space in the menu and commands, | is used to separate multiple commands

custom_menu.power_on.enable true #
custom_menu.power_on.name Power_on #
custom_menu.power_on.command M80 #

custom_menu.power_off.enable true #
custom_menu.power_off.name Power_off #
custom_menu.power_off.command M81 #

Azteeg specific settings do not change

currentcontrol_module_enable false #
digipot_max_current 2.4 # max current
digipot_factor 103.0 # factor for converting current to digipot value
#51.0 for SD8825, SD6128, BSD4989

leds_disable true # disable using leds after config loaded

custom_menu.blt_probe_out.enable true
custom_menu.blt_probe_out.name BLT_Probe_Out
custom_menu.blt_probe_out.command M280_S3

#custom_menu.blt_reset_larm.enable true
#custom_menu.blt_reset_larm.name BLT_Reset_larm
#custom_menu.blt_reset_larm.command M280_S10.6

custom_menu.blt_probe_In.enable true
custom_menu.blt_probe_In.name BLT_Probe_In
custom_menu.blt_probe_In.command M280_S7

custom_menu.blt_reset_alarm.enable true
custom_menu.blt_reset_alarm.name BLT_Reset_Alarm
custom_menu.blt_reset_alarm.command M280_S10.6

custom_menu.blt_reset_alarm.enable true
custom_menu.blt_reset_alarm.name BLT_Test_Alarm
custom_menu.blt_reset_alarm.command M280_S8.4|G4_S15|M280_S10.6|M280_S7

#custom_menu.bt_pbandj.enable false
#custom_menu.bt_pbandj.name ProbeyDaBed
#custom_menu.bt_pbandj.command G0_X0

Imported from wikidot

Documentation on config Line Length:
Make sure all your lines are shorter than 132 characters. Lines longer than this can cause issues.
Don’t know if this is the solution, but it is something I noticed in both the blocks you posted…

Thanks for the suggestion, but I don’t think that’s it.
The lines that trip it up when un-commented are the shorter ones for P,I, and D.

#temperature_control.hotend.p_factor          39.8             #
#temperature_control.hotend.i_factor          2.908            #
#temperature_control.hotend.d_factor          136               #

Same for the lines for custom menu options. I tried copying ones that worked, and just shortening the name, and it still stops the board from booting.

Those values are commented out. Smoothie ignores commented values.