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

Traveling Z offset

Scheduled Pinned Locked Moved
General Discussion
7
24
1.7k
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
    bmveee
    last edited by 28 Jun 2019, 23:32

    Hello everyone,

    A friend of mine and I recently observed some strange behavior relating to the Z offset. We both use G10 to set our Z offset from config.g and it generally works great. However, what both he and I observed was that whenever we either reboot the Duet controller or physically power cycle the power on the PSU the z offset ends up being off by some amount causing the bed to be too high or too low which means the offset has to be reset to 0 and re-measured.

    I have a Duet2 Wifi with Duex5 board, my friend has a Duet2 ethernet with Duex5. I'm on Firmware 2.02(RTOS) (2018-12-24b1) he is on 2.03 (2019-06-13b2)

    Any ideas what may be happening here?

    1 Reply Last reply Reply Quote 0
    • undefined
      duetal
      last edited by 28 Jun 2019, 23:33

      I'm the friend 🙂

      1 Reply Last reply Reply Quote 0
      • undefined
        Veti
        last edited by 29 Jun 2019, 08:23

        what kind of probe are you using?

        it could be because of misalignment due to the power loss for the z motors.
        one way is to use this
        https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors

        1 Reply Last reply Reply Quote 0
        • undefined
          duetal
          last edited by 29 Jun 2019, 12:22

          We are using BLtouch version 2. We have Railcore II 300zl printers and do use G32 to level the bed. It levels fine but we need to adjust the starting height often that's what the issue is

          1 Reply Last reply Reply Quote 0
          • undefined
            Veti
            last edited by 29 Jun 2019, 12:51

            The offset should be adjusted via the G31 Z Parameter.

            can you post a picture of a mesh bed leveling?

            1 Reply Last reply Reply Quote 0
            • undefined
              duetal
              last edited by 29 Jun 2019, 13:08

              Sure
              0_1561813680053_mesh.png

              1 Reply Last reply Reply Quote 0
              • undefined
                Veti
                last edited by 29 Jun 2019, 13:30

                @bmveee said in Traveling Z offset:

                G10

                thats seems perfectly flat.

                my suggestion is to try using G31 instead of G10 for the offset.

                1 Reply Last reply Reply Quote 0
                • undefined
                  bmveee
                  last edited by 29 Jun 2019, 13:52

                  We were initially using G31 and switched to G10 on suggestion of a couple of members of Railcore team. What is the difference between the two in terms of accuracy and purpose?

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    Veti
                    last edited by 29 Jun 2019, 15:57

                    the g10 is for multible tools. as far as i know there railcore ii only has 1 extruder

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      Veti
                      last edited by 29 Jun 2019, 16:30

                      also please post your config, overwrite and all your homing files

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        duetal
                        last edited by 29 Jun 2019, 18:20

                        Config-override.g
                        ; config-override.g file generated in response to M500 at 2019-06-28 20:57
                        ; This is a system-generated file - do not edit
                        ; Heater model parameters
                        M307 H0 A274.3 C798.5 D9.1 S1.00 V24.1 B0
                        M307 H1 A304.7 C170.2 D4.6 S1.00 V0.0 B0
                        M307 H2 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                        M307 H4 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                        M307 H5 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                        M307 H6 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                        M307 H7 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                        G10 L2 P1 X0.00 Y0.00 Z0.00
                        G10 L2 P2 X0.00 Y0.00 Z0.00
                        G10 L2 P3 X0.00 Y0.00 Z0.00
                        G10 L2 P4 X0.00 Y0.00 Z0.00
                        G10 L2 P5 X0.00 Y0.00 Z0.00
                        G10 L2 P6 X0.00 Y0.00 Z0.00
                        G10 L2 P7 X0.00 Y0.00 Z0.00
                        G10 L2 P8 X0.00 Y0.00 Z0.00
                        G10 L2 P9 X0.00 Y0.00 Z0.00

                        Homez.g
                        G91
                        G1 Z5 F800 S2
                        G90
                        G1 X150 Y150 F2400
                        G30
                        G1 Z2 F200

                        homey.g
                        G91
                        G1 Z4 F200 S2
                        G1 Y-320 F3000 S1
                        G1 Y4 F600
                        G1 Y-10 S1
                        G1 Z-4 F200 S2
                        G90

                        homex.g
                        G91
                        G1 Z4 F200 S2
                        G1 X-320 F3000 S1
                        G1 X4 F600
                        G1 X-10 S1
                        G1 Z-4 F200 S2
                        G90

                        homeall.g
                        M98 P"homex.g"
                        M98 P"homey.g"
                        M98 P"homez.g"

                        config.g
                        ; Configuration file for My Printer
                        ; Communication and general
                        M111 S1 ; Debug (S1 is on S0 is off)
                        M929 P"eventlog.txt" S1 ; start logging to file eventlog.txt
                        M550 PRailCore ; Machine name and Netbios name (can be anything you like)
                        M586 P1 S1
                        ;M551 Pmyrap ; Machine password (used for FTP)
                        ;*** If you have more than one Duet on your network, they must all have different MAC addresses, so change the last digits
                        M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xEE ; MAC Address
                        ;*** Wifi Networking
                        M552 S1 ; Enable WiFi
                        M555 P2 ; Set output to look like Marlin
                        M575 P1 B57600 S1 ; Comms parameters for PanelDue

                        G21 ; Work in millimetres
                        G90 ; Send absolute coordinates...
                        M83 ; ...but relative extruder moves

                        ; Axis and motor configuration
                        M667 S1 ; CoreXY mode

                        M584 X0 Y1 Z5:6:7 E3:4:8:9 ; Map Z to drivers 5, 6, 7. Define unused drivers 3,4,8 and 9 as extruders
                        M569 P0 S1 ; Drive 0 goes forwards (change to S0 to reverse it) X stepper
                        M569 P1 S0 ; Drive 1 goes backwards Y Stepper
                        M569 P2 S1 ; Drive 2 goes forwards Unused
                        M569 P3 S1 ; Drive 3 goes forwards Extruder
                        M569 P4 S1 ; Drive 4 goes forwards Extruder (unused)
                        M569 P5 S1 ; Drive 5 goes backwards Front Left Z
                        M569 P6 S1 ; Drive 6 goes backwards Rear Left Z
                        M569 P7 S0 ; Drive 7 goes backwards Right Z

                        ;Leadscrew locations
                        M671 X-10:-10:333 Y22.5:277.5:150 S7.5 ;Front left, Rear Left, Right S7.5 is the max correction - measure your own offsets, to the bolt for the yoke of each leadscrew

                        M350 X16 Y16 Z16 E16 I1 ; set 16x microstepping for axes& extruder, with interpolation
                        M574 X1 Y1 Z0 S1 ; set homing switch configuration (x,y at min, z at max) IF YOU NEED TO REVERSE YOUR HOMING SWITCHES CHANGE S1 to S0
                        M906 X1400 Y1400 Z1000 E940 I60 ; Set motor currents (mA) - 6/26/2019 LDO E940 from E1250 Per John
                        M201 X1750 Y1750 Z100 E1500 ; Accelerations (mm/s^2) Original 3000
                        M203 X24000 Y24000 Z900 E3600 ; Maximum speeds (mm/min) Original 1000
                        M566 X600 Y600 Z100 E1500 ; Maximum jerk speeds mm/minute - Original E20 changed on 2/27/2019
                        M208 X290 Y290 Z300 ; set axis maxima and high homing switch positions (adjust to suit your machine)
                        M208 X0 Y0 Z-0.5 S1 ; set axis minima and low homing switch positions (adjust to make X=0 and Y=0 the edges of the bed)
                        M92 X200 Y200 Z1600 E828 ; steps/mm, X/Y may be more around 201.5 for accuracy old: E837
                        M557 X25:275 Y45:275 S75

                        ; Thermistors
                        ;M305 P0 T100000 B4240 R4700 H0 L0 ; Put your own H and/or L values here to set the bed thermistor ADC correction
                        ;M305 P1 T100000 B4240 R4700 H0 L0 ; Put your own H and/or L values here to set the first nozzle thermistor ADC correction
                        M305 P0 S"Kenovo-Bed" T100000 B3950 R4700 H0 L0 ; as per FB/discord discussion
                        M305 P1 S"E3D30WHotend" T100000 B4725 C7.06e-8 R4700 H0 L0 ; on 5/2/2019

                        M307 H0 A274.3 C798.5 D9.1 S1.00 V24.1 B0 ; Bed Heaters original value M307 H0 A283.4 C955.7 D8.5 S1.00 V24.1 B0 PID Tuned: 5/2/2019 ak
                        M307 H1 A304.7 C170.2 D4.6 B0 S1.0 ;Heater 1 model - original value M307 H1 A327.2 C173.2 D5.4 B0 S1.0 PID tuned: 2/28/2019 ak
                        M570 S360 ; Hot end may be a little slow to heat up so allow it 180 seconds
                        M143 S300

                        ; Fans
                        M106 P0 H-1 ; disable thermostatic mode for fan 0
                        M106 P4 T35 S255 H1 ; P1 to P3
                        M106 P2 H-1
                        M106 P0 S0 ; turn off fans
                        ;M106 P1 S0
                        M106 P2 S0

                        ; Tool definitions
                        M563 P0 D0 H1 S"E3D Gold" ; Define tool 0
                        G10 P0 S0 R0 ; Set tool 0 operating and standby temperatures
                        M591 D0 P1 C10 S1 ; Filament runout sensor Duex5 E2 endstop 3/19/2019
                        ;*** If you have a single-nozzle build, comment the next 2 lines
                        ;M563 P1 D1 H2 ; Define tool 1
                        ;G10 P1 S0 R0 X0 Y17 ; Set tool 1 operating and standby temperatures

                        ; Z probe and compensation definition
                        ;*** If you have a switch instead of an IR probe, change P1 to P4 in the following M558 command
                        ; M558 P1 X0 Y0 Z1 ; Z probe is an IR probe and is not used for homing any axes
                        ; G31 X0 Y30 Z2.00 P500 ; Set the zprobe height and threshold (put your own values here)

                        ;BLTouch - leave commented out if using a IR Probe
                        M307 H3 A-1 C-1 D-1
                        M558 P9 H5 R1 F50 T6000 A5 S0.02 B1
                        ;G31 X2 Y42 Z2.6 P25 ; Customize your offsets appropriately. 2/28/2019 plated copper nozzle 3/15/2019 -commented out for G10

                        M208 S1 Z-5 ; set minimum Z 3/15/2019 M208 S1 Z-0.2
                        ;
                        T0 ; select first hot end
                        G31 X2 Y42 Z0 P25 ; reset Z0 for G10
                        G10 L1 P0 Z2.55 ; added 3/15/2019 2.65, 6/26/2019 - 2.25

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          Phaedrux Moderator
                          last edited by 29 Jun 2019, 18:30

                          I'd definitely stick to G31 for the Z offset.

                          I'm not sure what kinds of weird behaviour you'd be getting. G30 and G29 would be using the offset from G31, and then your G10 offset would be getting applied after. That's a confusing way to go about it.

                          What was the reasoning around using G10 instead of G31? @jstevewhite @kraegar

                          undefined undefined 2 Replies Last reply 29 Jun 2019, 21:06 Reply Quote 0
                          • undefined
                            duetal @Phaedrux
                            last edited by 29 Jun 2019, 21:06

                            @phaedrux no reasoning other then reading @jstevewhite suggestion. I took out G31 offset and only G10 L1 gets applied. I can switch it back to G31 but same behavior was present with G31 before switching to G10

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              Phaedrux Moderator
                              last edited by Phaedrux 29 Jun 2019, 21:07

                              This may be the same issue that he had been posting about here just the other week.

                              https://forum.duet3d.com/topic/10916/weird-bed-mesh-behavior-after-z-leveling

                              undefined 2 Replies Last reply 29 Jun 2019, 21:08 Reply Quote 0
                              • undefined
                                duetal @Phaedrux
                                last edited by 29 Jun 2019, 21:08

                                This post is deleted!
                                1 Reply Last reply Reply Quote 0
                                • undefined
                                  Phaedrux Moderator
                                  last edited by 29 Jun 2019, 21:08

                                  This post is deleted!
                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    duetal @Phaedrux
                                    last edited by 29 Jun 2019, 21:10

                                    @phaedrux interesting didn't see that one. let me read it. Thank you

                                    1 Reply Last reply Reply Quote 0
                                    • undefined
                                      jstevewhite @Phaedrux
                                      last edited by 30 Jun 2019, 02:34

                                      @phaedrux

                                      Tool offsets are critical to the eventual application of the tool changer to the RailCore chassis. G31 is for PROBE offset - which is fine if you have only one tool, but if you have multiple tools, it's insufficient for configuration.

                                      That's what got me testing it. While testing it, it became clear that the tool offset is MUCH more user friendly. You'll note that bmveee had the same issue prior to switching to the G10 tool offset process, and the issue in the other post that you mention occurred with G31 and G10 tool offset as well.

                                      If G10 doesn't function properly, it's still broken, even if you can work around it with G31. I don't think that's related to this issue, though, but there's certainly something strange going on. The M500 wasn't saving the tool offset like it's supposed to. Specifically, in my gcode console I can issue:

                                      G10 L1 P0

                                      and get:

                                      G10 L1 P0
                                      Tool 0 offsets: X0.00 Y0.00 Z1.70, active/standby temperature(s): 0.0/0.0

                                      This is mirrored in my config-override.g:

                                      ; config-override.g file generated in response to M500 at 2019-06-27 16:10
                                      ; This is a system-generated file - do not edit
                                      ; Heater model parameters
                                      M307 H0 A90.0 C700.0 D10.0 S1.00 V0.0 B0
                                      M307 H1 A618.9 C194.1 D4.1 S1.00 V24.3 B0
                                      M307 H2 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                                      M307 H5 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                                      M307 H6 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                                      M307 H7 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                                      ; Probed tool offsets
                                      G10 P0 Z1.70
                                      G10 L2 P1 X0.00 Y0.00 Z0.00
                                      G10 L2 P2 X0.00 Y0.00 Z0.00
                                      G10 L2 P3 X0.00 Y0.00 Z0.00
                                      G10 L2 P4 X0.00 Y0.00 Z0.00
                                      G10 L2 P5 X0.00 Y0.00 Z0.00
                                      G10 L2 P6 X0.00 Y0.00 Z0.00
                                      G10 L2 P7 X0.00 Y0.00 Z0.00
                                      G10 L2 P8 X0.00 Y0.00 Z0.00
                                      G10 L2 P9 X0.00 Y0.00 Z0.00

                                      while troubleshooting with bmveee or duetal (I think that's mspal from our discord 😄 ) I noted that M500 never wrote their tool offset to the config-override.g. This is unexpected behavior, and is sufficient in and of itself to result in unpredictable behavior. That's when I recommended they post in the duet forums.

                                      Specifically, I had one of them put M501 at the end of their config.g (This should load config override). Then issue:

                                      G10 L1 P0 Znnn.n (insert number here)
                                      then
                                      M500
                                      and the entry does not appear in config-override.g as it should. This is clearly a problem, but I can't seem to figure out why. Mine works as expected.

                                      1 Reply Last reply Reply Quote 1
                                      • undefined
                                        duetal
                                        last edited by 30 Jun 2019, 03:16

                                        yep thats me 🙂 My config-override.g file was time stamped when i did M500 but G10 L1 P0 was not saved into it. I tried it multiple times and ended up removing M501 from the config.g

                                        This is my config-override.g
                                        ; config-override.g file generated in response to M500 at 2019-06-28 20:57
                                        ; This is a system-generated file - do not edit
                                        ; Heater model parameters
                                        M307 H0 A274.3 C798.5 D9.1 S1.00 V24.1 B0
                                        M307 H1 A304.7 C170.2 D4.6 S1.00 V0.0 B0
                                        M307 H2 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                                        M307 H4 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                                        M307 H5 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                                        M307 H6 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                                        M307 H7 A340.0 C140.0 D5.5 S1.00 V0.0 B0
                                        G10 L2 P1 X0.00 Y0.00 Z0.00
                                        G10 L2 P2 X0.00 Y0.00 Z0.00
                                        G10 L2 P3 X0.00 Y0.00 Z0.00
                                        G10 L2 P4 X0.00 Y0.00 Z0.00
                                        G10 L2 P5 X0.00 Y0.00 Z0.00
                                        G10 L2 P6 X0.00 Y0.00 Z0.00
                                        G10 L2 P7 X0.00 Y0.00 Z0.00
                                        G10 L2 P8 X0.00 Y0.00 Z0.00
                                        G10 L2 P9 X0.00 Y0.00 Z0.00

                                        dc42undefined 1 Reply Last reply 30 Jun 2019, 09:16 Reply Quote 0
                                        • dc42undefined
                                          dc42 administrators @duetal
                                          last edited by 30 Jun 2019, 09:16

                                          G10 tool offsets are only written by M500 if they were measured by probing or they were read from config-override.g.

                                          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

                                          undefined 1 Reply Last reply 30 Jun 2019, 18:48 Reply Quote 0
                                          8 out of 24
                                          • First post
                                            8/24
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA