Firmware crash when doing automatic calibration(G32) on a kossel
August 27, 2017 05:54AM
Hello everyone !

I'm facing a puzzling problem,

I've been building a kossel XL (Metal part from robotdigg) with 3600mm horizontal extrusions and 7000mm vertical extrusions with linear rails. On top of that are 0.9° stepper motors and a E3DV6 hotend.

Anyway i'm very pleased with the "hardware" aspect of it.

As I want my printer to be top notch, you would guess that i bought a smoothie 5XC spinning smiley sticking its tongue out.

I'm having a problem when doing the automated calibration, when i launch the G32 command (via the web interface on ethernet), the probing starts, sometimes making two or three point, and then the printer stops not responding anymore. When I removed the bed, I found out that only the left and right led are switch on, the two green center ones are shut down. The troubleshooting section of the smoothie doc says it's a firmware crash.

At first i try to flash the firmware (using latest), and then i moved to a different SD card (32Gb, class 10). But none of this seems to solve my problem.
(by the way the smoothie doc is wonderful !!!!)

I hope someone have a solution, it's very frustrating to have a completely built printer but not being able to use it !

Clément

here are my config files and overrides

# Smoothieboard configuration file, see [smoothieware.org]
# NOTE Lines must not exceed 132 characters, and '#' characters mean what follows is ignored
## Robot module configurations : general handling of movement G-codes and slicing into moves

# Basic motion configuration
default_feed_rate                            4000             # Default speed (mm/minute) for G1/G2/G3 moves
default_seek_rate                            4000             # Default speed (mm/minute) for G0 moves
mm_per_arc_segment                           0.0              # Fixed length for line segments that divide arcs, 0 to disable
#mm_per_line_segment                         5                # Cut lines into segments this size
mm_max_arc_error                             0.01             # The maximum error for line segments that divide arcs 0 to disable
                                                              # note it is invalid for both the above be 0
                                                              # if both are used, will use largest segment length based on radius
delta_segments_per_second                    100              # For deltas only, number of segments per second, set to 0 to disable
                                                              # and use mm_per_line_segment

# Arm solution configuration : Cartesian robot. Translates mm positions into stepper positions
# See [smoothieware.org]
alpha_steps_per_mm                           400              # Steps per mm for alpha ( X ) stepper and tower
beta_steps_per_mm                            400              # Steps per mm for beta ( Y ) stepper and tower
gamma_steps_per_mm                           400              # Steps per mm for gamma ( Z ) stepper and tower

# Delta configuration
# See [smoothieware.org]
arm_solution                                 linear_delta     # Selects the linear delta arm solution
arm_length                                   320.0           # This is the length of an arm from hinge to hinge
arm_radius                                   160.0           # This is the horizontal distance from hinge to hinge when the effector is centered

# Planner module configuration : Look-ahead and acceleration configuration
# See [smoothieware.org]
acceleration                                 3000             # Acceleration in mm/second/second.
#z_acceleration                              500              # Acceleration for Z only moves in mm/s^2, 0 uses acceleration which is the default. DO NOT SET ON A DELTA
junction_deviation                           0.05             # See [smoothieware.org]
#z_junction_deviation                        0.0              # For Z only moves, -1 uses junction_deviation, zero disables junction_deviation on z moves DO NOT SET ON A DELTA

# Cartesian axis speed limits
x_axis_max_speed                             24000            # Maximum speed in mm/min
y_axis_max_speed                             24000            # Maximum speed in mm/min
z_axis_max_speed                             24000            # Maximum speed in mm/min

# Stepper module configuration 
# Pins are defined as  ports, and pin numbers, appending "!" to the number will invert a pin
# See [smoothieware.org] and [smoothieware.org]
alpha_step_pin                               2.0              # Pin for alpha stepper step signal
alpha_dir_pin                                0.5              # Pin for alpha stepper direction, add '!' to reverse direction
alpha_en_pin                                 0.4              # Pin for alpha enable pin
alpha_current                                1.68              # X stepper motor current
alpha_max_rate                               24000.0          # Maximum rate in mm/min

