I can not move the stepper
-
Hi everyone, I suppose that this is a common problem, so if that's the case and someone could send me a link to another post I will appreciate it.
So the case, I recently bought a duet 3 6xd and a 1 xd expansion board.
I'm building something similar to doctor dflow machine, but with externar drivers.
My main problem is that I can not move the axis, I checked the conections 20 times and seams that is all correct, is my first duet board, so I suppose is just a silly error.
I'm building a machine with 1 X axis 1 y Axis and 4 independent Z axis, with a Dyze pulsar extruder.
I try to use G91 and then G1 H2 X10 but not movement at all. Even if I use G92 X0 Y0 Z0 I can press the movement button in the dashboard, the numbers change in the status area, but the machine is not moving at all.Just in case I wired all the positives signal of the driver all together to the +5v pin and -Pul -Dir and -Enable to the duet.
I paste here my config so you can see what I got configured.
; Configuration file for Duet 3 MB 6XD (firmware version 3.3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.3.16 on Sat Aug 05 2023 18:39:22 GMT+0200 (hora de verano de Europa central); General preferences
M575 P1 S1 B57600 ; enable support for PanelDue
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"GM200" ; set printer name; Wait a moment for the CAN expansion boards to start
G4 S2; Network
M551 P"Makergal" ; set password
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 P0.0 S1 ; physical drive 0.0 goes forwards
M569 P0.1 S1 ; physical drive 0.1 goes forwards
M569 P0.2 S1 ; physical drive 0.2 goes forwards
M569 P0.3 S1 ; physical drive 0.3 goes forwards
M569 P0.4 S1 ; physical drive 0.4 goes forwards
M569 P0.5 S1 ; physical drive 0.5 goes forwards
M569 P122.0 S1 ; physical drive 122.0 goes forwards
M584 X0.0 Y0.1 Z0.2:0.3:0.4:0.5 E122.0 ; set drive mapping
M671 X50:50:1100:1100 Y250:1850:1850:250 S0.5 ; leadscrews at rear left, front middle and rear right
M92 X80.00 Y80.00 Z640.00 E420.00 ; 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 X0 Y0 Z0 S1 ; set axis minima
M208 X1200 Y2000 Z1200 S0 ; set axis maxima; Endstops
M574 X1 S1 P"io0.in" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin io0.in
M574 Y1 S1 P"io1.in" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin io1.in
M574 Z1 S1 P"io2.in" ; configure switch-type (e.g. microswitch) endstop for low end on Z via pin io2.in; Heaters
M308 S0 P"temp3" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp3
M950 H0 C"out3" T0 ; create bed heater output on out3 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 S100 ; set temperature limit for heater 0 to 100C
M308 S1 P"spi.cs1" Y"rtd-max31865" ; configure sensor 1 as PT1000 on pin temp0
M950 H1 C"out0" T1 ; create nozzle heater output on out0 and map it to sensor 1
M307 H1 A940 C810 D22 S1.0 B0 ; disable bang-bang mode for heater and set PWM limit
M143 H1 S480 ; set temperature limit for heater 1 to 280C
M308 S2 P"spi.cs2" Y"rtd-max31865" ; configure sensor 2 as PT1000 on pin temp1
M950 H2 C"out1" T2 ; create nozzle heater output on out1 and map it to sensor 2
M307 H2 A940 C810 D22 S1.0 B0 ; disable bang-bang mode for heater and set PWM limit
M143 H2 S480 ; set temperature limit for heater 2 to 280C
M308 S3 P"spi.cs3" Y"rtd-max31865" ; configure sensor 3 as PT1000 on pin temp2
M950 H3 C"out2" T3 ; create nozzle heater output on out2 and map it to sensor 3
M307 H3 A795 C920 D10 S1.0 B0 ; disable bang-bang mode for heater and set PWM limit
M143 H3 S480; Fans
M950 F0 C"out4" Q500 ; create fan 0 on pin out4 and set its frequency
M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off; Tools
M563 P0 D0 H1:2:3 S"Pulsar" ; 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
-
Please post a link to the data sheet for the external drivers and also how you have the enable pullup on the 6xd set.
-
@T3P3Tony Hi tony thanks for your anwser I found a post about the driver I have, is a CL57T from OMC-StepperOnline
About the pullup how I can confirm if I got the pullup set??
best
Alvaro -
Specifically:
The Enable output is either low when "on" and high impedance when "off", or vice versa, depending on the position of the 'Driver Enable Polarity' (En_Pol) jumper.
-
@Makergal3D About the driver, the talk about putting the driver in open loop mode, instead the Clossed Loop but there isn't working either. Also check that the driver is in Step/Dir mode
-
@T3P3Tony said in I can not move the stepper:
Specifically:
The Enable output is either low when "on" and high impedance when "off", or vice versa, depending on the position of the 'Driver Enable Polarity' (En_Pol) jumper.
I will check this, I suppose I have to change the jumper to the other side, right?
-
@Makergal3D its likely to be the enable jumper polarity:
Driver Enable Polarity A jumper in the "left" position is used for external drivers which are enabled when a voltage is applied to the enable connection (Active Enable). A jumper in the "right" position is used for external drivers which are disabled when a voltage is applied to the enable connection
-
@Makergal3D the enable line looks to be active high from the data sheet, also it defaults to enabled if no enable is connected so you can temporarily disconnect the enable line and the driver should be enabled. You also have to set switch S3 for 5V operation apparently
-
@T3P3Tony Hi tony yes that did the trick, thanks.
Another question I got 4 independent z Axis, could you check if its right in the config.I got connected in the duet 3 6 XD
Driver 0 - X
Driver 1 - Y
Driver 2 - Z1
Driver 3 - Z2
Driver 4 - Z3
Driver 5 - Z4And the extruder in the expansion Board with the Can Address 122
Best
Alvaro -
@Makergal3D that's how the config file is setup.
-
@T3P3Tony Should I config anything else for that, because Z is not moving at all, XY moves correctly
-
@Makergal3D said in I can not move the stepper:
M574 Z1 S1 P"io2.in" ; configure switch-type (e.g. microswitch) endstop for low end on Z via pin io2.in
it would be normal to have one endstop per z axis motor so the individual axes can be trammed to the overall Z axis however AFAIK thats not mandatory.
what happens when you send M98 P"0:sys/config.g"
-
The drivers in Z has breakes, because the ammount of weight of the gantry, I read in the manual that I need a relay to open the break, but could I connect the break to an output in the board??
Best
Alvaro -
@T3P3Tony said in I can not move the stepper:
M98 P"0
I was thinking in using a probe to detect the bed, so I don't need extra endstops.
When I type M98 P0, the control panel said this "M98 P0 Warning: Macro file 0 not found"
-
@T3P3Tony said in I can not move the stepper:
M98 P"0:sys/config.g"
you need to have the "", what this command is doing is running the config file again to see if there are errors in it that i did not notice - those will be shown in the console on DWC
I did not realise the drivers had brakes, you need to setup the brake control. You can control the brakes from the board
https://docs.duet3d.com/User_manual/Reference/Gcodes#m5697-configure-motor-brake-port
-
This post is deleted! -
Hi @T3P3Tony to last questions I think i'm almost ready to test.
Just 2 question. with the M98 is gives me back this.
M98 P"0:sys/config.g"
HTTP is enabled on port 80
FTP is disabled
TELNET is disabled
Error: Setting not available for external driversWhen I start up the machine it said this all the times I power UP
Warning: Discarded std reply src=122 RID=3 exp=4 "Setting not available for external drivers"
Ans last, how do I select PIN from the 1XD board, I gor 4 heaters in my assembly and I would like to control 1 heater from the 1XD board. But I can not find in the forum how to set it up. The heater is in the Out 0 of the 1XD, it will control an SSR
Thanks in advance
-
@Makergal3D said in I can not move the stepper:
Warning: Discarded std reply src=122 RID=3 exp=4 "Setting not available for external drivers"
I expect this error is caused by trying to set the stepper drive current for the external drivers in the M906 line:
M906 X800 Y800 Z800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
Remove X, Y and Z parameters.
Ans last, how do I select PIN from the 1XD board, I gor 4 heaters in my assembly and I would like to control 1 heater from the 1XD board. But I can not find in the forum how to set it up. The heater is in the Out 0 of the 1XD, it will control an SSR
It is not ideal to run a heater from the 1XD. One of the limitations of RRF is that any heater has to be connected to the same board as the temperature sensor that controls it. While the 1XD does have a thermistor input, it is lower resolution than the temperature inputs on other Duet boards. It was originally intended for monitoring the temperature of connected motors. However, if it is enough for your application, yes, you should be able to control the heater. Note that the OUT0 and OUT1 are limited to 2A, and are driven at the input voltage (up to 48V) so if using an SSR, check the voltage limits. If it works with 3.3V signalling, you can use an io.out pin to control it.
Ian
-
@droftarts So I should move the thermistor also to the 1XD boards.
But I got the same question how do I say here that the pin is in the 1XD board
I supoose that in with the M950 but what number should I use for defining the pin in the 1XD board??; Heaters
M308 S0 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp3
M950 H0 C"out0" T0 ; create bed heater output on out3 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 S100 ; set temperature limit for heater 0 to 100C4Thanks
-
@Makergal3D prefix the pin name with the CAN address, eg
M308 S0 P"122.temp0" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp3
See https://docs.duet3d.com/en/User_manual/Machine_configuration/CAN_connection#using-can-addresses
Ian