TB6600 external drives
I found a thread on here about this but it was left hanging. I’m driving nema23 from the expansion breakout board but haven’t got the movement. Should I use level shifter to get 3.3V to 5V? Does anyone have the wiring? The nema23 is 425oz.in
You will need to use a T parameter in your M569 commands for the external drivers. The TB6600 datasheet gives the minimum step high and step low times as 2.2us, but surprisingly it doesn't give the setup and hold times for the direction signal. I suggest you use either T2.2 or T2.2:2.2:2.2:2.2 (these both do the same).
Most external stepper drivers are happy with the signals provided by the expansion breakout board. However, if your driver really needs the full 5V, you can get that by connecting the + inputs (step, dir and enable) of the driver to +5V instead of to the + outputs on the breakout board. You can pick up +5V from the centre pin of either of the servo connectors on the breakout board.
M569 P1 S1 T2.2
Or M569 P1 S1 T2.2:2.2:2.2:2.2 would be the same?
What is the “:” For?
I’m using this one
Can you help me point out the pin? I’m a noob in electronics
And all drive can share that +5V ( extra bed heater)? I was thinking that signal is from + pins because some ppl jump all GRound together.
@dc42 is this like jumping all + signals together? How does that work since the signal would be sent to all grnd?
Connect all the + wires to the external drivers together, and connect then to +5V which you can get from the centre pin of either of the 3-pin servo connectors. Leave the + output pins on the expansion breakout board not connected.
So all + of the 4 drives ( 5678 ) bundle together to the 5+v? The -(stp,dir,ena) stay where they are? Do i leave all 6 wires connected to the tb6600?
Will a 3.3v to 5v bi directional level shifter help in this situation?
With this Wiring, can I send signals from 1 drive ( on expansion board ) to 4 external drivers ( trying to run 4 Zs at once )
Do I need to enable anything? I still don’t get motion on homing of x y z on this external driver.
I didn't expect changing the wiring between the breakout board and the external drivers to change anything, because external drivers are normally happy with the standard signals provided by the breakout board.
Did you remap the XYZ axes to the external drivers using M584 in config.g?
@dc42 I did
M584 X5 Y6:7 Z8 E3:4
But I remove the T value in M569 because I thought wiring it to 5V should be ok.
I will attemp that change later when I go to the shop. What would happen if I change T from T2 to T5? Does this create inaccuracy ?
I will check the voltage reading as well.
How do I save the settings files to my computer? Is it possible to save different settings to pc and upload what’s needed to be checked ? I kinda want to save variations of set up and not keep changing one
Yes you will need to use M569 P5 T2 and the same with P6, P7 and P8. You can try T5 instead of T2. Using a T value that is higher than needed will reduce the maximum step rate you can achieve, but is otherwise harmless.
@dc42 step rate as in khz ( not quite sure ) or the microstepping limit? I’m using 32x for these external driver.
What is the default pulse time of the board?
@dc42 ; Configuration file for Duet WiFi (firmware version 1.21)
; executed by the firmware on start-up
; generated by RepRapFirmware Configuration Tool on Mon Oct 15 2018 11:27:10 GMT-0500 (Central Daylight Time)
; General preferences
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder moves
M550 PNamDuetTest ; Set machine name
M551 PTest123 ; Set password
M552 S1 ; Enable network
M587 S"Print Print" P"Nam123123" I192.168.2.100 ; Configure access point. You can delete this line once connected
M586 P0 S1 ; Enable HTTP
M586 P1 S0 ; Disable FTP
M586 P2 S0 ; Disable Telnet
;M569 P0 S1 ; Drive 0 goes forwards
;M569 P1 S1 ; Drive 1 goes forwards
;M569 P2 S1 ; Drive 2 goes forwards
M569 P3 S1 ; Drive 3 goes forwards
M569 P4 S1 ; Drive 4 goes forwards
M569 P5 S1 T5 ; Drive 5 goes forwards
M569 P6 S1 T5 ; Drive 6 goes forwards
M569 P7 S1 T5 ; Drive 7 goes forwards
M569 P8 S1 T5 ; Drive 8 goes forwards
M584 X5 Y6:7 Z8 E3 ; Apply custom drive mapping
M350 X32 Y32 Z32 I0 ; Configure microstepping without interpolation
M350 E16 I1 ; microstep with interpolation
M92 X218.73852 Y218.73852 Z1259.84252 E418.5; Set steps per mm
M566 X900 Y900:900 Z12 E120 ; Set maximum instantaneous speed changes (mm/min)
M203 X12000 Y12000:12000 Z180 E1200 ; Set maximum speeds (mm/min)
M201 X500 Y500:500 Z250 E250 ; Set accelerations (mm/s^2)
M906 X1600 Y1600:1600 Z1600 E800 I30 ; Set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout
; Axis Limits
M208 X0 Y0 Z0 S1 ; Set axis minima
M208 X1200 Y800 Z150 S0 ; Set axis maxima
M574 X1 Y1 Z2 S0 ; Set active high endstops
M558 P1 H10 F120 T6000 ; Set Z probe type to unmodulated and the dive height + speeds
G31 P500 X400 Y400 Z2.5 ; Set Z probe trigger value, offset and trigger height
M557 X30:1170 Y30:770 S20 ; Define mesh grid
M140 H-1 ; Disable heated bed
M305 P1 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 1
M143 H1 S280 ; Set temperature limit for heater 1 to 280C
;M305 P2 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 1
;M143 H2 S280 ; Set temperature limit for heater 1 to 280C
M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
M106 P1 S1 I0 F500 H T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
M106 P2 S1 I0 F500 H T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on
M563 P0 D0 H1 ; Define tool 0
M563 P1 D1 H2 ; Define tool 1
G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
G10 P1 X100 Y0 Z0 ; Set tool 0 axis offsets
G10 P1 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
; Automatic saving after power loss is not enabled
; Custom settings are not configured
even when I commented the P0 out with ; , it stills runs when I tested M584 X0 .
But still no motion from external drive 5 6 7 8.
This post is deleted!
This is the similar thread but ut is locked out
Exactly what I am doing but still no clear answer...
And I got 3.7V on dir- and dir+ when I was trying to home...
Have you tried using the M569 T parameters that were published in the last post in that thread?
@dc42 I tried. I think my driver is bad. I'm buying new ones. I will report the results soon
Thanks so much
I got it to run!!!
Now here is a new issue. When I run test all motors, I edited to have 32x microstepping. An error pop up saying M350 drive Z does not support 32x microstepping... what is the deal?
@namlecnc M350 sets the internal stepper driver microstepping (over SPI). As you are using an external driver the firmware cannot set the microstepping on the driver, you do that in some other way (normally Dip switches). If you set the steps/mm (M92) correctly for whatever microstepping you use on that external drive that will work.
Yes this is on external drivers(xyz) so m350 for xyz doesn’t matter but the m92 steps per unit (mm) is the deciding factor?
Thanks a bunch!
@namlecnc yes. just use M350 for any internal drivers.
@namlecnc Can you let us know what you did to fix the issue you were having getting the TB6600 to run?