beta_step_pin                                2.1              # Pin for beta stepper step signal
beta_dir_pin                                 0.11             # Pin for beta stepper direction, add '!' to reverse direction
beta_en_pin                                  0.10             # Pin for beta enable
beta_current                                 1.68             # Y stepper motor current
beta_max_rate                                24000.0          # Maxmimum rate in mm/min

gamma_step_pin                               2.2              # Pin for gamma stepper step signal
gamma_dir_pin                                0.20             # Pin for gamma stepper direction, add '!' to reverse direction
gamma_en_pin                                 0.19             # Pin for gamma enable
gamma_current                                1.68              # Z stepper motor current
gamma_max_rate                               24000.0          # Maximum rate in mm/min

## Extruder module configuration
# See [smoothieware.org]
extruder.hotend.enable                          true          # Whether to activate the extruder module at all. All configuration is ignored if false
extruder.hotend.steps_per_mm                    1000           # 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            # Maximum speed in mm/s

extruder.hotend.step_pin                        2.3           # Pin for extruder step signal
extruder.hotend.dir_pin                         0.22!          # Pin for extruder dir signal ( add '!' to reverse direction )
extruder.hotend.en_pin                          0.21          # 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            # Z-lift on retract in mm, 0 disables
#extruder.hotend.retract_zlift_feedrate          6000         # Z-lift feedrate in mm/min (Note mm/min NOT mm/sec)

delta_current                                    1.2          # First extruder stepper motor current

# Second extruder module configuration
#extruder.hotend2.enable                         false         # Whether to activate the extruder module at all. All configuration is ignored if false
#extruder.hotend2.steps_per_mm                   140          # 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 ( add '!' to reverse direction )
#extruder.hotend2.en_pin                         4.29         # Pin for extruder enable signal

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

#epsilon_current                                 1.2          # Second extruder stepper motor current

## Laser module configuration
# See [smoothieware.org]
laser_module_enable                           false           # Whether to activate the laser module at all
laser_module_pwm_pin                          2.5             # This pin will be PWMed to control the laser. 
                                                              # Only pins 2.0, 2.1, 2.2, 2.3, 2.4, 2.5, 1.18, 1.20, 1.21, 1.23, 1.24, 1.26, 3.25 and 3.26
                                                              # can be used since laser requires hardware PWM, see [smoothieware.org]
#laser_module_ttl_pin 	                      1.30            # This pin turns on when the laser turns on, and off when the laser turns off.
#laser_module_maximum_power                   1.0             # This is the maximum duty cycle that will be applied to the laser
#laser_module_minimum_power                   0.0             # This is a value just below the minimum duty cycle that keeps the laser
                                                              # active without actually burning.
#laser_module_default_power                   0.8             # This is the default laser power that will be used for cuts if a power has not been specified.  The value is a scale between
                                                              # the maximum and minimum power levels specified above
#laser_module_pwm_period                      20              # This sets the pwm frequency as the period in microseconds

## Temperature control configuration
# See [smoothieware.org]

# First hotend configuration
temperature_control.hotend.enable            true             # Whether to activate this ( "hotend" ) module at all.
temperature_control.hotend.thermistor_pin    0.23             # Pin for the thermistor to read
temperature_control.hotend.heater_pin        2.4              # Pin that controls the heater, set to nc if a readonly thermistor is being defined
temperature_control.hotend.thermistor        EPCOS100K        # See [smoothieware.org]
#temperature_control.hotend.beta             4066             # Or set the beta value
temperature_control.hotend.set_m_code        104              # M-code to set the temperature for this module
temperature_control.hotend.set_and_wait_m_code 109            # M-code to set-and-wait for this module
temperature_control.hotend.designator        T                # Designator letter for this module
#temperature_control.hotend.max_temp         300              # Set maximum temperature - Will prevent heating above 300 by default
#temperature_control.hotend.min_temp         0                # Set minimum temperature - Will prevent heating below if set

# Safety control is enabled by default and can be overidden here, the values show the defaults
# See [smoothieware.org]
#temperature_control.hotend.runaway_heating_timeout      900  # How long it can take to heat up, max is 2040 seconds.
#temperature_control.hotend.runaway_cooling_timeout        0  # How long it can take to cool down if temp is set lower, max is 2040 seconds
#temperature_control.hotend.runaway_range                20   # How far from the set temperature it can wander, max setting is 63°C

# PID configuration 
# See [smoothieware.org]
#temperature_control.hotend.p_factor         13.7             # P ( proportional ) factor
#temperature_control.hotend.i_factor         0.097            # I ( integral ) factor
#temperature_control.hotend.d_factor         24               # D ( derivative ) factor

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

# Second hotend configuration
#temperature_control.hotend2.enable            true           # Whether to activate this ( "hotend" ) module at all.
#temperature_control.hotend2.thermistor_pin    0.25           # Pin for the thermistor to read
#temperature_control.hotend2.heater_pin        1.23           # Pin that controls the heater
#temperature_control.hotend2.thermistor        EPCOS100K      # See [smoothieware.org]
##temperature_control.hotend2.beta             4066           # or set the beta value
#temperature_control.hotend2.set_m_code        104            # M-code to set the temperature for this module
#temperature_control.hotend2.set_and_wait_m_code 109          # M-code to set-and-wait for this module
#temperature_control.hotend2.designator        T1             # Designator letter for this module

#temperature_control.hotend2.p_factor          13.7           # P ( proportional ) factor
#temperature_control.hotend2.i_factor          0.097          # I ( integral ) factor
#temperature_control.hotend2.d_factor          24             # D ( derivative ) factor

#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             # Whether to activate this ( "hotend" ) module at all.
temperature_control.bed.thermistor_pin       0.24             # Pin for the thermistor to read
temperature_control.bed.heater_pin           2.7              # Pin that controls the heater
temperature_control.bed.thermistor           Honeywell100K    # See [smoothieware.org]
#temperature_control.bed.beta                3974             # Or set the beta value
temperature_control.bed.set_m_code           140              # M-code to set the temperature for this module
temperature_control.bed.set_and_wait_m_code  190              # M-code to set-and-wait for this module
temperature_control.bed.designator           B                # Designator letter for this module

# Bang-bang ( simplified ) control
# See [smoothieware.org]
#temperature_control.bed.bang_bang           false            # Set to true to use bang bang control rather than PID
#temperature_control.bed.hysteresis          2.0              # Set to the temperature in degrees C to use as hysteresis

## Switch modules
# See [smoothieware.org]

# Switch module for fan control
switch.fan.enable                            true             # Enable this module
switch.fan.input_on_command                  M106             # Command that will turn this switch on
switch.fan.input_off_command                 M107             # Command that will turn this switch off
switch.fan.output_pin                        1.22              # Pin this module controls
switch.fan.output_type                       pwm              # PWM output settable with S parameter in the input_on_comand
switch.fan.max_pwm                          255              # Set max pwm for the pin default is 255

switch.misc.enable                          true             # Enable this module
switch.misc.input_on_command                M42              # Command that will turn this switch on
switch.misc.input_off_command               M43              # Command that will turn this switch off
switch.misc.output_pin                      2.6              # Pin this module controls
switch.misc.output_type                     digital          # Digital means this is just an on or off pin

## Temperatureswitch
# See [smoothieware.org]
# 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      30.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



## Endstops
# See [smoothieware.org]
endstops_enable                              true             # The endstop module is enabled by default and can be disabled here
delta_homing                                 true             # Forces all three axis to home a the same time regardless of what is specified in G28
alpha_min_endstop                            nc               # Pin to read min endstop, add a ! to invert if endstop is NO connected to ground
alpha_max_endstop                            1.25!^            # Pin to read max endstop, uncomment this and comment the above if using max endstops
alpha_homing_direction                       home_to_max      # Or set to home_to_max and set alpha_max and uncomment the alpha_max_endstop
alpha_max                                    0                # This gets loaded as the current position after homing when home_to_max is set
beta_min_endstop                             nc               # Pin to read min endstop, add a ! to invert if endstop is NO connected to ground
beta_max_endstop                             1.27!^            # Pin to read max endstop, uncomment this and comment the above if using max endstops
beta_homing_direction                        home_to_max      # Or set to home_to_max and set alpha_max and uncomment the alpha_max_endstop
beta_max                                     0                # This gets loaded as the current position after homing when home_to_max is set
gamma_min_endstop                            nc               # Pin to read min endstop, add a ! to invert if endstop is NO connected to ground
gamma_max_endstop                            1.29!^            # Pin to read max endstop, uncomment this and comment the above if using max endstops
gamma_homing_direction                       home_to_max      # Or set to home_to_max and set alpha_max and uncomment the alpha_max_endstop
gamma_max                                    300              # This gets loaded as the current position after homing when home_to_max is set

