All axis stop moving before hitting switches
-
Hello, I am converting an old CubePro duo to Duet 3 and I have my X, Y, and Z (and their limit switches) wired up and moving properly. My problem is that when I try to home all or any of the axes they all move a small distance and then stop before they've even come close to hitting their switches.
I have already made sure that the switches read triggered or not triggered at the correct positions so I am really stumped.here is my config and homeall
; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"CubePro" ; set printer name ; Network M551 P"*****" ; set password M552 P0.0.0.0 S1 ; enable network and acquire dynamic address via DHCP M586 P0 S1 ; enable HTTP M586 P1 S1 ; enable FTP M586 P2 S1 ; enable Telnet ; Drives M569 P0.4 S1 ; physical drive 0.4 goes forwards M569 P0.3 S1 ; physical drive 0.3 goes forwards M569 P0.2 S1 ; physical drive 0.2 goes forwards M569 P0.0 S1 ; physical drive 0.0 goes forwards M569 P0.1 S1 ; physical drive 0.1 goes forwards M584 X0.4 Y0.3 Z0.2 E0.0:0.1 ; set drive mapping M350 X16 Y16 Z16 I0 ; configure microstepping without interpolation M350 E16:16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z800.00 E420.00:420.00 ; set steps per mm M566 X900.00 Y900.00 Z12.00 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min) M203 X12000.00 Y12000.00 Z600.00 E1200.00:1200.00 ; set maximum speeds (mm/min) M201 X500.00 Y500.00 Z20.00 E250.00:250.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z800 E800:800 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 X280 Y280 Z200 S0 ; set axis maxima ; Endstops M574 X1 S1 P"!io3.in" ; configure active-high endstop for low end on X via pin io3.in M574 Y2 S1 P"!io4.in" ; configure active-high endstop for high end on Y via pin io4.in M574 Z2 S1 P"!io1.in" ; configure active-high endstop for high end on Z via pin io1.in ; Z-Probe M558 P0 H5 F120 T6000 ; disable Z probe but set dive height, probe speed and travel speed M557 X15:215 Y15:195 S20 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out2" T0 ; create chamber heater output on out2 and map it to sensor 0 M307 H0 B1 S1.00 ; enable bang-bang mode for the chamber heater and set PWM limit M141 H0 ; map chamber to heater 0 M308 S1 P"temp1" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp1 M950 H1 C"out0" T1 ; create nozzle heater output on out0 and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M308 S2 P"temp2" Y"thermistor" T100000 B4138 ; configure sensor 2 as thermistor on pin temp2 M950 H2 C"out1" T2 ; create nozzle heater output on out1 and map it to sensor 2 M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit ; Fans M950 F0 C"out7" Q500 ; create fan 0 on pin out7 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"out8" Q500 ; create fan 1 on pin out8 and set its frequency M106 P1 S1 H-1 ; set fan 1 value. Thermostatic control is turned off M950 F2 C"out9" Q500 ; create fan 2 on pin out9 and set its frequency M106 P2 S1 H-1 ; set fan 2 value. Thermostatic control is turned off M950 F3 C"out4" Q500 ; create fan 3 on pin out4 and set its frequency M106 P3 S1 H-1 ; set fan 3 value. Thermostatic control is turned off ; Tools M563 P0 D0 H1 F0:1:2:3 ; 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 M563 P1 D1 H2 F0:2:1:3 ; define tool 1 G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C ; Custom settings are not defined ; Miscellaneous M575 P1 S1 B57600 ; enable support for PanelDue M501 ; load saved parameters from non-volatile memory M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.1.4 on Thu Jul 30 2020 09:52:44 GMT-0700 (Pacific Daylight Time) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X-285 Y285 F1800 ; move quickly to X and Y axis endstops and stop there (first pass) G1 H2 X5 Y-5 F6000 ; go back a few mm G1 H1 X-285 Y285 F360 ; move slowly to X and Y axis endstops once more (second pass) G1 H1 Z205 F360 ; move Z up stopping at the endstop G90 ; absolute positioning G92 Z200 ; set Z position to axis maximum (you may want to adjust this) ; Uncomment the following lines to lift Z after probing ;G91 ; relative positioning ;G1 Z5 F100 ; lift Z relative to current position ;G90 ; absolute positioning
-
@Gabell20 as a fist test please call
M122
to see whether there are reported errors.Please select a tool at the end of config: insert
T0Please check the config syntax by calling
M98 P"config.g"Has nothing to todo with the problem, but
M350 X16 Y16 Z16 I0
is microstepping without interpolation.
M350 X16 Y16 Z16 I1
will move your steppers more quiet.Endstop definitions M574 S1 with ! means it is an active low switch. Is this correct? (because the comments tell otherwise). Please see https://duet3d.dozuki.com/Wiki/RepRapFirmware_3_overview#Section_M574 the sentence starting "Endstop type S0 (active low switch) is no longer supported... use S1 with ! ..."
M501 can mean there is a config-override.g, please post it.
-
Hi,
I'm guessing there is a problem with the way your end stops are configured and they are active when they should be inactive and vice versa.
The symptom of this is homing yields just a small amount of movement in the direction away from the end stop sensor.
Frederick
-
@JoergS5 I called M122 and there are no reported errors. I also did set my limit switches with S1 ! on purpose and they do show triggered: no when not pressed. I can't find a config-override.g anywhere but I have a config.g.bak, is that the same ?
-
@fcwilt That is what is happening, but when I look under machine specific in the web control all of my switches look good: only yes when pressed and when I home the machine while pressing the switch it doesn't move at all.
-
@Gabell20 said in All axis stop moving before hitting switches:
@fcwilt That is what is happening, but when I look under machine specific in the web control all of my switches look good: only yes when pressed and when I home the machine while pressing the switch it doesn't move at all.
Well sounds like they are working correctly as the DWC reports.
Yet the behavior you are seeing is odd.
Let me think on it a bit.
Frederick
-
@Gabell20 said in All axis stop moving before hitting switches:
config-override.g anywhere but I have a config.g.bak, is that the same ?
no, they are different, config.g.bak is only a back of config.g, the override file is a file used with M500 and M501, if you don't have one you can remove M501 in config then.
-
@fcwilt Thank you
-
@JoergS5 Thank you, I will
-
@Gabell20 did you add T0 and run M98?
If you only get small movements and the endstops are ok, a wrong M92 would be possible but it's strange, because it looks ok.
When you make a G1 100, does it move the distance as expected or less?Can you check that the pulleys are correctly fixed on the stepper shafts?
-
@Gabell20 Have you entered in the DWC a M208 command to verify the min/max settings?
Frederick
-
@Gabell20 the
M566 X900.00 Y900.00 Z12.00 E120.00:120.00
Z value is very low, please trying to set 100 instead.Another possibility why the movement is so slow that the steppers are connected to different axes as you expect (extruder definition to X axis eg), please recheck the wiring and wiring diagram.
Is the printer a CoreXY? Then the config and homeall would be wrong.
-
@JoergS5 The x and y axes move how they should with a g1, Ive been trying all sorts of motion and it all seems sound mechanically, belts and pulleys are tight and in place.
-
@JoergS5 Its Cartesian, and I've unplugged the extruders for debugging. X Y and Z are all independent and wired up correctly.
-
@Gabell20 you described they move, but not to the endstops. Do you see a reason why the stop? And if you make only X or only Y movement, do they move to the endstops?
Isolated
G91
G1 H1 X-1000
e.g.Can you verify firmware version please, should be 3.1.1
-
@JoergS5 They don't move regardless if I home all or home one axis independently or directly with gcode, for example G91 G1 H2 X-500 will move very far and crash as expected, but G91 G1 H1 X-500 will move roughly 6 mm.
RepRapFirmware for Duet 3 MB6HC version 3.01-RC9 running on Duet 3 MB6HC v1.01 or later -
@Gabell20 said in All axis stop moving before hitting switches:
3.01-RC9
Please update to 3.1.1 by uploading this zip file
https://github.com/Duet3D/RepRapFirmware/releases/download/3.1.1/Duet2and3Firmware-3.1.1.zip
Just to confirm, the endstops are physically located X to the left and Y at the back?
Can you manually run each line of your homeall from the console?
-
@Gabell20 I am not aware of so serious bugs for the movement, but the general advice is to upgrade to 3.1.1
I checked, there were some error corrections between 3.01 beta 9 and 3.1.1, better upgrade first before proceeding.
-
Can you show photo of the endstops and the wiring?
-
@Phaedrux how do send images t the forum on mobile ?