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

    Fine Homing on X doesn't work

    Scheduled Pinned Locked Moved
    General Discussion
    4
    23
    639
    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.
    • Stevtommoundefined
      Stevtommo
      last edited by

      Hello,

      I have a duet2wifi on FW3.44 running a coreXY printer. I'm stumped that it doesnt seem to like the fine-homing loop on the x-axis. First-pass 'rough homing' works repeatably and reliably on all axes, but for some reason the printer's -X 'fine-homing' move terminates somewhere between 10mm and 0.4mm away from the end stop. The Y-axis always works perfectly. The X-axis stop very rarely if ever actually contacts the X-axis end-stop. The dashboard/paneldue reads out the value it's stopped at, which is weirdly sometimes correct, but sometimes up to 5mm out. This is very important for me because my machine is a multi-head toolchanger design.

      My config.g was a build off the configurator, but I had exactly the same issue when I was running FW1.8 on the same machine.

      The X-end-stop doesn't seem to be triggering randomly on primary homing or at any other time, so I can't see how it, or it's wiring could be faulty (?) Looking at the object model, 'Xstop' definitively does not show as triggered on any fine-homing move. I have no idea what's wrong and I could really use some help.

      Thanks in advance!

      My end stop detail in config.g looks like:

      M574 X1 S1 P"xstop"
      M574 Y1 S1 P"ystop"
      M574 U1 S1 P"e0stop"
      M574 Z1 S2

      And my homeall.g file looks like:

      G91
      G1 H2 Z5 F6000
      G1 H1 X-325 Y-265 F1800
      G1 H1 X-425
      G1 H1 Y-365
      G1 X10 Y10 F6000
      G1 H4 X-325 F360 ;tried with H1, same behavior
      G1 H1 Y-265
      G90
      G1 X40 Y60 F6000
      G30

      Stevtommoundefined 1 Reply Last reply Reply Quote 0
      • Phaedruxundefined
        Phaedrux Moderator
        last edited by Phaedrux

        Please post your full config.g and the results of sending M122 and M98 P"config.g" in the gcode console.

        Does homing X by itself work correctly?

        You definitely don't want H4

        Can you also confirm that -X movement is to the left?, -Y movement is to the front?

        Have you checked grub screws for tightness on the pulleys?

        Z-Bot CoreXY Build | Thingiverse Profile

        Stevtommoundefined 1 Reply Last reply Reply Quote 0
        • Stevtommoundefined
          Stevtommo @Phaedrux
          last edited by

          Hi @Phaedrux

          Thanks for the speedy reply!

          Homing just X-axis behaves in the same way.

          1. Rough homes OK
          2. Move away to e.g. X10 OK
          3. Fine homing: stops somewhere between X10 and X0

          Thanks RE H4, will change it back.

          -X is to the left, -Y is to the front

          Stevtommoundefined 1 Reply Last reply Reply Quote 0
          • Stevtommoundefined
            Stevtommo @Stevtommo
            last edited by

            M98 P"config.g"
            HTTP is enabled on port 80
            FTP is disabled
            TELNET is disabled
            Warning: Heater 2 predicted maximum temperature at full power is 394°C
            Error: Heater 3 not found
            Error: Heater 4 not found
            Error: Heater 5 not found
            Error: Heater 6 not found
            Error: Heater 7 not found

            1 Reply Last reply Reply Quote 0
            • Stevtommoundefined
              Stevtommo @Stevtommo
              last edited by

              @Phaedrux

              ; Configuration file for Duet WiFi (firmware version 3.3)
              ; executed by the firmware on start-up
              ;
              ; generated by RepRapFirmware Configuration Tool v3.3.14 on Sun Nov 06 2022 15:34:07 GMT+0000 (Greenwich Mean Time)

              ; General preferences
              M575 P1 S1 B57600 ; enable support for PanelDue
              G90 ; send absolute coordinates...
              M83 ; ...but relative extruder moves
              M550 P"My Printer" ; set printer name
              M669 K1 ; select CoreXY mode

              ; Network
              M552 S1 ; enable network
              M586 P0 S1 ; enable HTTP
              M586 P1 S0 ; disable FTP
              M586 P2 S0 ; disable Telnet

              ; Drives
              M569 P0 S0 ;X physical drive 0 goes backwards
              M569 P1 S0 ;Y physical drive 1 goes backwards
              M569 P2 S0 ;Y physical drive 2 goes backwards
              M569 P3 S0 ;E0 physical drive 3 goes backwards
              M569 P4 S0 ;E1 physical drive 4 goes backwards
              M569 P5 S0 ;U physical drive 5 goes backwards

              M584 X0 Y1 Z2 E3:4 U5 ; set drive mapping
              M671 X-0.0:305.0:305.0:0.0 Y0.0:0.0:205.0:205.0 ; Z leadscrews are at (0,0),(305,0),(305,205),(0,205)

              M350 X16 Y16 Z16 E16:16 U16 I1 ; configure microstepping with interpolation
              M92 X200.00 Y200.00 Z1600.00 E30.578 E5273.00:5273.00 ; set steps per mm
              M566 X900.00 Y900.00 Z60.00 U50 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min)
              M203 X3600.00 Y3600.00 Z180.00 U9000 E1200.00:1200.00 ; set maximum speeds (mm/min)
              M201 X500.00 Y500.00 Z20.00 U800 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
              M906 U670 I60 ; set motor currents (mA) and motor idle factor in per cent
              M84 S20 ; Set idle timeout

              ; Axis Limits
              M208 X0 Y0 Z0 U0 S1 ; set axis minima
              M208 X320 Y260 Z200 U80 S0 ; set axis maxima

              ; Endstops
              M574 X1 S1 P"xstop" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin xstop
              M574 Y1 S1 P"ystop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop
              M574 U1 S1 P"e0stop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop
              M574 Z1 S2 ; configure Z-probe endstop for low end on Z

              ; Z-Probe
              M558 P1 C"zprobe.in" H3 F120 T5000 ; set Z probe type to unmodulated and the dive height + speeds
              G31 P500 X0 Y-42 Z-8.5 ; set Z probe trigger value, offset and trigger height
              M557 X40:260 Y40:160 S20 ; define mesh grid

              ; Heaters
              M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp
              M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0

              M307 H0 R0.469 K0.337:0.000 D2.38 E1.35 S1.00 B0 ; TESTED 6TH NOV
              ;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 S90 ; set temperature limit for heater 0 to 90C

              M308 S1 P"spi.cs1" Y"rtd-max31865" ; create sensor number 1 as a PT100 sensor in the first position on the Duet 2 daughter board connector
              M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
              M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
              M143 H1 S220 ; set temperature limit for heater 1 to 220C

              M308 S2 P"spi.cs2" Y"rtd-max31865" ; create sensor number 1 as a PT100 sensor in the first position on the Duet 2 daughter board connector
              M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2
              M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit
              M143 H2 S220 ; set temperature limit for heater 2 to 220C

              ; Fans
              M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
              M106 P0 S0 H1 T30 ; set fan 0 value. Thermostatic control is turned on
              M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
              M106 P1 S0 H2 T30 ; set fan 1 value. Thermostatic control is turned on
              M950 F2 C"fan2" Q500 ; create fan 2 on pin fan2 and set its frequency
              M106 P2 S0 H-1 ; set fan 2 value. Thermostatic control is turned off
              M950 F3 C"duex.fan3" Q500 ; create fan 3 on pin duex.fan3 and set its frequency
              M106 P3 S0 H-1 ; set fan 3 value. Thermostatic control is turned off

              ;HEATER FAULT HANDLING

              M570 H0 P5 T15 ; E3D Varipower heated bed with 180s to reach 60deg -check
              M570 H1 P5 T15 ; Left extruder (T0)
              M570 H2 p5 T15 ; Right extruder (T1)

              ; Tools
              M563 P0 S"LEFT" D0 H1 F0:3:2 ; 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 S"RIGHT" D1 H2 F1:2: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
              M555 P2 ; Set output to look like Marlin
              M556 S78 X0 Y0 Z0 ; Axis SKEW compensation here

              ; *** Pressure Advance ; Compensates for elasticity of extrusion system
              ; ; extrusion_speed = requested_extrusion_speed + (S * current_extruder_acceleration)
              ; ; The more the system can lag, the greater the compensation required
              ; ; Typically S = 0.05 for a direct extruder
              ; ; S = 0.10 for a Bowden with a 400 mm tube
              ;M572 D0 S0.05 ; Set pressure advance coefficient for tool 0 (Left extruder)
              ;M572 D1 S0.05 ; Set pressure advance coefficient for tool 1 (Right extruder)

              ; Miscellaneous
              M501 ; load saved parameters from non-volatile memory
              M140 S0 ;CORRECT BED ISSUES
              M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss

              ;----> all below commented out, need?
              ; *** Load bed height map and activate bed compensation
              ;G29 S1 ; Load the height map from the last time you used G29 to probe the bed.
              ; The default height map file is /sys/heightmap.csv.
              ; Comment this out if you are not using automated mesh leveling.
              ;
              ;M376 H10 ; Taper off bed compensation taper
              ; Hnnn Height (mm) over which to taper off the bed compensation
              ; Setting H0 leaves compensation always on

              ; Set bed temperature (to get rid of the -273C reading

              Phaedruxundefined 1 Reply Last reply Reply Quote 0
              • Stevtommoundefined
                Stevtommo
                last edited by

                m122
                === Diagnostics ===
                RepRapFirmware for Duet 2 WiFi/Ethernet version 3.4.4 (2022-10-20 16:17:41) running on Duet WiFi 1.0 or 1.01 + DueX5
                Board ID: 08D6M-95AK9-NG3SD-6JKDJ-3S46J-96R9X
                Used output buffers: 1 of 26 (15 max)
                === RTOS ===
                Static ram: 23860
                Dynamic ram: 76532 of which 0 recycled
                Never used RAM 11616, free system stack 124 words
                Tasks: NETWORK(ready,14.0%,237) HEAT(notifyWait,0.1%,333) Move(notifyWait,0.0%,306) DUEX(notifyWait,0.0%,24) MAIN(running,85.8%,438) IDLE(ready,0.2%,30), total 100.0%
                Owned mutexes: WiFi(NETWORK)
                === Platform ===
                Last reset 00:10:14 ago, cause: power up
                Last software reset at 2022-11-12 23:57, reason: User, GCodes spinning, available RAM 11688, slot 1
                Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0041f000 BFAR 0xe000ed38 SP 0x00000000 Task MAIN Freestk 0 n/a
                Error status: 0x00
                Aux0 errors 0,0,0
                Step timer max interval 0
                MCU temperature: min 10.0, current 19.5, max 19.9
                Supply voltage: min 24.4, current 24.6, max 24.8, under voltage events: 0, over voltage events: 0, power good: yes
                Heap OK, handles allocated/used 0/0, heap memory allocated/used/recyclable 0/0/0, gc cycles 0
                Events: 0 queued, 0 completed
                Driver 0: standstill, SG min 0
                Driver 1: standstill, SG min 0
                Driver 2: standstill, SG min 0
                Driver 3: standstill, SG min n/a
                Driver 4: standstill, SG min n/a
                Driver 5: standstill, SG min n/a
                Driver 6: standstill, SG min n/a
                Driver 7: standstill, SG min n/a
                Driver 8: standstill, SG min n/a
                Driver 9: standstill, SG min n/a
                Driver 10:
                Driver 11:
                Date/time: 2022-11-13 12:20:29
                Cache data hit count 4294967295
                Slowest loop: 11.24ms; fastest: 0.17ms
                I2C nak errors 0, send timeouts 0, receive timeouts 0, finishTimeouts 0, resets 0
                === Storage ===
                Free file entries: 10
                SD card 0 detected, interface speed: 20.0MBytes/sec
                SD card longest read time 1.2ms, write time 0.9ms, max retries 0
                === Move ===
                DMs created 83, segments created 3, maxWait 214299ms, bed compensation in use: none, comp offset 0.000
                === MainDDARing ===
                Scheduled moves 33, completed 33, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 13], CDDA state -1
                === AuxDDARing ===
                Scheduled moves 0, completed 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
                === Heat ===
                Bed heaters 0 -1 -1 -1, chamber heaters -1 -1 -1 -1, ordering errs 0
                Heater 0 is on, I-accum = 0.0
                === GCodes ===
                Segments left: 0
                Movement lock held by null
                HTTP is idle in state(s) 0
                Telnet is idle in state(s) 0
                File is idle in state(s) 0
                USB is idle in state(s) 0
                Aux is idle in state(s) 0
                Trigger is idle in state(s) 0
                Queue is idle in state(s) 0
                LCD is idle in state(s) 0
                Daemon is idle in state(s) 0
                Autopause is idle in state(s) 0
                Code queue is empty
                === DueX ===
                Read count 1, 0.10 reads/min
                === Network ===
                Slowest loop: 29.24ms; fastest: 0.00ms
                Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0)
                HTTP sessions: 1 of 8
                = WiFi =
                Network state is active
                WiFi module is connected to access point
                Failed messages: pending 0, notready 0, noresp 0
                WiFi firmware version 1.27
                WiFi MAC address 5c:cf:7f:2c:27:b3
                WiFi Vcc 3.34, reset reason Turned on by main processor
                WiFi flash size 4194304, free heap 24056
                WiFi IP address 192.168.1.142
                WiFi signal strength -46dBm, mode 802.11n, reconnections 0, sleep mode modem
                Clock register 00002002
                Socket states: 0 0 0 0 0 0 0 0

                deckingmanundefined 1 Reply Last reply Reply Quote 0
                • Phaedruxundefined
                  Phaedrux Moderator @Stevtommo
                  last edited by

                  @Stevtommo said in Fine Homing on X doesn't work:

                  M92 X200.00 Y200.00 Z1600.00 E30.578 E5273.00:5273.00 ; set steps per mm

                  You've got E twice, but no U. Not that that would have an impact on your X homing.

                  Can you try copy and paste your homeall.g commands into the console one line at a time and see if it still has the same problem with the second move?

                  Z-Bot CoreXY Build | Thingiverse Profile

                  1 Reply Last reply Reply Quote 0
                  • deckingmanundefined
                    deckingman @Stevtommo
                    last edited by

                    @Stevtommo Hmm, that's an odd one and I don't see anything wrong with your files. The fact that fast homing works fine but slow homing does not, also indicates that your configuration must be sound. You are sure that you corrected the H4 to be H1 yes? You haven't inadvertently typed HI (capital "I" instead of the number "1")?

                    Other than that, it looks like you have the switches wired normally closed so they must go open circuit to trigger. One possibility is that the switch is "sticky" so the longer fast move triggers the switch but it remains triggered when you back off. Then when you do the slow move, the switch is already triggered so the move stops immediately. That would manifest itself itself if there was no movement in X when doing the slow homing move, but not if there is some movement. Still, it might worth backing off say 20mm instead of 10mm just in case there is too much mechanical hysteresis in the switch. Another possibility might be a bad crimp or other wiring issues which causes the firmware to "see" an open circuit prematurely. But it's difficult to see how that could be the case given that fast homing works reliably and repeatedly. Still it might be worth checking for a bad connection somewhere.

                    One other possibility is that the end stop inputs have a pull-up resistor. If that was weak of faulty then the input might "float" and cause miss triggering. Again, that doesn't stack up with the fact that fast homing is always reliable but it might be worth trying a different end stop input if you have one available.

                    Ian
                    https://somei3deas.wordpress.com/
                    https://www.youtube.com/@deckingman

                    1 Reply Last reply Reply Quote 0
                    • Stevtommoundefined
                      Stevtommo
                      last edited by

                      @Phaedrux - great catch, thank you for the U-axis catch.

                      • I added a dwell (G4 P2000) between each command so I could see what was being done and also reported, and I've also done as you say with the console.
                      • The issue is definitely the second move, which ends abruptly, and seemingly randomly.
                        -- H1 X-100 F360

                      @deckingman - Thank you for weighing in, I really appreciate it.

                      • I've definitely changed the H4 back to H1 (Checked it for 1 vs I, and yep I'm good there too)
                      • I've checked the switches for hysteresis, and they're all lightning quick (I've just been manually tripping them to fool the homing process when the head's nowhere near. Wherever the head is on the bed, it acts the same way
                      • I've been watching the 'object model' to see if/when the stops get triggered, and they (X,Y) DO for the first move, but only the Y gets triggered for the second.
                      • I've swapped the X and Y stops on the board and remapped them, and I have the same behavior.
                      • I've just checked the wiring again, and it all looks solid.
                      deckingmanundefined 1 Reply Last reply Reply Quote 0
                      • Phaedruxundefined
                        Phaedrux Moderator
                        last edited by

                        And it's definitely not a grub screw slipping on the motor pulley?

                        Z-Bot CoreXY Build | Thingiverse Profile

                        1 Reply Last reply Reply Quote 0
                        • Stevtommoundefined
                          Stevtommo
                          last edited by

                          @Phaedrux

                          Apologies I meant to add to this earlier. I've checked all the grubscrews, and they're rock-solid.

                          I'm frankly amazed how much torque the NEMA17's have in this COREXY configuration. I've tried to stall them by holding onto the carriage but they pull right through.

                          1 Reply Last reply Reply Quote 0
                          • Phaedruxundefined
                            Phaedrux Moderator
                            last edited by

                            Can you show some photos of the printer and/or a video of the homing in action?

                            Z-Bot CoreXY Build | Thingiverse Profile

                            1 Reply Last reply Reply Quote 0
                            • deckingmanundefined
                              deckingman @Stevtommo
                              last edited by

                              @Stevtommo said in Fine Homing on X doesn't work:

                              ,,................I've been watching the 'object model' to see if/when the stops get triggered, and they (X,Y) DO for the first move, but only the Y gets triggered for the second.

                              That could be significant. If the G1 H1 X-n move gets executed, what should happen is that the carriage moves until the endstop triggers. If the endstop never triggers, then the carriage would continue to move after it had crashed into the frame. So logically, the only possible explanation for the endstop not trigggering and carriage not crashing into the frame, is that the G1 H1 X-n move does not get executed. Suggest you delete that G1 H1 X-n move and re-type it in case there is a hidden character which is screwing things up. Or you could add M400 after the Y axis move which would wait for that move to complete before doing the X axis move (although that shouldn't be necessary).

                              Ian
                              https://somei3deas.wordpress.com/
                              https://www.youtube.com/@deckingman

                              1 Reply Last reply Reply Quote 0
                              • Stevtommoundefined
                                Stevtommo
                                last edited by

                                @Phaedrux , good idea 🙂 I've hosted them here, along with videos showing some wierd behaviour - more on that below... Google Drive

                                @deckingman - 100% agree. Why does executing the same command not elicit the same response? I 'feel like' the machine is holding onto a guess of where 0,0 is after rough homing and is trying to predict it rather than use the stops.

                                Retyping the line didn't make a difference, nor did the use of M400 between commands.

                                What I discovered this evening that does seem to 'work' is the following, and I can't make heads or tails of it... 😲

                                1. Rough pass X,Y similtaneously (Always triggers the stops):
                                G1 H1 X-425 Y-365 F1800 ; move quickly to X or Y endstop and stop there (first pass)
                                G1 H1 X-425             ; home X axis
                                G1 H1 Y-365             ; home Y axis
                                
                                1. Trying to fine tune the X position (Always fails):
                                G1 H1 X-100 F360        ; move slowly to X axis endstop once more (second pass)
                                
                                1. Going for a Y home (Always triggers):
                                G1 H1 Y-365             ; then move slowly to Y axis endstop
                                
                                1. Then doing X again (mostly triggers):
                                G1 H1 X-100 F360        ; move slowly to X axis endstop once more (second pass)
                                
                                1. Doing X again-again (99% sure this is capturing all)
                                G1 H1 X-100 F360        ; move slowly to X axis endstop once more (second pass)
                                
                                deckingmanundefined Stevtommoundefined 2 Replies Last reply Reply Quote 0
                                • deckingmanundefined
                                  deckingman @Stevtommo
                                  last edited by

                                  @Stevtommo On a CoreXY, this command G1 H1 X-425 Y-365 F1800 will move both the X and Y axis until one or other end stop switch triggers (that's why it must always be followed by individual X and Y axis moves).

                                  So it could be that the Y axis always triggers which stops further movement of both axes but the X axis does not trigger. i.e, it could be simply that there is something "flaky" with X axis endstop. You could test that theory by positioning the carriage such that it is a long way away from the Y end stop but fairly close to the X end stop, then doing that combined XY H1 move. If the X end stop doesn't trigger, then the carriage should hit the frame in the X direction and attempt to continue that move.

                                  Do you have another microswitch that you could try?

                                  Ian
                                  https://somei3deas.wordpress.com/
                                  https://www.youtube.com/@deckingman

                                  Stevtommoundefined 1 Reply Last reply Reply Quote 0
                                  • Phaedruxundefined
                                    Phaedrux Moderator
                                    last edited by

                                    I don't see anything obvious from the videos.

                                    Can you try this? Rename your current homeall.g to make a backup. Then create a new macro file and name it homeall.g. In there just have

                                    G28 X
                                    G28 Y
                                    G28 Z

                                    That will call your other homing macros.

                                    Same behaviour?

                                    If you watch the X axis endstop light on the board (if your board has the LED, not all do I think) does it light up when homing X?

                                    Z-Bot CoreXY Build | Thingiverse Profile

                                    Stevtommoundefined 1 Reply Last reply Reply Quote 0
                                    • A Former User?
                                      A Former User
                                      last edited by

                                      This post is deleted!
                                      1 Reply Last reply Reply Quote 0
                                      • Stevtommoundefined
                                        Stevtommo @Stevtommo
                                        last edited by

                                        @deckingman - good idea 🙂 I did already swap in other X end-stop switches to no avail. Given the switches have a 100% success rate in catching the rough-passes, I can't see how it's anything electro-mechanical at this point.

                                        To your other point, the system is failing to execute the latter X-move when both axes have just been successfully homed and positioned at X,Y:10,10. It fails when only one axis is being asked to move, namely

                                        G1 H1 X-100 F360
                                        

                                        So...what I'm finding is (and I fully appreciate that this looks odd) that if I repeat the request multiple times in a row, while splitting up the drive it's addressing, seems to be catching the error every time (I've done 30 home cycles and it's 'jerky' but it works.

                                        G1 H1 X-100 F360
                                        G1 H1 Y-100 F360
                                        G1 H1 X-100 F360
                                        G1 H1 Y-100 F360
                                        G1 H1 X-100 F360
                                        ...         
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • Stevtommoundefined
                                          Stevtommo @Phaedrux
                                          last edited by

                                          Hey there @Herve_Smith,

                                          Thanks for the suggestion, I tried this out. My printer fails exactly in the same place, the fine-homing move. It just stops somewhere along the axis (does not show activation of XStop in object-model, light on the board does not light up as the circuit remains closed, and it then merrily executes the next line...

                                          G1 H1 X-455 F360     ; Slowly move to the X axis endstop once more (Fine Adjustment)
                                          

                                          😵

                                          1 Reply Last reply Reply Quote 0
                                          • Stevtommoundefined
                                            Stevtommo @deckingman
                                            last edited by Stevtommo

                                            @Phaedrux, same bad behavior... G28 X is the problem.

                                            The below sometimes solves it, but it's not repeatable... Appreciate your thoughts.

                                            Without lines 9,10,11 in there, the X-axis just refuses to engage the end-stop.

                                            G91               ; relative positioning
                                            G1 H2 Z5 F6000    ; lift Z relative to current position
                                            G1 H1 X-325 F1800 ; move quickly to X axis endstop and stop there (first pass)
                                            
                                            G1 X10 F6000       ; go back a few mm
                                            
                                            G1 H1 X-325 F360  ;try fine-homing (fails)
                                            
                                            G1 H1 Y-0.1 F360  ; jiggle the y-axis one way
                                            G1 H1 X-325 F360  ; try to fine home X axis again (seems to always succeed)
                                            G1 H1 Y0.1 F360  ;  jiggle the y-axis back
                                            
                                            G1 H2 Z-5 F6000   ; lower Z again
                                            G90               ; absolute positioning
                                            
                                            deckingmanundefined 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA