Hello
I started using an external driver to drive an axis on my 3d printer and have been having nothing but problems with getting this to work.
The issue I am having is that the duet3d maestro does not seem to respond to the M569 Gcode properly in particular is the polarity, Which does not seem to make any change electrically with the wiring and does not seem to make sense either
I have attached my config.G file below the line in particular that has the problem is this one
M569 P5 S1 R1 T2 ; physical drive 5 goes forwards
I have tried it with both R1 and R0
The problem I am having is when measuring with a multimeter on the enable, step I am getting the same voltages on both as well.
When Idle / Motor OFF
Step = 0v
Enable = 5v
When motor running
Step = 5V
Enable = 0V
Which does not make sense as with R1 Step and enable should be active high and R0 both should be active Low
Any help reguarding this would be greatly appreciated.
*Edit : I forgot to mention that the external driver I am using is an DM420A which requires active High signals and also to convert from the 3.3v signals I am using a logic level converter that I have used on multiple projects in the past that works really well to convert the 3.3v into the 5v requirement.
; Configuration file for Duet Maestro (firmware version 3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.3.0 on Thu Aug 12 2021 16:34:59 GMT+1000 (Australian Eastern Standard Time)
; General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"My Printer" ; set printer name
; Network
M552 P0.0.0.0 S1 ; enable network and acquire dynamic address via DHCP
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet
; Drives
M569 P5 S1 R1 T2 ; physical drive 5 goes forwards
M569 P1 S0 ; physical drive 1 goes backwards
M569 P2 S1 ; physical drive 2 goes forwards
M569 P3 S0 ; physical drive 3 goes backwards
M584 X5 Y1 Z2 E3 ; set drive mapping
M350 X32 Y32 Z32 E64 I0 ; configure microstepping without interpolation
M92 X76.74 Y151.47 Z5156.55 E2202.90 ; set steps per mm
M566 X900.00 Y900.00 Z60.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min)
M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
M906 X800 Y800 Z800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout
; Axis Limits
M208 X10 Y10 Z0 S1 ; set axis minima
M208 X200 Y200 Z200 S0 ; set axis maxima
; Endstops
M574 X1 S1 P"xstop" ; configure active-high endstop for low end on X via pin xstop
M574 Y1 S1 P"ystop" ; configure active-high endstop for low end on Y via pin ystop
M574 Z1 S2 ; configure Z-probe endstop for low end on Z
; Z-Probe
M950 S0 C"^zprobe.mod" ; create servo pin 0 for BLTouch
M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds
G31 P500 X19 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height
M557 X25:200 Y25:195 S20 ; define mesh grid
; Heaters
M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp
M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0
M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S120 ; set temperature limit for heater 0 to 120C
M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp
M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S280 ; set temperature limit for heater 1 to 280C
; Fans
M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on
; Tools
M563 P0 D0 H1 F0 ; define tool 0
G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C
; Custom settings are not defined