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

    Z Homing Problem

    Scheduled Pinned Locked Moved
    General Discussion
    4
    10
    758
    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.
    • osubeaverundefined
      osubeaver
      last edited by

      I am running a Duet Ethernet on a Tronxy X5SA. Firmware 2.02(not beta). The printer is a mostly stock corexy with the only modifications being the AC bed heater and relay. I also have the two stock Z motors wired independently to the Z and E1 drivers. I initially set it up with a micro switch Z end stop then changed to the stock Tronxy IR probe. I had it printing first with the end stop and then with the probe but I could never get the bed mesh compensation to work properly. So I decided to start fresh with new sys files to eliminate any possibility of conflicting commands related to changing from switch to probe.

      It appears I've made my problems worse. My problem now is that I can home X and Y but when I go to home Z, the carriage remains at 0,0 which in my case means the probe is not above the bed. It runs the G30 command but since the probe isn't over the bed, the Z movement only stops when I trigger the probe with a metal object. It seemed that the XY command to move probe to the probe point was being ignored so I added S2 to the G1 command that sends the probe to the probe location. The only change that made was that it now moves the probe to the X point specified but stays at zero in the Y axis. The other odd behavior is that I cannot command any X or Y movement from the web control even with all axes homed. Requests for movement in the Z axis seem to be processed correctly.

      Any thoughts?

      Here's my config.g:
      ; Configuration file for Duet Ethernet (firmware version 1.21)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool on Wed Apr 17 2019 13:07:38 GMT-0700 (Pacific Daylight Time)

      ; General preferences
      G90 ; Send absolute coordinates...
      M83 ; ...but relative extruder moves

      M667 S1 ; Select CoreXY mode

      ; Network
      M550 PTronxy X5SA ; Set machine name
      M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP
      M586 P0 S1 ; Enable HTTP
      M586 P1 S0 ; Disable FTP
      M586 P2 S0 ; Disable Telnet

      ; Drives
      M569 P0 S0 ; Drive 0 goes forwards
      M569 P1 S0 ; Drive 1 goes forwards
      M569 P2 S0 ; Drive 2 goes backwards
      M569 P3 S0 ; Drive 3 goes backwards
      M569 P4 S0
      M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
      M92 X80 Y80 Z400 E98 ; Set steps per mm
      M566 X600 Y600 Z12 E120 ; Set maximum instantaneous speed changes (mm/min)
      M203 X18000 Y18000 Z180 E1500 ; Set maximum speeds (mm/min)
      M201 X3000 Y3000 Z100 E10000 ; Set accelerations (mm/s^2)
      M906 X1200 Y1200 Z950 E950 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 X330 Y320 Z400 S0 ; Set axis maxima

      ; Endstops
      M574 X1 Y1 S0 ; Set active low endstops

      ; Z-Probe
      M574 Z1 S2 ; Set endstops controlled by probe
      M558 P1 H5 F120 T6000 I1 ; Set Z probe type to unmodulated and the dive height + speeds
      G31 P500 X-10 Y-33 Z2.5 ; Set Z probe trigger value, offset and trigger height
      M557 X35:295 Y35:295 S65 ; Define mesh grid

      ; Heaters
      M305 P0 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 0
      M143 H0 S120 ; Set temperature limit for heater 0 to 120C
      M305 P1 T100000 B4138 C0 R4700 ; Set thermistor + ADC parameters for heater 1
      M143 H1 S280 ; Set temperature limit for heater 1 to 280C

      ; Fans
      M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
      M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
      M106 P2 S1 I0 F500 H1 T45 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on

      ; Tools
      M563 P0 D0 H1 ; 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

      ; Automatic power saving
      M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss

      ; Dual Z Motors
      ...
      M584 X0 Y1 Z2:4 ; two Z motors connected to driver outputs Z and E1
      M671 X-90:420 Y0:0 S0.5 ; leadscrews at left and right of X axis
      M208 X0:320 Y0:330 ; X carriage moves from -5 to 205, Y bed goes from 0 to 200
      ...

      ; Custom settings are not configured

      and my homez.g

      ; homez.g
      ; called to home the Z axis
      ;
      ; generated by RepRapFirmware Configuration Tool on Wed Apr 17 2019 13:07:38 GMT-0700 (Pacific Daylight Time)
      G91 ; relative positioning
      G1 Z5 F6000 S2 ; lift Z relative to current position
      G90 ; absolute positioning
      G1 X165 Y165 F6000 S2 ; go to first probe point
      G30 ; home Z by probing the bed

      ; Uncomment the following lines to lift Z after probing
      ;G91 ; relative positioning
      ;G1 S2 Z5 F100 ; lift Z relative to current position
      ;G90 ; absolute positioning

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

        It sounds like you may have some motor directions reversed?

        Do you have the old config files backed up somewhere still to compare against?

        If you read through this section: https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter#Section_Movement_section
        you'll be able to test that each motor is turning in the right direction.

        Then using the guide that 0,0 is in the front left corner of the bed you can determine the position and direction of the endstops and make sure the homing files are moving them in the right direction.

        M208 X0:320 Y0:330 ; X carriage moves from -5 to 205, Y bed goes from 0 to 200

        This part of your config doesn't make much sense to me since you've already got your Axis limits set farther up.

        Can you post the rest of your homing files as well?

        Using the S2 commands in homez is actually a little risky, because it lets you move X and Y to an absolute location that you can't guarantee is accurate if they aren't homed. It's less risky to allow motion for the Z axis since you can only move it in one axis and it's hopefully just lifting it out of the way.

        It would be far safer to remove the S2 command from the XY move in homez. That would mean you'd have to home X and Y first which shouldn't take long, or use homeall instead.

        Z-Bot CoreXY Build | Thingiverse Profile

        1 Reply Last reply Reply Quote 0
        • osubeaverundefined
          osubeaver
          last edited by

          I made some progress finally. I think I was actually on a beta version of firmware so I flashed a stable 2.02 release and that seems to have eliminated most of the problem. I haven't dug into it yet but there still seems to be an issue with movement commands being ignored but I think it only happens during a "tool change". I only have just the one hot end so there's no need for the lockout but I haven't looked into how to disable that.

          I was able to delete the S2 parameter so no worries there.

          I'm not sure about the need for the M208 command either. I copied that in from the Duet3D page regarding dual Z motors and modified the limits to suit my printer. But I'm not sure why its needed.

          botundefined 1 Reply Last reply Reply Quote 0
          • botundefined
            bot @osubeaver
            last edited by

            @osubeaver

            M208 defines the axis limits. It defines your end stop switch’s location and the movement allowed away from it.

            There is a list of gcode commands in the duet docs that describes the function of every gcode. I suggest you check it out when you don’t understand what a command is doing. You should ultimately understand every single aspect of every command in all of your /sys files.

            *not actually a robot

            osubeaverundefined 1 Reply Last reply Reply Quote 0
            • osubeaverundefined
              osubeaver @bot
              last edited by

              @bot said in Z Homing Problem:

              There is a list of gcode commands in the duet docs that describes the function of every gcode. I suggest you check it out when you don’t understand what a command is doing. You should ultimately understand every single aspect of every command in all of your /sys files.

              Good advise. With the help from this forum and other online documentation I'm learning as I go. Forgive me if I'm not quite there yet.

              I guess I should have been more clear that I wasn't sure about the need for the additional M208 since it's already defined in my config.g. I was really just replying to Phaedrux's comment. I still don't know but I'll try commenting out the added M208 and see how that works.

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

                M208 can be formatted in two ways. The first way uses the S1 and S2 switch to define the min and max values, the second way uses X#:# Y#:# to define the coordinates of the axis limits.

                You can do it either way. I was just curious why you had both ways. It won't affect anything unless they are different. The last command issued chronologically is the one that takes effect.

                Z-Bot CoreXY Build | Thingiverse Profile

                1 Reply Last reply Reply Quote 0
                • botundefined
                  bot @osubeaver
                  last edited by

                  @osubeaver said in Z Homing Problem:

                  @bot said in Z Homing Problem:

                  There is a list of gcode commands in the duet docs that describes the function of every gcode. I suggest you check it out when you don’t understand what a command is doing. You should ultimately understand every single aspect of every command in all of your /sys files.

                  Good advise. With the help from this forum and other online documentation I'm learning as I go. Forgive me if I'm not quite there yet.

                  I guess I should have been more clear that I wasn't sure about the need for the additional M208 since it's already defined in my config.g. I was really just replying to Phaedrux's comment. I still don't know but I'll try commenting out the added M208 and see how that works.

                  Lol.. oops. Sorry about that!

                  *not actually a robot

                  osubeaverundefined 1 Reply Last reply Reply Quote 0
                  • DennisHallundefined
                    DennisHall
                    last edited by

                    Have a look at my exact same Z-Probe.
                    My issue is resolved when printing on the original TronXY bed with 3mm glass:
                    https://forum.duet3d.com/topic/10048/adding-a-tronxy-xy-08n-inductive-sensor-min-z-stop

                    This will resolve your issue and the thread identifies the electrical hookups and the gcode settings for your config.g

                    I'm sure this will solve your issue as well.

                    osubeaverundefined 1 Reply Last reply Reply Quote 1
                    • osubeaverundefined
                      osubeaver @DennisHall
                      last edited by

                      @dennishall

                      Thanks!

                      1 Reply Last reply Reply Quote 0
                      • osubeaverundefined
                        osubeaver @bot
                        last edited by

                        @bot

                        No worries! I appreciate all the help I can get.

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