alpha_max_travel                             600             # Max travel in mm for alpha/X axis when homing
beta_max_travel                              600             # Max travel in mm for beta/Y axis when homing
gamma_max_travel                             600             # Max travel in mm for gamma/Z axis when homing

# Endstops home at their fast feedrate first, then once the endstop is found they home again at their slow feedrate for accuracy
alpha_fast_homing_rate_mm_s                  50              # Alpha tower fast homing feedrate in mm/second
alpha_slow_homing_rate_mm_s                  25               # Alpha tower slow homing feedrate in mm/second
beta_fast_homing_rate_mm_s                   50              # Beta  tower fast homing feedrate in mm/second
beta_slow_homing_rate_mm_s                   25               # Beta  tower slow homing feedrate in mm/second
gamma_fast_homing_rate_mm_s                  50              # Gamma tower fast homing feedrate in mm/second
gamma_slow_homing_rate_mm_s                  25               # Gamma tower slow homing feedrate in mm/second

alpha_homing_retract_mm                      5                # Distance to retract from the endstop after it is hit for alpha/X
beta_homing_retract_mm                       5                # Distance to retract from the endstop after it is hit for beta/Y
gamma_homing_retract_mm                      5                # Distance to retract from the endstop after it is hit for gamma/Z


# Endstop debouncing options
#endstop_debounce_count                       100              # Uncomment if you get noise on your endstops, default is 100
#endstop_debounce_ms                          1                # Uncomment if you get noise on your endstops, default is 1 millisecond debounce

# Endstop trim options
alpha_trim                                    0                # Software trim for alpha stepper endstop (in mm)
beta_trim                                     0                # Software trim for beta stepper endstop (in mm)
gamma_trim                                    0                # Software trim for gamma stepper endstop (in mm)

# End of endstop config
# Delete the above endstop section and uncomment next line and copy and edit Snippets/abc-endstop.config file to enable endstops for ABC axis
#include abc-endstop.config

## Z-probe
# See [smoothieware.org]
zprobe.enable                                true           # Set to true to enable a zprobe
zprobe.probe_pin                             1.28!^          # 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                          100             # How much above bed to start probe
zprobe.max_z                 		     200             # maximum default travel for the probe command, will use gamma_max if not defined
#gamma_min_endstop                           nc              # Normally 1.28. Change to nc to prevent conflict,

# Levelling strategy

# Example for the delta calibration strategy
#leveling-strategy.delta-calibration.enable   true            # Enable basic delta calibration
#leveling-strategy.delta-calibration.radius   100             # the probe radius

# Example for the delta grid leveling strategy
#leveling-strategy.delta-grid.enable          true            # Enable grid leveling
#leveling-strategy.delta-grid.radius          50              # Grid radius in millimeters
#leveling-strategy.delta-grid.size            7               # Grid size, must be an odd number
#leveling-strategy.delta-grid.do_home         true            # Whether to home before calibration
#leveling-strategy.delta-grid.save            true            # Whether to automatically save the grid
#leveling-strategy.delta-grid.initial_height  100              # Height at which to start probling

## Panel
# See [smoothieware.org]
# Please find your panel on the wiki and copy/paste the right configuration here
panel.enable                                 false             # Set to true to enable the panel code

# Example for reprap discount GLCD
# on glcd EXP1 is to left and EXP2 is to right, pin 1 is bottom left, pin 2 is top left etc.
# +5v is EXP1 pin 10, Gnd is EXP1 pin 9
#panel.lcd                                   reprap_discount_glcd     #
#panel.spi_channel                           0                 # SPI channel to use  ; GLCD EXP1 Pins 3,5 (MOSI, SCLK)
#panel.spi_cs_pin                            0.16              # SPI chip select     ; GLCD EXP1 Pin 4
#panel.encoder_a_pin                         3.25!^            # Encoder pin         ; GLCD EXP2 Pin 3
#panel.encoder_b_pin                         3.26!^            # Encoder pin         ; GLCD EXP2 Pin 5
#panel.click_button_pin                      1.30!^            # Click button        ; GLCD EXP1 Pin 2
#panel.buzz_pin                              1.31              # Pin for buzzer      ; GLCD EXP1 Pin 1
#panel.back_button_pin                       2.11!^            # Back button         ; GLCD EXP2 Pin 8

