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

    Chiron+Duet3+BlTouch

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    4
    48
    2.1k
    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.
    • Phaedruxundefined
      Phaedrux Moderator
      last edited by

      There are some problems in there. I'll reply again when I'm back at my PC later.

      Z-Bot CoreXY Build | Thingiverse Profile

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

        It's a bit hard to tell from your copy and paste which files are which. It looks like the homing files got pasted into the config.g portion? And that all might be in the middle of bed.g?

        
        M98 P"homeall.g"                ; run home all command
        
        G30 P0 X42 Y0 Z-99999           ; probe near a leadscrew , the left one
        G30 P1 X400 Y0 Z-99999 S2       ; probe near oposite leadscrew and calibrate 2 motors
        

        Where is that from?

        In homeall.g don't use M280 P0 S90 to retract the pin. Use M402 instead. That way the firmware is made aware of the pin retraction.

        Also in homeall and homez, G30 H1 Z-455 F360 is not a valid way to use G30. It's just G30 by itself. The speed is set by the M558 command in your config.g. The H1 etc etc will be ignored probably.

        Z-Bot CoreXY Build | Thingiverse Profile

        razrudyundefined 1 Reply Last reply Reply Quote 0
        • razrudyundefined
          razrudy @Phaedrux
          last edited by

          @Phaedrux said in Chiron+Duet3+BlTouch:

          It's a bit hard to tell from your copy and paste which files are which. It looks like the homing files got pasted into the config.g portion? And that all might be in the middle of bed.g?

          
          M98 P"homeall.g"                ; run home all command
          
          G30 P0 X42 Y0 Z-99999           ; probe near a leadscrew , the left one
          G30 P1 X400 Y0 Z-99999 S2       ; probe near oposite leadscrew and calibrate 2 motors
          

          Where is that from?

          This is just a macro I am using to home all and level the gantry. My plan is/was to use this and after that to run G32 or just a single probe and load height map. I level the bed with the stock endstops because I know they are in the same spot always and to make sure the things are as square as possible. After I am doing this I disable the stock end stops and use only the BLT......because the stock endstops are about 7-9mm above bed surface...still trying to figure out how can I use them always and use the BLT only for mesh compensation

          In homeall.g don't use M280 P0 S90 to retract the pin. Use M402 instead. That way the firmware is made aware of the pin retraction.

          Ok I will change this.....

          Also in homeall and homez, G30 H1 Z-455 F360 is not a valid way to use G30. It's just G30 by itself. The speed is set by the M558 command in your config.g. The H1 etc etc will be ignored probably.

          Yes everything is ignored after G30....just copied the normal end stops and changed G1 to G30

          bed.g
          config.g
          config-override.g
          deployprobe.g
          homeall.g
          homex.g
          homey.g
          homez.g
          level_gantry.g
          pause.g
          resume.g
          retractprobe.g
          sleep.g stop.g

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

            This post is deleted!
            1 Reply Last reply Reply Quote 1
            • Phaedruxundefined
              Phaedrux Moderator
              last edited by Phaedrux

              In homex: The G1 Z5 should have H2, otherwise it will complain if Z isn't homed first. Also remove the G90 and second G91. You just need to be in relative mode for those moves. Also, if you're using stall detection on X and Y, it's pointless to do a back off and second homing pass. A single fast homing pass is all you need.

              ;homex.g
              G91                ; relative positioning
              G1 Z5 F6000        ; lift Z relative to current position
              G90                ; absolute positioning
              G1 H1 X-405 F1800  ; move quickly to X axis endstop and stop there (first pass)
              G91                ; relative positioning
              

              In homeY the same thing goes for the G1 Z5 move needing H2. And the removal of the G90 and second G91 for the same reason. Also here if you are using stall detection, only ne pass is needed. If you are using an endstop switch, then the back off move should NOT have H2.

              ;homey.g
              G91                ; relative positioning
              G1 Z5 F6000        ; lift Z relative to current position
              G90                ; absolute positioning
              G1 H1 Y-415 F1800  ; move quickly to Y axis endstop and stop there (first pass)
              G91                ; relative positioning
              P4 P500            ; wait 500ms
              G1 H2 Y5 F6000     ; go back a few mm
              G4 P500            ; wait 500ms
              G1 H1 Y-415 F360   ; move slowly to Y axis endstop once more (second pass)
              G1 H2 Z-5 F6000    ; lower Z again
              G90                ; absolute positioning
              

              In your homeall and homez you should be positioning your probe at the center of the bed before sending G30.

              You don't need all of the G4 pause commands in there either.

              Your bed.g and level gantry macro could be the same thing. And I would leave G29 as a separate command rather than using it in G32 (bed.g)

              ; bed.g
              ; called to perform automatic bed compensation via G32
              
              M561 ; clear any bed transform
              G28 ; home all
              G30 P0 X42 Y0 Z-99999 ; probe near a leadscrew
              G30 P1 X358 Y0 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
              G28 Z ; home z again to reset Z0
              
              ; homeall.g
              ; called to home all axes
              
              G91                    ; relative positioning
              G1 H2 Z10 F6000        ; lift Z 10mm relative to current positio
              M402 ; retrack probe in case it's deployed
              
              ; first move/home Y axis
              G1 H1 Y-415 F1800        ; move quickly to Y axis endstops and stop there
              G1 Y5 F6000              ; go back 5mm
              G1 H1 Y-415 F360         ; move slowly to Y axis endstop once more (second pass)
              
              ;second move/home X axis
              G1 H1 X-405 F1800       ; move quickly to X axis endstops and stop there
              G1 X5 F1800             ; go back 5mm
              G1 H1 X-405 F360        ; move slowly to X axis endstop once more (second pass)
              
              ;third move/home Z axis
              G90                     ; absolute positioning
              G1 X150 Y150			; move probe to bed center
              G30        				; move Z down stopping at the endstop -for BLT
              G1 X0 Y0 Z10			; move to parking position
              
              ; homex.g
              
              G91                ; relative positioning
              G1 H2 Z5 F6000        ; lift Z relative to current position
              G1 H1 X-405 F1800  ; move quickly to X axis endstop and stop there (first pass)
              G1 X5 F1800        ; go back 5mm
              G1 H1 X-405 F360   ; move slowly to X axis endstop once more (second pass)
              G1 H2 Z-5 F6000    ; lower Z again
              G90                ; absolute positioning
              
              ; homey.g
              
              G91                ; relative positioning
              G1 H2 Z5 F6000        ; lift Z relative to current position
              G1 H1 Y-415 F1800  ; move quickly to Y axis endstop and stop there (first pass)
              G1 Y5 F6000     ; go back a few mm
              G1 H1 Y-415 F360   ; move slowly to Y axis endstop once more (second pass)
              G1 H2 Z-5 F6000    ; lower Z again
              G90                ; absolute positioning
              
              ; homez.g
              
              G91                  ; relative positioning
              G1 H2 Z5 F6000       ; lift Z relative to current position
              G90                  ; absolute positioning
              G1 X150 Y150 		; position probe at center of the bed
              G30    ; move Z down until the endstop is triggered-for BLT
              

              I cleaned up your files a bit.

              Z-Bot CoreXY Build | Thingiverse Profile

              Phaedruxundefined 1 Reply Last reply Reply Quote 1
              • razrudyundefined
                razrudy
                last edited by

                Thanks....I will upload the new files and see how it's working. I will do 2 separate sd cards....I will use them in a fresh install and on the old one . Just testing to see if this will fix the map height thing.

                1 Reply Last reply Reply Quote 0
                • stuartofmtundefined
                  stuartofmt
                  last edited by stuartofmt

                  @Phaedrux

                  Above - you said " If you are using an endstop switch, then the back off move should NOT have H2."

                  Can you explain that please. I'm trying to better understand the documentation. I can see that H0 could be used for the backoff move since we now have a "home" for the axis. The documentation for H2 says
                  "H2 Individual motor mode. X refers to the X motor, Y refers to the Y motor, and so on. Normally used with relative motor coordinates (see G91).is used for a single"
                  This description would seem to apply to this situation - albeit may be redundant in the context of a backoff move. Basically - you said "NOT" and I'm seeking to understand if there is a negative here.

                  One last thing (may be related) - is it "good practice" to issue a G90 at the end to avoid any potential, accidental issues with subsequent positioning commands ? Or does the homing move H1 automatically revert the printer to absolute positioning ?

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

                    @stuartofmt H2 is intended to allow movement for an unhomed axis or to isolate a single motor move on a corexy. Using it for the backoff move would prevent any error messages from being thrown in cases where the initial homing move actually failed. In normal working operation this may not matter, but when doing your initial testing, missing that error can lead to a lot of confusion. (Ex: I press home but it move in the wrong direction a few mm, I don't know why so I start changing homing direction or motor direction or endstop position, etc and make things much much worse, when the actual problem was that the initial homing either failed with a false positive or false negative and the H2 allowed the back off move to work anyway)

                    H2 in homing files is really only appropriate for the Z axis to allow an unhomed z axis to raise a few mm just to ensure clearance for moving the X and Y axis.

                    Unfortunately the web configurator tool has been generating XY back off moves that use H2 for a while, so it's pretty common to see now. But it really shouldn't be the case and I believe it's now fixed there.

                    Best practice for G90/G91 is to always declare it before you need it. Partly to ensure the moves happen the way you intend them, and to make the readability of the macro more clear because it declares the intention of the following moves.

                    As for whether the G90/G91 is persistent after the macro exits I'm not actually sure. It my return to whatever was set previously.

                    Z-Bot CoreXY Build | Thingiverse Profile

                    stuartofmtundefined 1 Reply Last reply Reply Quote 1
                    • stuartofmtundefined
                      stuartofmt @Phaedrux
                      last edited by

                      @Phaedrux

                      Thanks - makes sense.

                      I note that the documentation says that macros implicitly call a M120 Push at the start. But M121 Pop does not state that it is applied at the end of a Macro call. I suspect that logically - it must otherwise the stack would just grow ....

                      Would be great if there was some clarification on that.

                      Implicit in the above is that it's perhaps not a bad idea (although in practice likely irrelevant) to have a G90 in config.g before any macro calls so that the default state is absolute.

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

                        @stuartofmt said in Chiron+Duet3+BlTouch:

                        to have a G90 in config.g

                        this is the default produced by the config tool.

                        Z-Bot CoreXY Build | Thingiverse Profile

                        1 Reply Last reply Reply Quote 0
                        • razrudyundefined
                          razrudy
                          last edited by

                          I've loaded your files and now I am start testing but so far looks good.
                          A small problem is that when I am moving to bed centre the speed is very slow.....after X and Y homing the move to the bed centre is very slow.....but after gantry level when is doing the second G30 the speed is normal.
                          The start.g code is executed first when the board is powered or before any print starts? I need to ad a delay , probe reset and self test for BLT because in 95% of the cases after "emergency stop" or when I power up the board is in error mode.
                          Can't wait to finish with this and move to piezo probe.....

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

                            @Phaedrux said in Chiron+Duet3+BlTouch:

                            G1 H1 X-405 F360 ; move slowly to X axis endstop once more (second pass) ;third move/home Z axis G90 ; absolute positioning G1 X150 Y150 ; move probe to bed center

                            The move to center is slow because the last feed rate set was only F360. Add a new fast feed rate to the G1 X150 Y150 F6000 move.

                            @razrudy said in Chiron+Duet3+BlTouch:

                            The start.g code is executed first when the board is powered or before any print starts?

                            start.g is run as soon as a print starts.

                            @razrudy said in Chiron+Duet3+BlTouch:

                            I need to ad a delay , probe reset and self test for BLT because in 95% of the cases after "emergency stop" or when I power up the board is in error mode.

                            Add those reset commands to the start of homeall.g and homez.g and the end of config.g just to make sure the BLTouch is ready to go.

                            M280 P0 S160                                   ; Clear any alarms
                            M402                                        ; retract pin just in case
                            

                            Z-Bot CoreXY Build | Thingiverse Profile

                            1 Reply Last reply Reply Quote 1
                            • razrudyundefined
                              razrudy
                              last edited by

                              This post is deleted!
                              1 Reply Last reply Reply Quote 0
                              • razrudyundefined
                                razrudy
                                last edited by razrudy

                                Can we use now M205 in mm/s instead of M566 in mm/min for better compatibility with the slicers? Any advantage in one over the other? From @dc42 post , about 1 year ago , the M205 is supported since RRF 2.0.1 for XYZ or other axis. this includes the E jerk too?

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

                                  Yes you can use the marlin format if you wish. though most slicers should output the correct reprap syntax when set to reprap gcode flavour.

                                  Z-Bot CoreXY Build | Thingiverse Profile

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