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

unable to home[xyz] using my homing scripts

Scheduled Pinned Locked Moved Solved
Tuning and tweaking
4
26
1.0k
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.
  • undefined
    spllg
    last edited by spllg 26 Feb 2020, 18:55

    this is my homex.g

    G91 ; relative positioning
    M208 X-26 S1 ; set axis minima
    G1 Z5 F6000 H2 ; lift Z relative to current position
    G1 H1 X-355 F3000 ; move quickly to X axis endstop and stop there (first pass)
    G1 X2 F3000 ; go back a few mm
    G1 H1 X-355 F100 ; move slowly to X axis endstop once more (second pass)
    G1 x+26 f3000
    M208 S1 X0 ; set min x
    M208 S0 X300 ; set max x
    G1 Z-5 F1000 H2 ; lower Z again
    G90 ; absolute positioning

    which i no longer can successfully execute - it used to be working fine for weeks.

    when i enter the commands in the script into the console one by one homing works fine.

    i feel the script might stall at G1 X2 F3000 .

    the same holds true for homey

    G91 ; relative positioning
    G1 Z5 F3000 H2 ; lift Z relative to current position
    G1 H1 Y3500 F3000 ; move quickly to Y axis endstop and stop there (first pass)

    G1 Y-2 F3000 ; go back a few mm
    G1 H1 Y5355 F100 ; move slowly to Y axis endstop once more (second pass)
    ;G1 y-10 f3000
    M208 S1 Y0 ; set min y
    M208 S0 Y300 ; set max y

    G1 Z-5 F1000 H2 ; lower Z again
    G90 ; absolute positioning

    this issue might be related to the fact that i invoked m500 from the console which destroyed my config-overwrite.g (all heater parameters reset to 0!) and possibly other files.

    what can i do to reeanble execution of home[xyz].g?

    thanks in advance

    sorry for having 2 left hands.

    forgot to mention:

    my config: Duet 3 6HC (v0.6) with RPi 4B

    duet running RepRapFirmware 3.01-RC2

    rpi running
    ii duetcontrolserver 1.2.4.0 armhf Control server application for Duet 3 series
    ii duetruntime 1.2.4.0 armhf .NET Core runtime libraries for the Duet software framework
    ii duetsd 1.0.5 all Virtual SD card directory for the Duet software framework
    ii duetsoftwareframework 1.2.4.0 armhf Meta package for the full Duet software framework
    ii duettools 1.2.4.0 armhf Optional tools (code examples)
    ii duetwebcontrol 2.0.7-1 all Official web interface for Duet electronics
    ii duetwebserver

    1 Reply Last reply Reply Quote 0
    • undefined
      Phaedrux Moderator
      last edited by 26 Feb 2020, 19:15

      Why are you setting M208 in your homing scripts?

      Z-Bot CoreXY Build | Thingiverse Profile

      undefined 1 Reply Last reply 26 Feb 2020, 19:24 Reply Quote 0
      • undefined
        spllg @Phaedrux
        last edited by 26 Feb 2020, 19:24

        @Phaedrux because i thought it would be the right place and it used to be working fine. shouldn't i?

        anyway, do you think moving it to config.g could solve my problem?

        undefined 1 Reply Last reply 26 Feb 2020, 19:31 Reply Quote 0
        • undefined
          Phaedrux Moderator
          last edited by 26 Feb 2020, 19:27

          It's definitely not the intended use. M208 is to define the size of the reachable area. M574 sets the endstop position. When homing with a homing move G1 H1, and an endstop is triggered, it sets the current position to either the min or max value for that axis as defined by M208.

          So if you don't have M208 in config.g and you are doing a homing move, and then setting the axis limits afterwards, I'm not sure what will happen, but it doesn't look like it's good.

          So set M208 in config.g using the format shown here: https://duet3d.dozuki.com/Wiki/Gcode?revisionid=HEAD#Section_M208_Set_axis_max_travel

          And then remove them from your homing files and try again.

          Z-Bot CoreXY Build | Thingiverse Profile

          1 Reply Last reply Reply Quote 1
          • undefined
            spllg @spllg
            last edited by 26 Feb 2020, 19:31

            @spllg gave it a try but did not solve anything.

            new info: when i execute homex.g the x-coordinate field in the status window of the dashboard displays x=-24 (or-26) for a short time interval and displays x=0 afterwards.

            1 Reply Last reply Reply Quote 0
            • undefined
              Phaedrux Moderator
              last edited by 26 Feb 2020, 19:34

              Please post your config.g and homing files as they are now.

              What error message if any do you get when homing?

              Z-Bot CoreXY Build | Thingiverse Profile

              undefined 2 Replies Last reply 26 Feb 2020, 19:37 Reply Quote 0
              • undefined
                spllg @Phaedrux
                last edited by 26 Feb 2020, 19:37

                @Phaedrux
                config.g

                M80 ; switch printer on
                G90 ; send absolute coordinates...
                M83 ; ...but relative extruder moves
                M550 P"3dd" ; set printer name

                M669 K1 ; select CoreXY mode

                ; Drives
                ; D1 = constant off time, d2=spreadcycle, d3=stealthchop(2)
                M569 P0.0 S1 D3 ; physical drive 0.0 goes forwards ; XY - left
                M569 P0.1 S1 D3 ; physical drive 0.1 goes forwards ; XY - right
                M569 P0.2 S1 D3 ; physical drive 0.2 goes forwards ; Z - left
                M569 P0.3 S1 D3 ; physical drive 0.3 goes forwards ; Z - right
                M569 P0.4 S0 ; physical drive 0.3 goes forwards ; E0

                M584 X0.0 Y0.1 Z0.2:0.3 E0.4 ; set drive mapping
                ;M350 X16 Y16 Z16 E64 I1 ; configure microstepping with interpolation
                ;M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
                ;M350 X64 Y64 Z16 E64 I1 ; configure microstepping with interpolation

                ; USE THIS
                M350 X16 Y16 Z16 E64 I1 ; configure microstepping with interpolation
                M92 X200.00 Y200.00 Z400.00 E1641.36 ; set steps per mm

                M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
                M203 X15000.00 Y15000.00 Z3000.00 E3600.00 ; set maximum speeds (mm/min)

                ;try
                ;M201 X3000 Y3000 Z100 E5000 ; Set accelerations (mm/s^2)

                M201 X1500.00 Y1500.00 Z100.00 E3000.00 ; set accelerations (mm/s^2)
                ;M201 X500.00 Y500.00 Z100.00 E3000.00 ; set accelerations (mm/s^2)
                ;M201 X500.00 Y500.00 Z100.00 E3000.00 ; set accelerations (mm/s^2)

                M906 X1500 Y1500 Z600 E1000 I30 ; set motor currents (mA) and motor idle factor in per cent
                ;M906 X800 Y800 Z600 E1000 I30 ; set motor currents (mA) and motor idle factor in per cent
                M84 S30 ; Set idle timeout

                ; Endstops
                M574 X1 S1 P"io3.in" ; configure active-low endstop for low end on X via pin io3.in
                M574 Y2 S1 P"io4.in" ; configure active-low endstop for low end on Y via pin io4.in
                M558 C"io5.in" P1 H2 F250 T9000 ; define z-probe=dh42(P), set dive height (H), feedrate(F), travel speed(T)

                ; alu
                ;G31 Z1.65

                ; DDP
                ;G31 X150 Y150 Z1.1
                ;G31 Z1.1

                ; glass
                ;G31 Z0.35

                ; Z-Probe ( https://duet3d.dozuki.com/Wiki/Gcode#Section_M558_Set_Z_probe_type )
                ;M557 X15:215 Y15:195 S20 ; define mesh grid

                M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
                M203 X15000.00 Y15000.00 Z3000.00 E3600.00 ; set maximum speeds (mm/min)

                ;M201 X750.00 Y750.00 Z100.00 E3000.00 ; set accelerations (mm/s^2)
                ;M201 X500.00 Y500.00 Z100.00 E3000.00 ; set accelerations (mm/s^2)

                ;M906 X1500 Y1500 Z600 E1000 I30 ; set motor currents (mA) and motor idle factor in per cent
                M906 X800 Y800 Z600 E1000 I30 ; set motor currents (mA) and motor idle factor in per cent
                M84 S30 ; Set idle timeout

                ; Axis Limits
                ;M208 X-26 Y0 Z0 S1 ; set axis minima
                ;M208 X270 Y310 Z340 S0 ; set axis maxima

                M208 S1 X0 ; set min x
                M208 S0 X300 ; set max x

                M208 S1 Y0 ; set min y
                M208 S0 Y300 ; set max y

                ; Endstops
                M574 X1 S1 P"io3.in" ; configure active-low endstop for low end on X via pin io3.in
                M574 Y2 S1 P"io4.in" ; configure active-low endstop for low end on Y via pin io4.in
                M558 C"io5.in" P1 H2 F250 T9000 ; define z-probe=dh42, set dive height, feedrate, travel speed

                ; Z-Probe ( https://duet3d.dozuki.com/Wiki/Gcode#Section_M558_Set_Z_probe_type )
                ;M557 X15:215 Y15:195 S20 ; define mesh grid

                ; define leadscrew positions
                M671 X-60:370 Y150:150 S5 ; leadscrews at left (connected to p0.2) and right (connected to p0.3) of X axis
                ;M671 X370:-60 Y150:150 S5 ; leadscrews at left (connected to p0.2) and right (connected to p0.3) of X axis

                ; temprature sensors

                M308 S0 P"temp0" Y"thermistor" ; configure sensor 0 as thermistor on pin temp0 (bed)
                ;M308 S1 P"temp1" Y"thermistor" ; configure sensor 1 as thermistor on pin temp1 (tool0)
                M308 S1 P"temp1" Y"thermistor" B4725 C7.06e-8 ; configure sensor 1 as thermistor on pin temp1 (tool0)
                ;M308 S1 P"temp1" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 1 as thermistor on pin temp1 (tool0)

                ; 2DO
                ; https://wiki.e3d-online.com/E3D-v6_Assembly#RepRapFirmware
                ; M305 P1 B4725 C7.06e-8

                ; 2DO: fix and all below
                ; Heaters
                M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0
                M143 H0 S120 ; set temperature limit for heater 0 to 120C
                ;M307 H0 B0 S1.00 F10 ; enable pwm mode for the bed heater and set PWM limit pwm freq=10hz (hopefully)
                M140 H0 ; map heated bed to heater 0

                M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1
                M143 H1 S285 ; set temperature limit for heater 1 to 285C
                ;M307 H1 B0 S1.00 ; disable bang-bang mode for the nozzle heater and set PWM limit

                ; Fans
                M950 F0 C"out4" Q500 ; create fan 0 on pin out3 and set its frequency
                M106 P0 H-1 ; set fan 0 value. Thermostatic control is turned off

                M950 F1 C"out5" Q500 ; create fan 1 on pin out4 and set its frequency
                M106 P1 H1 T50 ; set fan 0 value. Thermostatic control is turned on
                ;#M106 P1 S0 H-1 ; set fan 0 value. Thermostatic control is turned off

                ; 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

                ;M221 D0 S90 ; extrusion rate 90% - not yet tested
                M221 D0 S100 ; extrusion rate 90% - not yet tested
                ;M572 D0 S.7 ; pressure advance
                M572 D0 S.7 ; pressure advance

                ; Custom settings are not defined

                ; Miscellaneous
                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

                homex.g

                91 ; relative positioning
                M208 X-26 S1 ; set axis minima
                G1 Z5 F6000 H2 ; lift Z relative to current position
                G1 H1 X-355 F3000 ; move quickly to X axis endstop and stop there (first pass)
                G1 X2 F3000 ; go back a few mm
                G1 H1 X-355 F100 ; move slowly to X axis endstop once more (second pass)
                G1 x+26 f3000
                ;M208 S1 X0 ; set min x
                ;M208 S0 X300 ; set max x
                G1 Z-5 F1000 H2 ; lower Z again
                G90

                homey.g
                G91 ; relative positioning
                G1 Z5 F3000 H2 ; lift Z relative to current position
                G1 H1 Y3500 F3000 ; move quickly to Y axis endstop and stop there (first pass)

                G1 Y-2 F3000 ; go back a few mm
                G1 H1 Y5355 F100 ; move slowly to Y axis endstop once more (second pass)
                ;G1 y-10 f3000
                ;M208 S1 Y0 ; set min y
                ;M208 S0 Y300 ; set max y

                G1 Z-5 F1000 H2 ; lower Z again
                G90 ; absolute positioning

                undefined 1 Reply Last reply 26 Feb 2020, 19:45 Reply Quote 0
                • undefined
                  spllg @Phaedrux
                  last edited by spllg 26 Feb 2020, 19:40

                  @Phaedrux the last times, i executed the scripts there was no error message but when i excute homey.g after (a failed) homey.g i can see the message 'Error: G0/G1: insufficient axes homed'

                  i stll think something was destroyed when i entered m500.

                  1 Reply Last reply Reply Quote 0
                  • Danalundefined
                    Danal
                    last edited by 26 Feb 2020, 19:44

                    Since you are moving Z in your homex... is Z homed before X?

                    Delta / Kossel printer fanatic

                    undefined 1 Reply Last reply 26 Feb 2020, 19:46 Reply Quote 0
                    • undefined
                      Phaedrux Moderator @spllg
                      last edited by 26 Feb 2020, 19:45

                      @spllg said in unable to home[xyz] using my homing scripts:

                      homex.g
                      91 ; relative positioning
                      M208 X-26 S1 ; set axis minima

                      Looks like you're still got an M208 in homex that isn't commented out. I assume the missing G for G91 is just a copy and paste error.

                      Insufficient axis homed error message indicates you're trying to move an axis before it's been homed. Usually this is from a Z axis lift. To allow it you use the H2 option, which it appears you are. So when exactly does that error happen?

                      Are you using homeall as well?

                      Your config.g has a lot of duplication and commented out sections. Be careful that it doesn't catch you out. Might be time for some clean up.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      undefined 1 Reply Last reply 26 Feb 2020, 19:51 Reply Quote 0
                      • undefined
                        spllg @Danal
                        last edited by 26 Feb 2020, 19:46

                        @Danal no, but home[xy].g used to be working for weeks. i thought it would be a good idea to make sure the nozzle is away from th bed.

                        1 Reply Last reply Reply Quote 0
                        • Danalundefined
                          Danal
                          last edited by 26 Feb 2020, 19:48

                          Even though it worked before...

                          You might add

                          M564 H0 ; Allow unhomed axis to move.

                          and, of course, turn it off later

                          M564 H1

                          Delta / Kossel printer fanatic

                          undefined 1 Reply Last reply 26 Feb 2020, 19:50 Reply Quote 0
                          • undefined
                            Phaedrux Moderator @Danal
                            last edited by 26 Feb 2020, 19:50

                            @Danal said in unable to home[xyz] using my homing scripts:

                            Even though it worked before...

                            You might add

                            M564 H0 ; Allow unhomed axis to move.

                            and, of course, turn it off later

                            M564 H1

                            Shouldn't be necessary since he has H2 on his Z moves to allow unhomed movement.

                            Z-Bot CoreXY Build | Thingiverse Profile

                            Danalundefined undefined 2 Replies Last reply 26 Feb 2020, 19:52 Reply Quote 1
                            • undefined
                              spllg @Phaedrux
                              last edited by spllg 26 Feb 2020, 19:51

                              @Phaedrux you're right, there is another m208 in homex.g - commented it out. i know that i should do cleanup and i'm sure i will do that when everything is working.

                              yes, i was using homeall.g but as long as home[xyz] are not working i do not care.

                              the strange thing is that homing works when i enter the commands into the console one by one which makes me think that there might be a dwc <-> duet timing issue.

                              Danalundefined undefined 2 Replies Last reply 26 Feb 2020, 19:56 Reply Quote 0
                              • Danalundefined
                                Danal @Phaedrux
                                last edited by 26 Feb 2020, 19:52

                                @Phaedrux said in unable to home[xyz] using my homing scripts:

                                Shouldn't be necessary since he has H2 on his Z moves to allow unhomed movement.

                                Ah, good point, I missed that.

                                Delta / Kossel printer fanatic

                                1 Reply Last reply Reply Quote 0
                                • undefined
                                  spllg @Phaedrux
                                  last edited by spllg 26 Feb 2020, 19:53

                                  @Phaedrux done but did not solve my problem

                                  homex.g

                                  M564 H0
                                  G91 ; relative positioning
                                  ;M208 X-26 S1 ; set axis minima
                                  G1 Z5 F6000 H2 ; lift Z relative to current position
                                  G1 H1 X-355 F3000 ; move quickly to X axis endstop and stop there (first pass)
                                  G1 X2 F3000 ; go back a few mm
                                  G1 H1 X-355 F100 ; move slowly to X axis endstop once more (second pass)
                                  G1 x+26 f3000
                                  G1 Z-5 F1000 H2 ; lower Z again
                                  G90 ; absolute positioning
                                  M564 H1

                                  btw: i can see that G1 Z5 F6000 H2 is executed

                                  1 Reply Last reply Reply Quote 0
                                  • Danalundefined
                                    Danal @spllg
                                    last edited by 26 Feb 2020, 19:56

                                    @spllg said in unable to home[xyz] using my homing scripts:

                                    the strange ting is that homing works when i enter the commands into th console

                                    Hmm... then, just for debugging, try that set of commands in a macro (not in sys) and try them in a 'print job'.

                                    And/or, basic debugging: Shorten the script. Assuming that works, add things back slowly. Minimal is probably something like:

                                    G91 ; relative positioning
                                    G1 H1 X-355 F3000 ; move quickly to X axis endstop and stop there (first pass)
                                    G90

                                    Delta / Kossel printer fanatic

                                    undefined 1 Reply Last reply 26 Feb 2020, 20:09 Reply Quote 0
                                    • undefined
                                      Phaedrux Moderator @spllg
                                      last edited by 26 Feb 2020, 20:00

                                      @spllg said in unable to home[xyz] using my homing scripts:

                                      which makes me think that there might be a dwc <-> duet timing issue

                                      That's certainly a possibility, which is why it would help to have things cleaned up as much as possible so that we can rule out configuration error.

                                      In cases like this it can be helpful to go to the web configurator, input your printer specifics, and generate a fresh set of files to compare against. You can backup your config and try the configurator version. If it works and yours doesn't what is the difference?

                                      Z-Bot CoreXY Build | Thingiverse Profile

                                      undefined 1 Reply Last reply 26 Feb 2020, 20:15 Reply Quote 0
                                      • undefined
                                        spllg @Danal
                                        last edited by 26 Feb 2020, 20:09

                                        @Danal created the macro.

                                        executing

                                        M564 H0
                                        G91 ; relative positioning
                                        ;M208 X-26 S1 ; set axis minima
                                        G1 Z5 F6000 H2 ; lift Z relative to current position
                                        G1 H1 X-355 F3000 ; move quickly to X axis endstop and stop there (first pass)
                                        G1 X2 F3000 ; go back a few mm
                                        ;G1 H1 X-355 F100 ; move slowly to X axis endstop once more (second pass)
                                        ;G1 x+26 f3000
                                        ;G1 Z-5 F1000 H2 ; lower Z again
                                        ;G90 ; absolute positioning
                                        M564 H1

                                        works fine and i can move in x direction after execution. when i uncomment ;G1 H1 X-355 F100 i cannot move in x-direction after execution.

                                        oh no, not again this complete configuration process.

                                        but why did homing via scrip ever work?

                                        1 Reply Last reply Reply Quote 0
                                        • undefined
                                          spllg @Phaedrux
                                          last edited by spllg 26 Feb 2020, 20:15

                                          @Phaedrux

                                          changing

                                          M201 X1500.00 Y1500.00 Z100.00 E3000.00 ; set accelerations (mm/s^2)
                                          (i was advised to try this but forgot about it)

                                          to

                                          M201 X500.00 Y500.00 Z100.00 E3000.00 ; set accelerations (mm/s^2)

                                          did the trick.

                                          thanks for your assistance.

                                          btw: g- and- m-codes are horrible - the g-m language reminds me on assembler languages of the early 1970's (e.g. honeywell) but i cannot and don't want to remember details.

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