Welcome! Log In Create A New Profile

Advanced

Azteeg x5 mini wrong stepper direction

Posted by BPopilek 
Azteeg x5 mini wrong stepper direction
October 07, 2015 11:58PM
Hello all! I am building a custom 3D printer that I ordered as a kit from the creator. I have run into a problem though that I am hoping someone can help with.

This printer uses the Azteeg x5 Mini controller board. I have everything hooked up and working, but the Z-Axis is moving in the wrong direction. If I switch the connector on the board, it works correctly. However, doing it this way means that none of the color coded wires now match up. I have attached my config below and I just need to know what I need to change in the file to correct the stepper motor direction so that the connector plugs in the right way. Thanks in advance!

arm_solution corexy

#leveling-strategy.three-point-leveling.probe_offsets 0,0,0 # the probe offsets from nozzle, must be x,y,z, default is no offset# Robot module configurations : general handling of movement G-codes and slicing into moves
default_feed_rate 12000 # Default rate ( mm/minute ) for G1/G2/G3 moves
default_seek_rate 12000 # Default rate ( mm/minute ) for G0 moves
mm_per_arc_segment 0.3 # 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 161.6 # Steps per mm for alpha stepper
beta_steps_per_mm 161.6 # Steps per mm for beta stepper
gamma_steps_per_mm 400 # 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 3000 # 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.03 # Similar to the old "max_jerk", in millimeters, see : [github.com]
# and [github.com] . 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 0.10 # Pin for alpha enable pin
alpha_current 1.6 # X stepper motor current
x_axis_max_speed 24000 # mm/min
alpha_max_rate 24000.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 0.19 # Pin for beta enable
beta_current 1.6 # Y stepper motor current
y_axis_max_speed 24000 # mm/min
beta_max_rate 24000.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 0.21 # Pin for gamma enable
gamma_current 1.6 # Z stepper motor current
z_axis_max_speed 6000 # mm/min
gamma_max_rate 6000.0 # mm/min actuator max speed

# Serial communications configuration ( baud rate default to 9600 if undefined )
uart0.baud_rate 250000 # 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_module_enable true # Whether to activate the extruder module at all. All configuration is ignored if false
extruder_steps_per_mm 134 # Steps per mm for extruder stepper
extruder_default_feed_rate 1200 # Default rate ( mm/minute ) for moves where only the extruder moves
extruder_acceleration 500 # Acceleration in mm/sec^2, only used for retracts
extruder_max_speed 1200 # mm/sec NOTE only used for retracts

extruder_step_pin 2.0 # Pin for extruder step signal
extruder_dir_pin 0.5 # Pin for extruder dir signal
extruder_en_pin 0.4 # Pin for extruder enable signal
delta_current 1.1 # Extruder stepper motor current

# 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

# 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.5 # Pin that controls the heater
temperature_control.hotend.thermistor EPCOS100K # see [smoothieware.org]
#temperature_control.hotend.beta 3950 # thermistor beta value
#temperature_control.module_name.r0 100000 # thermistor resistance

temperature_control.hotend.set_m_code 104 #
temperature_control.hotend.set_and_wait_m_code 109 #
temperature_control.hotend.designator T #

temperature_control.hotend.p_factor 28.5 #25.7 legacy
temperature_control.hotend.i_factor 2.279 #
temperature_control.hotend.d_factor 89.00 #59.32 legacy

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 [smoothieware.org]
#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.bang_bang true #

# 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 2.4 #

switch.misc.enable false #
switch.misc.input_on_command M42 #
switch.misc.input_off_command M43 #
switch.misc.output_pin 2.4 #

# 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


# 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.24^ #
alpha_homing_direction home_to_min # or set to home_to_max and set alpha_max
alpha_min 0 # this gets loaded after homing when home_to_min is set
alpha_max 200 # this gets loaded after homing when home_to_max is set
#beta_min_endstop 1.26^ #
beta_max_endstop 1.26^! #
beta_homing_direction home_to_max #
beta_min 0 #
beta_max 195 #
gamma_min_endstop 1.28^! #
#gamma_max_endstop 1.28^ #
gamma_homing_direction home_to_min #
gamma_min 0 #
gamma_max 210 #

# 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 60 # feedrates in mm/second
beta_fast_homing_rate_mm_s 60 # "
gamma_fast_homing_rate_mm_s 30 # "
alpha_slow_homing_rate_mm_s 15 # "
beta_slow_homing_rate_mm_s 15 # "
gamma_slow_homing_rate_mm_s 1.5 # "

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

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

# optional Z probe
zprobe.enable false # 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 5 # how much above bed to start probe

# associated with zprobe the leveling strategy to use
#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


# Pause button
pause_button_enable true #

# Panel See [smoothieware.org]
panel.enable false # 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.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 8 # override contrast setting (default is 9)
#panel.encoder_resolution 4 # override number of clicks to move 1 item (default is 4)
#panel.button_pause_pin 1.22^ # 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 0.25 # pin for buzzer on EXP2
panel.red_led_pin 2.8 # pin for red led on viki2 on EXP1
panel.blue_led_pin 4.29 # 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.23 # set spi chip select for the sdcard
panel.external_sd.sdcd_pin 1.31!^ # sd detect signal (set to nc if no sdcard detect)
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.bed_temperature 60 # temp to set bed when preheat is selected

# 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 true #
digipot_max_current 1.7 # max current
digipot_factor 106.0 # factor for converting current to digipot value

return_error_on_unhandled_gcode false #

Edited 1 time(s). Last edit at 10/07/2015 11:59PM by BPopilek.
Re: Azteeg x5 mini wrong stepper direction
October 08, 2015 04:28AM
See smoothieware manuals here

So for you change
gamma_dir_pin 0.22 # Pin for gamma stepper direction
to
gamma_dir_pin 0.22! # Pin for gamma stepper direction

And get some help for your OCD over a few colors tongue sticking out smiley
Re: Azteeg x5 mini wrong stepper direction
October 09, 2015 09:53AM
I have read the manual, and when I change it to gamma_dir_pin 0.22!, nothing happens. Nothing in the sense that when I try to move the Z Axis, it doesn't. I can hear the stepper motor whine a bit, but that is all. In addition, once I try to move the Z axis, the X & Y refuse to move either until I power cycle it. The X & Y will again work, until I try to move Z. It's weird... Any thoughts?
Sorry, only registered users may post in this forum.

Click here to login