wiring endstops on duet 3 6hc
-
Hello at all,
i am new here and have very very little knowledge of g-codes but am currently building a "3d printer monster" (build space 1000x500x500mm)I need help with the wiring, possibly also with the configuration.
Board duet 3 6hcāØI have x, y, and z motors running and can control them from the Duetboard website. With the endstops I have my difficulties:in config.g is written:
Endstops
M574 X1 S1 P "io4.in" ; configure active-high endstop for low end on X via pin io0.in M574 Y1 S1 P "io0.in" ; configure active-high endstop for low end on Y via pin io1.in M574 Z1 S1 P "io3.in" ; configure active-high endstop for low end on Z via pin io2.inI put this endstop (cr10 spare) on IO_0 in the first try and then on IO_1 and so on ... as in the picture. No interrupt.
1.question: is my pin assignment at the board connector correct?- Question how can I test if this works?
Please: because I do not know so well the answer please "for stupid" and detailed
thanks for help
Dieter
-
HERE is a page showing how to configure and test the endstop inputs on a Duet3.
You can use the M119 command in the console to check if your endstops are triggerred.
m119 Endstops - X: not stopped, Y: not stopped, Z: not stopped, Z probe: not stopped
Type in the M119 command and then by hand cause the endstop to be triggered and type M119 again and see if it works.
Your configuration:
M574 Y1 S1 P "io0.in"says Active HIGH endstop switch at the low end of the Y axis according to THIS page.
-
@dieterdd Yes, the documentation on this is quite poor for beginners. They spend all their effort describing how to do it NOT the recommended way.
The recommended way is a Normally Closed (NC) switch connected across GND and the Input pin (Black and Red wires in your picture respectively). Then you need to set the internal pullup resistor with the ^ character. So:
M574 X1 S1 P"^0.io0.in"
M574 Y1 S1 P"^0.io1.in"
M574 Z1 S1 P"^0.io2.in"If you are using something other than a microswitch (like the powered sensor in your picture) then it may act as Normally Open (NO). In that case you need to invert the input with a ! character.
M574 X1 S1 P"^!0.io0.in"
M574 Y1 S1 P"^!0.io1.in"
M574 Z1 S1 P"^!0.io2.in"Finally, in your homing files you need to be careful when you are ignoring the endstops. An H2 move ignores the endstops, and an H1 move is looking for the endstop. For example:
G91 ; use relative positioning G1 H2 X50 F1000 ; move off endstop (H2 ignores endstop) G1 H1 X-250 F1500 ; move down to find endstop (H1 detects endstop and records position to M208) G1 H2 X25 F1000 ; move off endstop (H2 ignores endstop) G1 H1 X-50 F500 ; precision homing (H1 detects endstop and records position to M208) G1 H2 X50 F1000 ; move off endstop (H2 ignores endstop) G90 ; back to absolute positioning
-
@theolodian As a note, I've just learned that there is no need to enable the internal pullups on Duet 3 hardware since there are already external pullups for all inputs.
-
Works, the exclamation marks have brought the solution. also for the naming of the cables, that brings self-confidence in doing...
- Until the next question mark what wants to put me in the way.
Thanks!
Dieter
- Until the next question mark what wants to put me in the way.