Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    IDEX U Homing?

    Scheduled Pinned Locked Moved
    Gcode meta commands
    4
    13
    563
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • toddelundefined
      toddel
      last edited by

      Hi, I want to bring my first IDEX Machine to life...

      Its a Ratrig V-Cast with Duet2Wifi and Duex5.

      First question: Is this correct? I Home U Axis and after that i set this position. So now i can give the Command "G1 U150" and the Head moves correctly... Is this the way, IDEX works? Or am i wrong here?

      ; homeu.g
      ; Called to home the U axis
      ;
      M400
      M913 U35 													; drop motor current to 35%
      M915 U S1 H400 F0 R0  										; set sensitivity to +1 unfiltered
      M400 G91													; relative positioning
      G1 H2 Z10 F12000 											; lift Z relative to current position
      ;G1 H1 U-330 F6000 											; move quickly to X axis endstop and stop there (first pass)
      ;G1 H2 U10 F12000 											; go back a few mm
      ;G1 H1 U-12 F700 											; move slowly to X axis endstop once more (second pass)
      G1 H1 U350 F6000 											; Move U-axis to the endstop and stop (first pass)
      G1 H2 U-5 F6000												; Go back a few mm
      G1 H1 U10 F700 												; Move U-axis to the endstop once more (second pass)
      G1 H2 Z-10 F6000 											; lower Z again
      G90 														; absolute positioning
      M400														; 
      M913 U100 													; return current to 100%
      M915 U S5 F0 R2       										; set sensitivity to +5 and enable auto-pause
      M400														; 
      G92 U361.2													; Set Park position
      
      1 Reply Last reply Reply Quote 0
      • oliofundefined
        oliof
        last edited by oliof

        here is my homeu.g (using a simple endstop configured with M574 U2 S1) :

        ; ''' Home U at the high end of the axis'''
        G91
        G1 Z4 F200
        G1 U240 F3000 S1
        G1 U-4 F600 S2
        G1 U10 S1
        G1 Z-4 F200
        G90
        

        You don't need the G92 at the end if you set up your endstop to be at the high end of your axis.

        <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

        1 Reply Last reply Reply Quote 1
        • toddelundefined
          toddel
          last edited by toddel

          I have Stall detection enabled, so no endstop.

          When U homes (without the G92 Command) It has the Position 10:
          U.JPG

          Mustn't the U Axis have the correct position on the rail (X max)?

          dc42undefined 1 Reply Last reply Reply Quote 0
          • dc42undefined
            dc42 administrators @toddel
            last edited by

            @toddel said in IDEX U Homing?:

            Mustn't the U Axis have the correct position on the rail (X max)?

            Yes. Check that the M574 command that configures the U axis endstop is set to U2 (i.e.stop at high end) and the M208 setting for U max is correct.

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            toddelundefined 1 Reply Last reply Reply Quote 0
            • toddelundefined
              toddel @dc42
              last edited by

              @dc42

              ; Axis Limits
              M208 X-50.80 Y-26.00 Z0 U5 S1							; Set axes minima
              M208 X300 Y320 Z300 U361.20 S0						; Set axes maxima
              
              ; Endstops
              M574 X1 S3             						                      	; configure sensorless endstop for low end on X
              M574 U1 S3             						                      	; configure sensorless endstop for low end on X
              M574 Y1 S3                      					             	        ; configure sensorless endstop for low end on Y
              M574 Z1 S2                       					            	        ; configure Z-probe endstop for low end on Z
              
              

              My setting

              dc42undefined 1 Reply Last reply Reply Quote 0
              • dc42undefined
                dc42 administrators @toddel
                last edited by

                @toddel said in IDEX U Homing?:

                M574 U1 S3

                Should be U2 for high end homing, not U1.

                Duet WiFi hardware designer and firmware engineer
                Please do not ask me for Duet support via PM or email, use the forum
                http://www.escher3d.com, https://miscsolutions.wordpress.com

                toddelundefined 1 Reply Last reply Reply Quote 0
                • toddelundefined
                  toddel @dc42
                  last edited by

                  @dc42
                  Thats it!

                  Oh man! I'm looking 1000 times all parameters and always overwatched that 🐶

                  Thank you very much 😉

                  Btw can you suggest a Idex Head calibration way? Is there already a How-to from Zero to working mirror/idex/duplacation prints?

                  1 Reply Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators
                    last edited by

                    I don't have an IDEX so I've never calibrated one. I think the usual approach is to print two sets of lines with slightly different spacings, one from each head, next to each other like a vernier scale. Then you see which pair of lines meet up, and use that info to adjust the U max value in M208.

                    Duet WiFi hardware designer and firmware engineer
                    Please do not ask me for Duet support via PM or email, use the forum
                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                    toddelundefined 1 Reply Last reply Reply Quote 0
                    • toddelundefined
                      toddel @dc42
                      last edited by

                      @dc42
                      Okay...

                      I still have a problem.. .

                      M208 X-51.80 Y-26.00 Z0 U0 S1										; Set axes minima
                      M208 X300 Y320 Z300 U356.20 S0	
                      

                      My settings now...

                      When i home U in DWC it says "U 361.2". Where are the 5mm coming from? When i move U -1 its 356.2...

                      ???

                      1 Reply Last reply Reply Quote 0
                      • dc42undefined
                        dc42 administrators
                        last edited by

                        Post your complete config.g and homing files.

                        Duet WiFi hardware designer and firmware engineer
                        Please do not ask me for Duet support via PM or email, use the forum
                        http://www.escher3d.com, https://miscsolutions.wordpress.com

                        toddelundefined 1 Reply Last reply Reply Quote 0
                        • timcurtis67undefined
                          timcurtis67
                          last edited by

                          @toddel
                          Here are my config and homing files for my IDEX printer. Maybe it will help you with your setup.

                          Once you have it working they are great. I've been running mine for 3+ years now. Ditto mode cuts all of your print times in half when running large quantities of parts.

                          homez.g homey.g homex.g homeu.g homeall.g config.g

                          1 Reply Last reply Reply Quote 0
                          • toddelundefined
                            toddel @dc42
                            last edited by

                            @dc42

                            ; Configuration file for Duet WiFi (firmware version 1.21)
                            ; executed by the firmware on start-up
                            
                            ; General preferences
                            G90																	; Send absolute coordinates...
                            M83																	; ...but relative extruder moves
                            
                            ; Network
                            M550 P"VCast"														; Set machine name
                            M552 S1																; Enable network
                            M586 P0 S1															; Enable HTTP
                            M586 P1 S0															; Disable FTP
                            M586 P2 S0															; Disable Telnet
                            
                            ; Drives
                            M569 P0 S0															; Drive 0 (U) goes backwards
                            M569 P1 S0															; Drive 1 (X) goes forwards
                            M569 P3 S0															; Drive 3 (E1) goes backwards
                            M569 P4 S0															; Drive 4 (E2) goes backwards
                            M569 P8 S1															; Drive 5 (Z2) goes forwards
                            M569 P9 S0															; Drive 6 (Y) goes forwards
                            M569 P7 S1															; Drive 7 (Z1) goes forwards
                            M584 X1 U0 Y9 Z8:7 E3:4 											; Driver 3=X, 1=Y, 2+4=Z, 5+6=E0+E1
                            M92 X160 Y160 Z400 U160 E823	  									; Set steps/mm
                            M350 X32 Y32 Z16 U32 E32 I1											; Configure micro-stepping with interpolation for all drives
                            M203 X18000 Y18000 Z18000 U18000 E3600								; Set maximum speeds (mm/min)
                            M201 X500 Y500 Z100 U500 E10000										; Set accelerations (mm/s^2)
                            M566 X600 Y600 Z60 U600 E1200										; Set maximum instantaneous speed changes (mm/min)
                            M906 X2000 Y2000 Z2000 U2000 E500 I25								; Set motor currents (mA) and motor idle factor in per cent
                            M84 S10		                                                        ; Set idle timeout
                            
                            ;PanelDue															
                            M575 P1 S1 B57600
                            
                            ; Axis Limits
                            ;M208 X-51.80 Y-26.00 Z0 U5 S1										; Set axes minima
                            M208 X-51.80 Y-26.00 Z0 U0 S1										; Set axes minima
                            ;M208 X300 Y320 Z300 U361.20 S0										; Set axes maxima
                            M208 X300 Y320 Z300 U356.20 S0										; Set axes maxima
                            
                            ; Endstops
                            M574 X1 S3             						                      	; configure sensorless endstop for low end on X
                            M574 U2 S3             						                      	; configure sensorless endstop for low end on X
                            M574 Y1 S3                      					             	; configure sensorless endstop for low end on Y
                            M574 Z1 S2                       					            	; configure Z-probe endstop for low end on Z
                            
                            ; BLTouch Z-Probe
                            M574 Z1 S2															; Define Z endstop at a probe
                            M558 P9 C"^zprobe.in" H10 F480 T12000 A1							; Set Z probe to BLTouch, 5mm dive at 8mm/s, 5 attempts
                            M950 S0 C"duex.pwm5"												; Create a servo pin on Duex PWM5 header
                            G31 P25 X-29.75 Y-14.50 Z3.77										; Set Z probe trigger value, nozzle offsets, and trigger height
                            M557 X35:270 Y25:295 P7:7											; Define a 10x10 bed mesh
                            
                            ; Heaters
                            M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 C0 R4700				; Define Sensor0 as the heated bed temperature
                            M950 H0 C"bedheat" T0												; Define Heater0 as the heated bed, bind to Sensor0
                            M140 H0 P0															; Define Heated Bed
                            M307 H0 A378.7 C518.9 D2.3 S1.00 V24.2								; PID Tuning for Heater0 (Bed)
                            M143 H0 S120														; Set temperature limit for Heater0 to 120C
                            M308 S1 P"e0_temp" Y"thermistor" T100000 B4725 C7.06e-8 			; define E0 temperature sensor
                            M950 H1 C"E0Heat" T1												; Define Heater0 as Extruder1 heater, bind to Sensor1
                            M307 H1 A358.8 C172.6 D4.9 S1.00 V24.1								; PID Tuning for Heater1
                            M143 H1 S285
                            M308 S2 P"e1_temp" Y"thermistor" T100000 B4725 C7.06e-8 			; define E1 temperature sensor
                            M950 H2 C"E1Heat" T2												; Define Heater1 as Extruder2 heater, bind to Sensor2
                            ;M307 H2 A358.8 C172.6 D4.9 S1.00 V24.1								; PID Tuning for Heater2
                            M143 H2 S285
                            
                            ; Fans
                            M950 F0 C"fan0" Q1											; Define Fan0 for T0 Part Cooling
                            M106 P0 S0 H-1 C"X1 Part Cooling"									; Set Fan0 to default off, manual control
                            M950 F1 C"fan1"														; Define Fan1 for T0 Hotend cooling
                            M106 P1 S1 H1 T45 C"Hotend1"										; Set Fan1 to Thermostatic control, max RPM at 45C
                            M950 F2 C"duex.fan3" Q1											; Define Fan0 for T0 Part Cooling
                            M106 P2 S0 H-2 C"X2 Part Cooling"									; Set Fan0 to default off, manual control
                            M950 F3 C"duex.fan4"												; Define Fan1 for T0 Hotend cooling
                            M106 P3 S1 H2 T45 C"Hotend2"										; Set Fan1 to Thermostatic control, max RPM at 45C
                            
                            ; Tools
                            M563 P0 D1 H1 F0 S"E1"												; Tool0 uses Extruder0, Heater1 and Fan0
                            M563 P1 D0 H2 X0 F2 S"E2"											; Tool1 uses Extruder1, Heater2 and Fan2. X-axis is mapped to U
                            G10 P0 X0 Y0 Z0 R0 S0												; Set Tool0 axis offsets and temperatures
                            G10 P1 X0 Y0 Z0 R0 S0												; Set Tool1 axis offsets and temperatures
                            
                            ; Additional Settings
                            M671 X-93:393 Y150:150 S5.0											; Define Z-axis leadscrew positions for G32
                            M404 N1.75															; Define filament diameter for print monitor
                            T0																	; Activate T0 by default
                            
                            
                            ; homeu.g
                            ; Called to home the U axis
                            ;
                            M400
                            M913 U35 													; drop motor current to 35%
                            M915 U S1 H400 F0 R0  										; set sensitivity to +1 unfiltered
                            M400 G91													; relative positioning
                            G1 H2 Z10 F12000 											; lift Z relative to current position
                            G1 H1 U370 F6000 											; Move U-axis to the endstop and stop (first pass)
                            G1 H2 U-5 F6000												; Go back a few mm
                            G1 H1 U10 F700 												; Move U-axis to the endstop once more (second pass)
                            G1 H2 Z-10 F6000 											; lower Z again
                            G90 														; absolute positioning
                            M400														; 
                            M913 U100 													; return current to 100%
                            M915 U S5 F0 R2       										; set sensitivity to +5 and enable auto-pause
                            M400														; 
                            
                            dc42undefined 1 Reply Last reply Reply Quote 0
                            • dc42undefined
                              dc42 administrators @toddel
                              last edited by dc42

                              This is the problem:

                              @toddel said in IDEX U Homing?:

                              G1 H1 U370 F6000 ; Move U-axis to the endstop and stop (first pass)
                              G1 H2 U-5 F6000 ; Go back a few mm
                              G1 H1 U10 F700 ; Move U-axis to the endstop once more (second pass)

                              Stall detection doesn't work at slow speeds. So the G1 H1 U10 F700 command doesn't detect a stall, and the firmware attempts to drive the U carriage against the physical stop until it has commanded 10mm of movement. See https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing#Section_Minimum_recommended_speed_for_stall_detection.

                              Duet WiFi hardware designer and firmware engineer
                              Please do not ask me for Duet support via PM or email, use the forum
                              http://www.escher3d.com, https://miscsolutions.wordpress.com

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post
                              Unless otherwise noted, all forum content is licensed under CC-BY-SA