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

    reference the X-axis on both rails

    Scheduled Pinned Locked Moved
    Using Duet Controllers
    4
    59
    2.5k
    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.
    • droftartsundefined
      droftarts administrators @axiom
      last edited by

      @axiom for displaying code in posts, please use the code tags. It’s the </> icon on the toolbar above where you type in your post. It should put 3 tick marks at the beginning and end of your code. It makes it much more readable for people trying to help you. Single tick marks either side of text make that text inline code, like this.

      Ian

      Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

      1 Reply Last reply Reply Quote 0
      • fcwiltundefined
        fcwilt @axiom
        last edited by

        @axiom

        What expansion board are you using?

        On my 3 Z stepper printer I am using Duet 2 boards: Duet WiFi and a Duex5.

        My M574 for the Z endstops looks like this:

        M574 Z1 S1 P"!duex.e2stop + !duex.e3stop + !duex.e4stop" ; configure active-high endstop for low  end on Z
        

        The Z endstop sensors are connected to the Duex5 and I included the duex. prefix. I recall that it was necessary.

        Frederick

        Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

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

          @axiom said in reference the X-axis on both rails:

          M574 Z1 S1 P"e2stop + e3stop + e4stop + e5stop"

          If you send M98 P"config.g" you'll probably get an error saying invalid pin or something like that for that line.

          Z-Bot CoreXY Build | Thingiverse Profile

          1 Reply Last reply Reply Quote 0
          • droftartsundefined
            droftarts administrators @fcwilt
            last edited by

            @fcwilt as @Phaedrux says, the pin names are wrong. See https://docs.duet3d.com/Duet3D_hardware/Duet_2_family/DueX2_and_DueX5#pin-names

            Should be duex.e2stop etc.

            Ian

            Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

            axiomundefined 1 Reply Last reply Reply Quote 0
            • axiomundefined
              axiom @droftarts
              last edited by

              @droftarts
              I have now adjusted the names, but the endstops are still not accepted. Here is the message from the m119 command and the M98 P"config.g" command. And below again my adapted code

              M98 P"config.g"

              HTTP is enabled on port 80
              FTP is enabled on port 21
              TELNET is enabled on port 23
              Error: in file macro line 50 column 65: M574: string too long
              Warning: Macro file config-override.g not found
              16.11.2023, 15:50:48

              m119
              Endstops - X: at min stop, Y: not stopped, Z: no endstop, Z probe: not stopped

              All control LEDs respond...The 4 motors on the expansion board react and can be controlled

              I think it's not a hardware error it is a DueX5 xspansionboard

              again my adapted code:
              ; Configuration file for Duet WiFi (firmware version 3.3)
              ; executed by the firmware on start-up
              ;
              ; generated by RepRapFirmware Configuration Tool v3.3.16 on Sun May 28 2023 15:23:44 GMT+0200 (Mitteleuropäische Sommerzeit)

              ; General preferences
              M575 P1 S1 B57600 ; enable support for PanelDue
              G90 ; send absolute coordinates...
              M83 ; ...but relative extruder moves
              M550 P"DUKA1300" ; set printer name

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

              ; Drives
              ;M569 P4 R-1 ; Treiber 4 deaktivieren
              ;M569 P3 R-1 ; Treiber 4 deaktivieren
              M569 P0 S1 ; physical drive 0 goes forwards
              M569 P1 S1 ; physical drive 1 goes forwards
              M569 P2 S1 ; physical drive 2 goes forwards
              M569 P3 S1 ; physical drive 3 goes forwards
              M569 P4 S0 ; physical drive 3 goes forwards
              M569 P5 S1 ; physical drive 3 goes forwards Expansionboard
              M569 P6 S1 ; physical drive 3 goes forwards Expansionboard
              M569 P7 S1 ; physical drive 3 goes forwards Expansionboard
              M569 P8 S1 ; physical drive 3 goes forwards Expansionboard
              ;M584 X0 Z2 E1 ; set drive mapping
              ;M584 X0 Z2 E1 ; set drive mapping
              ;M584 X0:4 Y1 Z2 E3 ; set drive mapping
              M584 X0:4 Y1 Z5:6:7:8 E3 ; set drive mapping
              M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
              M92 X80.00 Y80.00 Z640 E322.58 ; set steps per mm
              M566 X900.00 Y900.00 Z100.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
              M203 X6000.00 Y6000.00 Z300.00 E1200.00 ; set maximum speeds (mm/min)
              ;M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
              M201 X500.00 Y500.00 Z40.00 E250.00 ; set accelerations (mm/s^2)
              M906 X1800 Y1800 Z1700 E1600 I30 ; set motor currents (mA) and motor idle factor in per cent
              M84 S30 ; Set idle timeout

              ; Axis Limits
              M208 X100 Y0 Z0 S1 ; set axis minima
              M208 X750 Y640 Z1220 S0 ; set axis maxima

              ; Endstops
              M574 X1 S1 P"xstop + e0stop" ; 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 Z1 S1 P"duex.e2stop + duex.e3stop + duex.e4stop + duex.e5stop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop

              ; Z-Probe
              ;M558 K0 P1 C"e1stop" ;H5 F120 T6000
              M558 K0 P5 C"!zprobe.in" H5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds (Kapazitiver Sensor)
              ;M557 X0:735 Y-27:573 S35 ; define mesh grid

              ; Z-Probe two of them
              ;M558 K0 P1 C"!zprobe.in" H5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds (Kapazitiver Sensor)
              ;M558 K1 P8 A2 S0.2 C"!zstop" H5 F80 T3000
              ;G31 P1000 K0 X-1 Y-61 Z0.484 ; set Z probe trigger value, offset and trigger height (Kapazitiver Sensor)
              ;G31 P1000 K1 X0 Y0 Z12.664 ; Second Z-offset
              ;M557 X0:735 Y-27:573 S35 ; define mesh grid

              ; Heaters

              ; Bed
              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 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit
              ;M307 H2 R0.283 K0.463:0.000 D7.17 E1.35 S1.00 B0 ; enable bang-bang mode for the bed heater and set PWM limit
              M307 H0 R0.283 K0.463:0.000 D7.17 E1.35 S1.00 B0 ; enable bang-bang mode for the bed heater and set PWM limit
              M140 H0 ; map heated bed to heater 0
              M143 H0 S280 ; set temperature limit for heater 0 to 120C

              ;Hotend
              M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp
              M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
              M307 H1 R1.797 K0.742:0.000 D7.57 E1.35 S1.00 B0 V23.8 ; disable bang-bang mode for heater and set PWM limit
              M143 H1 S400 ; set temperature limit for heater 1 to 400C

              ; Fans
              M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
              M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
              M950 F2 C"fan2" Q350 ; create fan 2 on pin fan2 and set its frequency
              M106 P2 S1 H1 T60 ; set fan 2 value. Thermostatic control is turned on

              ; Tools
              M563 P0 D0 H1 F0 ; define tool 1
              G10 P0 X0 Y0 Z0 ; set tool 1 axis offsets
              G10 P0 R0 S0 ; set initial tool 1 active and standby temperatures to 0C

              ; Filamentsensor
              ;M591 D0 P1 C"zstop" S1 ;R40:120 E3.0 S1 Filament Sensor

              ;Auto Z-Offset
              ; Custom settings are not defined
              M501

              fcwiltundefined droftartsundefined 2 Replies Last reply Reply Quote 0
              • fcwiltundefined
                fcwilt @axiom
                last edited by

                @axiom

                Did you try shortening the line? I believe the comment is included when it comes to being too long.

                And you can remove the M501 at the end if you wish to silence the error about config-override.g being missing.

                Frederick

                Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                1 Reply Last reply Reply Quote 0
                • droftartsundefined
                  droftarts administrators @axiom
                  last edited by

                  @axiom What firmware version are you on? This has come up before, and it's because the string for the endstops is too long. See https://forum.duet3d.com/topic/32954/duet-2-wifi-voron-2-4-multiple-z-endstops-query
                  This was fixed in RRF 3.4.6, with an increase from 50 to 61.

                  However, I think you just need to take out the spaces in yours to get under the 50 character limit, ie

                  M574 Z1 S1 P"duex.e2stop+duex.e3stop+duex.e4stop+duex.e5stop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop
                  

                  That's 47 characters.

                  Ian

                  Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                  axiomundefined 1 Reply Last reply Reply Quote 1
                  • axiomundefined
                    axiom @droftarts
                    last edited by

                    @droftarts Deleting the spaces was the solution...it no longer gives an error
                    dfe0d5e9-eef0-4361-947d-47d8479584c3-grafik.png message and the g1 h1 z0 command works and the bed stops at the endstops...now I can continue researching! Thank you so much!!!!

                    droftartsundefined 1 Reply Last reply Reply Quote 0
                    • droftartsundefined
                      droftarts administrators @axiom
                      last edited by

                      @axiom What firmware version? Send M115 in the console and post response, please.

                      Ian

                      Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                      axiomundefined 1 Reply Last reply Reply Quote 0
                      • axiomundefined
                        axiom @droftarts
                        last edited by

                        @droftarts cab2a957-5860-4b95-917e-c4a66b6e39a1-grafik.png

                        droftartsundefined 1 Reply Last reply Reply Quote 0
                        • droftartsundefined
                          droftarts administrators @axiom
                          last edited by

                          @axiom You'll probably find it easier if you update to RRF 3.4.6, the current release. You shouldn't have to change your configuration.

                          Ian

                          Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                          axiomundefined 1 Reply Last reply Reply Quote 0
                          • axiomundefined
                            axiom @droftarts
                            last edited by

                            @droftarts said in reference the X-axis on both rails:

                            You'll probably find it easier if you update to RRF 3.4.6, the current release. You shouldn't have to change your configuration.
                            Ian

                            Can I just click on it here, or do I have to prepare something?
                            bc75f0dd-1385-48e9-b143-ef8b0dbcb445-grafik.png

                            droftartsundefined 1 Reply Last reply Reply Quote 0
                            • droftartsundefined
                              droftarts administrators @axiom
                              last edited by

                              @axiom download "Duet2and3Firmware-3.4.6.zip" from https://github.com/Duet3D/RepRapFirmware/releases/tag/3.4.6 without unzipping it, then upload it to the Duet. It will unpack it and install the firmware update.

                              There's a whole wiki page on firmware updates: https://docs.duet3d.com/User_manual/RepRapFirmware/Updating_firmware

                              Ian

                              Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                              axiomundefined 1 Reply Last reply Reply Quote 0
                              • axiomundefined
                                axiom @droftarts
                                last edited by

                                @droftarts Is there something to update for the Due5 expansion board...or is that okay?5d5f7a8d-0e0f-48c6-9e71-6da9b72fbfb8-grafik.png

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

                                  The Duex does not have it's own firmware.

                                  Z-Bot CoreXY Build | Thingiverse Profile

                                  1 Reply Last reply Reply Quote 0
                                  • axiomundefined
                                    axiom
                                    last edited by

                                    @fcwiltI have now adapted the home files according to your stage directions (see below) and removed the homeall.g as you said. when I click the reference button on the user interface 925b48d8-d775-4e9c-a5ee-7cd39c479064-grafik.png , the error message comes up:
                                    d8322933-f981-4334-a93f-7965c69cbb9b-grafik.png
                                    Now I don't know what homeall.g should look like?

                                    Here are my new homing files:

                                    ; homex.g
                                    ; called to home the X axis
                                    ;
                                    ; generated by RepRapFirmware Configuration Tool v3.3.16 on Sun May 28 2023 15:23:44 GMT+0200 (Mitteleuropäische Sommerzeit)
                                    G91 ; relative positioning
                                    G1 H1 Z5 F6000 ; lift Z relative to current position
                                    G1 H1 X-755 F6000 ; move quickly to X axis endstop and stop there (first pass)
                                    G1 H1 X10 ; go back a few mm
                                    G1 H1 X-10 F600 ; move slowly to X axis endstop once more (second pass)
                                    G1 H1 Z-5 F6000 ; lower Z again
                                    G92 X0 ; where ### is the actual axis position when the motion stopped - usually determined by testing

                                    ; homey.g
                                    ; called to home the Y axis
                                    ;
                                    ; generated by RepRapFirmware Configuration Tool v3.3.16 on Sun May 28 2023 15:23:44 GMT+0200 (Mitteleuropäische Sommerzeit)
                                    G91 ; relative positioning
                                    G1 H1 Z5 F6000 ; lift Z relative to current position
                                    G1 H1 Y-643 F6000 ; move quickly to Y axis endstop and stop there (first pass)
                                    G1 H2 Y10 ; go back a few mm
                                    G1 H1 Y-10 F600 ; move slowly to Y axis endstop once more (second pass)
                                    G1 H2 Z-5 F6000 ; lower Z again
                                    G92 Y0 ;where ### is the actual axis position when the motion stopped - usually determined by testing

                                    ; homez.g
                                    ; called to home the Z axis
                                    ;
                                    ; generated by RepRapFirmware Configuration Tool v3.3.16 on Sun May 28 2023 15:23:44 GMT+0200 (Mitteleuropäische Sommerzeit)
                                    G91 ; relative positioning
                                    G1 H1 Z-1230 F6000 ; lift Z relative to current position
                                    G1 Z20 ; back off a bit
                                    G1 H1 Z-20 F300 ; slow move to min endstop
                                    G92 Z7,1 ; home Z by probing the bed

                                    fcwiltundefined 2 Replies Last reply Reply Quote 0
                                    • fcwiltundefined
                                      fcwilt @axiom
                                      last edited by

                                      @axiom

                                      I don't recall saying to remove the homeALL.g file.

                                      What I think I said was I don't duplicate homing code so my homeALL.g file looks something like this:

                                      M98 P"homeZ.g"
                                      M98 P"homeX.g"
                                      M98 P"homeY.g"
                                      

                                      The results are the same but there is no actual "homing" code in homeALL.g.

                                      Frederick

                                      Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                                      1 Reply Last reply Reply Quote 0
                                      • fcwiltundefined
                                        fcwilt @axiom
                                        last edited by

                                        @axiom

                                        And since you now have Z endstops you don't need to use the type of homing code the configuration tool generates.

                                        I also suggest you work towards not using the configuration tool and learn how to create your own code.

                                        Your code will likely be better and fixing code related problems will be easier since you fully understand what you coded.

                                        Didn't I post examples of what your basic homing files would look like?

                                        Basically you do:

                                        • a fast G1 H1 move toward the endstop
                                        • a short fast move G1 move away from the endstop
                                        • a slow G1 H1 move toward the endstop
                                        • a possible G92 to set the logical position of the axis being homed to match the physical position

                                        Assume a printer where the X endstop is at the min end of the X axis and the axis has a range of motion of 300mm:

                                        G1 H1 X-310 F6000
                                        G1 X20
                                        G1 H1 X-25 F600
                                        G92 X=nnn ; where nnn is actual position of the X axis after the 3 moves above
                                        

                                        Frederocl

                                        Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                                        1 Reply Last reply Reply Quote 0
                                        • axiomundefined
                                          axiom @fcwilt
                                          last edited by

                                          I'm just stuck...if my z-endstops are set to 4 and I want to reference...but the bed is already above the end stops, e.g. 2...then the bed moves into the head. So I currently have to move the bed below the endstops before referencing...how can I correct this in the z-home. Here are my files again:

                                          ; homez.g
                                          ; called to home the Z axis
                                          ;
                                          ; generated by RepRapFirmware Configuration Tool v3.3.16 on Sun May 28 2023 15:23:44 GMT+0200 (Mitteleuropäische Sommerzeit)
                                          G91 ; relative positioning
                                          G1 H1 Z-1225 F4000 ; lift Z relative to current position
                                          G1 Z10 ; back off a bit
                                          G1 H1 Z-10 F300; slow move to min endstop
                                          G92 Z4 ; home Z by probing the bed

                                          ; homex.g
                                          ; called to home the X axis
                                          ;
                                          ; generated by RepRapFirmware Configuration Tool v3.3.16 on Sun May 28 2023 15:23:44 GMT+0200 (Mitteleuropäische Sommerzeit)
                                          G91 ; relative positioning
                                          G1 H1 Z5 F4000 ; lift Z relative to current position
                                          G1 H1 X-755 F4000 ; move quickly to X axis endstop and stop there (first pass)
                                          G1 H1 X10 ; go back a few mm
                                          G1 H1 X-10 F300 ; move slowly to X axis endstop once more (second pass)
                                          G1 H1 Z-5 F4000 ; lower Z again
                                          G92 X0 ; where ### is the actual axis position when the motion stopped - usually determined by testing
                                          G1 x10

                                          ; homey.g
                                          ; called to home the Y axis
                                          ;
                                          ; generated by RepRapFirmware Configuration Tool v3.3.16 on Sun May 28 2023 15:23:44 GMT+0200 (Mitteleuropäische Sommerzeit)
                                          G91 ; relative positioning
                                          G1 H1 Z5 F4000 ; lift Z relative to current position
                                          G1 H1 Y-643 F4000 ; move quickly to Y axis endstop and stop there (first pass)
                                          G1 H2 Y10 ; go back a few mm
                                          G1 H1 Y-10 F300 ; move slowly to Y axis endstop once more (second pass)
                                          G1 H2 Z-5 F64000 ; lower Z again
                                          G92 Y0 ;where ### is the actual axis position when the motion stopped - usually determined by testing
                                          G1 y10

                                          and homeall:

                                          M98 P"homeY.g"

                                          M98 P"homeX.g"

                                          M98 P"homeZ.g"

                                          ; Configuration file for Duet WiFi (firmware version 3.3)
                                          ; executed by the firmware on start-up
                                          ;
                                          ; generated by RepRapFirmware Configuration Tool v3.3.16 on Sun May 28 2023 15:23:44 GMT+0200 (Mitteleuropäische Sommerzeit)

                                          ; General preferences
                                          M575 P1 S1 B57600 ; enable support for PanelDue
                                          G90 ; send absolute coordinates...
                                          M83 ; ...but relative extruder moves
                                          M550 P"DUKA1300" ; set printer name

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

                                          ; Drives
                                          ;M569 P4 R-1 ; Treiber 4 deaktivieren
                                          ;M569 P3 R-1 ; Treiber 4 deaktivieren
                                          M569 P0 S1 ; physical drive 0 goes forwards
                                          M569 P1 S1 ; physical drive 1 goes forwards
                                          M569 P2 S1 ; physical drive 2 goes forwards
                                          M569 P3 S1 ; physical drive 3 goes forwards
                                          M569 P4 S0 ; physical drive 3 goes forwards
                                          M569 P5 S1 ; physical drive 3 goes forwards Expansionboard
                                          M569 P6 S1 ; physical drive 3 goes forwards Expansionboard
                                          M569 P7 S1 ; physical drive 3 goes forwards Expansionboard
                                          M569 P8 S1 ; physical drive 3 goes forwards Expansionboard
                                          ;M584 X0 Z2 E1 ; set drive mapping
                                          ;M584 X0 Z2 E1 ; set drive mapping
                                          ;M584 X0:4 Y1 Z2 E3 ; set drive mapping
                                          M584 X0:4 Y1 Z5:6:7:8 E3 ; set drive mapping
                                          M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
                                          M92 X80.00 Y80.00 Z640 E322.58 ; set steps per mm
                                          M566 X900.00 Y900.00 Z100.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
                                          M203 X6000.00 Y6000.00 Z300.00 E1200.00 ; set maximum speeds (mm/min)
                                          M201 X500.00 Y500.00 Z40.00 E250.00 ; set accelerations (mm/s^2)
                                          M906 X1800 Y1800 Z1700 E1600 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 X750 Y643 Z1220 S0 ; set axis maxima

                                          ; Endstops
                                          M574 X1 S1 P"xstop + e0stop" ; 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 Z1 S1 P"duex.e2stop+duex.e3stop+duex.e4stop+duex.e5stop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop

                                          ; Z-Probe
                                          M558 K0 P5 C"!zprobe.in" H5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds (Kapazitiver Sensor)
                                          M558 K1 P8 A2 S7 C"duex.e6stop" H5 F80 T3000
                                          G31 P1000 K0 X0 Y-25 Z0.817 ; set Z probe trigger value, offset and trigger height (Kapazitiver Sensor)
                                          M557 X0:735 Y-25:573 S35 ; define mesh grid

                                          ; Heaters

                                          ; Bed
                                          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.283 K0.463:0.000 D7.17 E1.35 S1.00 B0 ; enable bang-bang mode for the bed heater and set PWM limit
                                          M140 H0 ; map heated bed to heater 0
                                          M143 H0 S280 ; set temperature limit for heater 0 to 120C

                                          ;Hotend
                                          M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp
                                          M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1
                                          M307 H1 R1.797 K0.742:0.000 D7.57 E1.35 S1.00 B0 V23.8 ; disable bang-bang mode for heater and set PWM limit
                                          M143 H1 S400 ; set temperature limit for heater 1 to 400C

                                          ; Fans
                                          M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
                                          M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
                                          M950 F2 C"fan1" Q350 ; create fan 2 on pin fan2 and set its frequency
                                          M106 P2 S1 H1 T60 ; set fan 2 value. Thermostatic control is turned on

                                          ; Tools
                                          M563 P0 D0 H1 F0 ; define tool 1
                                          G10 P0 X0 Y0 Z0 ; set tool 1 axis offsets
                                          G10 P0 R0 S0 ; set initial tool 1 active and standby temperatures to 0C

                                          ; Filamentsensor
                                          M591 D0 P1 C"e1stop" S1 ;R40:120 E3.0 S1 Filament Sensor

                                          ;Auto Z-Offset
                                          ; Custom settings are not defined
                                          M501

                                          fcwiltundefined 1 Reply Last reply Reply Quote 0
                                          • fcwiltundefined
                                            fcwilt @axiom
                                            last edited by

                                            @axiom

                                            You have to design the mounting of the endstops so they are triggered to the very end of travel.

                                            MFx Z AXIS ENDSTOP.jpg

                                            Here you can see part of the Z axis setup on my tripple Z stepper printer. The endstop switch is activated by the side of that bracket that is supporting the ball stud. The bracket travels along the linear rail. The endstop switch is first activated well before the end of Z travel but remains activated to the very end of travel.

                                            So you cannot move "past" the endstop.

                                            Let's suppose you use a typical bit of homing code like below:

                                            G91
                                            G1 H1 Z-300 F1200
                                            G1 Z50
                                            G1 H1 Z-55 F300
                                            

                                            If you start with endstop already activated the first G1 move doesn't actually move and the code continues doing the backup move and then the slow move to endstop.

                                            Some folks include a test to see if the homing code starts out with the endstop activated and if it is the code backs off enough to insure the endstop should no longer be activated and if it is still activated they abort the homing and display and error message.

                                            That "safety" check is a pretty good idea.

                                            Frederick

                                            Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

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