Should I be able to turn the spindle on/off and adjust speed using Gcode-smoothieware-X5GT? On the X5GT it says VFD 1-10v for pin 2.5. I’m unsure about the best way to identify 2.5 as as the spindle output.
Once the signal leaves the X5GT I believe I need to convert the signal for my PWM inputs on the spindle drive board. To do this I purchased a voltage to PWM converter board thinking this will solve the problem once I figure out the right way to have the VFD output from the X5GT work properly. I expect to be able to measure the voltage output from 2.5 and watch it change as spindle on/off and commanded RPM changes. Does this sound correct?
# Working motors, display, and homing.
# Drivers not getting hot (this is good)-raised to 1.0 need forced air cooling
# Stepping is off-Might have fixed going from 213 to 106
# Robot module configurations : general handling of movement G-codes and slicing into moves
default_feed_rate 3500 # Default rate ( mm/minute ) for G1/G2/G3 moves
default_seek_rate 3500 # Default rate ( mm/minute ) for G0 moves
mm_per_arc_segment 0.4 # Arcs are cut into segments ( lines ), this is the length for these segments. Smaller values mean more resolution, higher values mean faster computation
#grbl_mode false # was hashed out
#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 106.5 # Steps per mm for alpha stepper (32 microsteps = 213.33 for now) Changed to 106.5
beta_steps_per_mm 106.5 # Steps per mm for beta stepper. Based on Correct SPU value = ( Current SPU value * Entered distance value ) / Measured distance value
gamma_steps_per_mm 106.5 # Steps per mm for gamma stepper
# Planner module configuration : Look-ahead and acceleration configuration
# trying to slow/smooth movement
planner_queue_size 32 # DO NOT CHANGE THIS UNLESS YOU KNOW EXACTLY WHAT YOUR ARE DOING
acceleration 300 # Acceleration in mm/second/second.was 400
#z_acceleration 300 # Acceleration for Z only moves in mm/s^2, 0 disables it, disabled by default. DO NOT SET ON A DELTA
junction_deviation 0.02 # Similar to the old "max_jerk", in millimeters, see : https://github.com/grbl/grbl/blob/master/planner.c#L409
#was 0.03
# and https://github.com/grbl/grbl/wiki/Configuring-Grbl-v0.8 . 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 was 1
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 0.10
alpha_current 1.0 # X stepper motor vref (Vref x 2 = Max Current)
x_axis_max_speed 5000 # mm/min
alpha_max_rate 5000.0 # mm/min actuator max speed
beta_step_pin 2.0 #Step mapped to Delta step pin for mirrored Y (2.2 Pin for beta stepper step signal)
beta_dir_pin 0.5! #Step mapped to Delta dir pin for mirrored Y (0.2 Pin for beta stepper dir signal)
beta_en_pin 0.4 #Step mapped to Delta enable pin for mirrored Y (0.19 Pin for beta stepper enable signal) 0.4
beta_current 1.0 # Y stepper motor current
y_axis_max_speed 5000 # mm/min
beta_max_rate 5000.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 0.21
gamma_current 1.0 # Z stepper motor current
z_axis_max_speed 750 # mm/min
gamma_max_rate 750.0 # mm/min actuator max speed
delta_current 1.0 # Y1 Mirrored Vref (jumpers installed to mirror E1 and E2 into Dual Y Motors)
epsilon_current 1.0 # Y2 Mirrored Vref
# 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 1500 # max current in milliamps
motor_driver_control.alpha.microsteps 32 # microsteps 256 max
motor_driver_control.alpha.alarm true # 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 0.10
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 (Y1) 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 1500 # max current in milliamps
motor_driver_control.beta.microsteps 32 # microsteps 256 max
motor_driver_control.beta.alarm true # 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.4 # 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 1000 # current in milliamps
motor_driver_control.gamma.max_current 1500 # max current in milliamps
motor_driver_control.gamma.microsteps 32 # microsteps 256 max
motor_driver_control.gamma.alarm true # 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 true # 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
#leds_disable true # disable using leds after config loaded
#dfu_enable false # for linux developers, set to true to enable DFU
#watchdog_timeout 10 # watchdog timeout in seconds, default is 10, set to 0 to disable the watchdog
#Extruder module configuration
#extruder.hotend.enable false # Whether to activate the extruder module at all. All configuration is ignored if false
#extruder.hotend.steps_per_mm 140 # Steps per mm for extruder stepper # was not hashed out
#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 0.4 # Pin for extruder enable signal
#spindle.enable true # set this to false to disable the spindle module
#spindle.type pwm # sets the spindle module to PWM mode
#spindle.pwm_pin 2.5 # Big Mosfet Q7. Pin must be hardware PWM capable.
#spindle.pwm_period 1000 # default 1000, sets the PWM frequency
#spindle.feedback_pin 2.7 # Pin must be interrupt capable.
#spindle.pulses_per_rev 1.0 # default 1. Defines the number of pulses occur for each rotation
#spindle.default_rpm 5000 # default 5000. Defines a default RPM value in case no RPM value is provided.
#spindle.control_P 0.1 # default 0.0001. P value for the PID controller
#spindle.control_I 0.1 # default 0.0001. I value for the PID controller
#spindle.control_D 0.1 # default 0.0001. D value for the PID controller
#spindle.control_smoothing 0.1 # default 0.1. This value is low pass filter time constant in seconds.
#Laser module configuration
#Laser_module_enable True # Whether to activate the Laser module at all. All configuration is(tried switching laser to spindle messed up)
# ignored if false.
#Laser_module_pin 2.5 # this pin will be PWMed to control the Laser. Only P2.0 - P2.5, P1.18, P1.20, P1.21, P1.23, P1.24, P1.26, P3.25, P3.26
# can be used since Laser requires hardware PWM
#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 turning.
#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
# Hotend temperature control configuration
#temperature_control.hotend.enable false # 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 http://smoothieware.org/temperaturecontrol#toc5
#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 # Set maximum temperature - Will prevent heating above 300 by default
#temperature_control.hotend.min_temp 0 # Set minimum temperature - Will prevent heating below 0 by default
#temperature_control.hotend.p_factor 13.7 #
#temperature_control.hotend.i_factor 0.097 #
#temperature_control.hotend.d_factor 24 #
#temperature_control.bed.enable false #
#temperature_control.bed.thermistor_pin 0.23 #
#temperature_control.bed.heater_pin 2.7 #
#temperature_control.bed.thermistor EPCOS100K # see http://smoothieware.org/temperaturecontrol#toc5
#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 #
# Switch module for fan control
switch.fan.enable false #
switch.fan.input_on_command M106 #
switch.fan.input_off_command M107 #
switch.fan.output_pin 1.25 #
switch.misc.enable false #
switch.misc.input_on_command M42 #
switch.misc.input_off_command M43 #
switch.misc.output_pin 0.26 #
# 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 false # set to true if homing on a hbot or corexy
#alpha_min_endstop 1.24^ # X add a ! to invert if endstop is NO connected to ground
alpha_max_endstop 1.24^! # X
alpha_homing_direction home_to_max # X or set to home_to_max and set alpha_max
#alpha_min 0 # X this gets loaded after homing when home_to_min is set
alpha_max 792 # X this gets loaded after homing when home_to_max is set
#beta_min_endstop 1.26^ # Y
beta_max_endstop 1.26^! # Y
beta_homing_direction home_to_max # Y
#beta_min 0 # Y
beta_max 720 # Y
#gamma_min_endstop 1.28^ # Z
gamma_max_endstop 1.25^! # Z
gamma_homing_direction home_to_max # Z
#gamma_min 0 # Z
gamma_max 80 # Z
endstop_debounce_ms 2 # Debounce each homing endstop for this number of miliseconds. Set to 1 if your endstops are too noisy and give false readings. Used for homing only
endstop_debounce_count 25 # Debounce each limit switch (not homing endstops) over this number of values. Set to 100 if your endstops are too noisy and give false readings. Used for limit switches only
alpha_max_travel 792 # max travel in mm for alpha/X axis when homing
beta_max_travel 720 # max travel in mm for beta/Y axis when homing
gamma_max_travel 80 # max travel in mm for gamma/Z axis when homing
# optional enable limit switches, actions will stop if any enabled limit switch is triggered
#alpha_limit_enable true # set to true to enable X min and max limit switches
#beta_limit_enable true # set to true to enable Y min and max limit switches
#gamma_limit_enable true # set to true to enable Z min and max limit switches
#move_to_origin_after_home false # move XY to 0,0 after homing
#probe endstop
#probe_pin 1.29 # optional pin for probe
homing_order XYZ # Order in which axis perform homing
alpha_fast_homing_rate_mm_s 45 # feedrates in mm/second
beta_fast_homing_rate_mm_s 45 # "
gamma_fast_homing_rate_mm_s 20 # "
alpha_slow_homing_rate_mm_s 22 # "
beta_slow_homing_rate_mm_s 22 # "
gamma_slow_homing_rate_mm_s 10 # "
alpha_homing_retract_mm 3 # distance in mm
beta_homing_retract_mm 3 # "
gamma_homing_retract_mm 3 # "
# 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
# 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 2.12 # kill button pin. default is same as pause button 2.12 (2.11 is another good choice)
# Panel See http://smoothieware.org/panel
panel.enable true # set to true to enable the panel code
# Example viki2 config for Re-ARM 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 1.30 # 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.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
panel.alpha_jog_feedrate 800 # x jogging feedrate in mm/min
panel.beta_jog_feedrate 800 # 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 #
# network settings
network.enable false # 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 auto # the IP address
#network.ip_mask 255.255.255.0 # the ip mask
#network.ip_gateway 192.168.3.1 # the gateway address
# Azteeg specific settings do not change
currentcontrol_module_enable true # was false prior to eric's config help
digipot_max_current 3.0 # max current was 3.0
digipot_factor 103.0 # factor for converting current to digipot value