panel.menu_offset                            0                 # Some panels will need 1 here

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.bed_temperature                        60                # Temp to set bed when preheat is selected

## Custom menus : 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               #


## Network settings
# See [smoothieware.org]
network.enable                               true            # Enable the ethernet network services
network.webserver.enable                     true             # Enable the webserver
network.telnet.enable                        true             # Enable the telnet server
network.ip_address                           auto             # Use dhcp to get ip address
# Uncomment the 3 below to manually setup ip address
#network.ip_address                           192.168.3.222   # The IP address
#network.ip_mask                              255.255.255.0   # The ip mask
#network.ip_gateway                           192.168.3.1     # The gateway address
#network.mac_override                         xx.xx.xx.xx.xx.xx  # Override the mac address, only do this if you have a conflict

## System configuration
# Serial communications configuration ( baud rate defaults to 9600 if undefined )
# For communication over the UART port, *not* the USB/Serial port
uart0.baud_rate                              115200           # Baud rate for the default hardware ( UART ) serial port

second_usb_serial_enable                     false            # This enables a second USB serial port
#leds_disable                                true             # Disable using leds after config loaded
#play_led_disable                            true             # Disable the play led

# Kill button maybe assigned to a different pin, set to the onboard pin by default
# See [smoothieware.org]
kill_button_enable                           true             # Set to true to enable a kill button
kill_button_pin                              2.12             # Kill button pin. default is same as pause button 2.12 (2.11 is another good choice)

#msd_disable                                 false            # Disable the MSD (USB SDCARD), see [smoothieware.org]
#dfu_enable                                  false            # For linux developers, set to true to enable DFU

# Only needed on a smoothieboard
# See [smoothieware.org]
currentcontrol_module_enable                 true             # Control stepper motor current via the configuration file

; DO NOT EDIT THIS FILE
;Steps per unit:
M92 X400.00000 Y400.00000 Z400.00000 
;Acceleration mm/sec^2:
M204 S3000.00000 
;X- Junction Deviation, Z- Z junction deviation, S - Minimum Planner speed mm/sec:
M205 X0.05000 Z-1.00000 S0.00000
;Max cartesian feedrates in mm/sec:
M203 X400.00000 Y400.00000 Z400.00000
;Max actuator feedrates in mm/sec:
M203.1 X250.00000 Y250.00000 Z250.00000 
;Optional arm solution specific settings:
M665 L320.0000 R160.0000
;WCS settings
G54
;Digipot Motor currents:
M907 X1.68000 Y1.68000 Z1.68000 A1.20000 
;Home offset (mm):
M206 X0.00 Y0.00 Z10.50 
;Trim (mm):
M666 X0.000 Y0.000 Z0.000
;Max Z
M665 Z305.500
;E Steps per mm:
M92 E1000.0000 P57988
;E Filament diameter:
M200 D0.0000 P57988
;E retract length, feedrate:
M207 S3.0000 F2700.0000 Z0.0000 Q6000.0000 P57988
;E retract recover length, feedrate:
M208 S0.0000 F480.0000 P57988
;E acceleration mm/sec²:
M204 E500.0000 P57988
;E max feed rate mm/sec:
M203 E50.0000 P57988
;PID settings:
M301 S0 P10.0000 I0.3000 D200.0000 X255.0000 Y255
;Max temperature setting:
M143 S0 P300.0000
;PID settings:
M301 S1 P10.0000 I0.3000 D200.0000 X255.0000 Y255
;Max temperature setting:
M143 S1 P300.0000
;Probe feedrates Slow/fast(K)/Return (mm/sec) max_z (mm) height (mm):
M670 S5.00 K100.00 R0.00 Z250.00 H50.00


Attachments:
open | download - config (26.7 KB)
open | download - config-override (1.3 KB)
Sorry, only registered users may post in this forum.

Click here to login