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

    Z probe wrong direction unless I zero Z

    Scheduled Pinned Locked Moved
    General Discussion
    5
    16
    1.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

      @nick9one1 said in Z probe wrong direction unless I zero Z:

      M564 H0 ; allow jog without homing

      It's best not to use this on a regular basis and could be hiding other issues. It's meant to save you from a crash.

      G1 H0 X5 F6000 ; go back a few mm

      Remove the H0 from your homing files. It's the default, so you don't need to specify it.

      When you jog your Z axis normally after homing (after you remove the M564) does Z+ move the bed away from the nozzle and Z- towards the nozzle?

      Z-Bot CoreXY Build | Thingiverse Profile

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

        From the documentation when using your Z probe for homing:

        The S2 option of M574 is intended for use only when axes other than Z are using the Z probe for homing. The only printers known that do this using Duet electronics are the RepRapPro Ormerod, Huxley Duo, and Mendel Tricolour machines. When using the Z probe to home Z, M574 Z0 should be used.

        Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

        nick9one1undefined 2 Replies Last reply Reply Quote 0
        • nick9one1undefined
          nick9one1 @fcwilt
          last edited by

          Remove the H0 from your homing files. It's the default, so you don't need to specify it.
          

          Done

          M564 H0 ; allow jog without homing
          
          It's best not to use this on a regular basis and could be hiding other issues. It's meant to save you from a crash.
          

          I will do after this issue is resolved - at the moment I need to raise the bed at least 300mm to home successfully.

          1 Reply Last reply Reply Quote 0
          • nick9one1undefined
            nick9one1
            last edited by nick9one1

            When you jog your Z axis normally after homing (after you remove the M564) does Z+ move the bed away from the nozzle and Z- towards the nozzle?
            

            Yes, the jog buttons work as expected, and I get good prints.

            G1 Z5 F6000 lowers the bed
            G1 Z-5 F6000 raises the bed

            When the bed is fully lowered at power on, I have to send this before a home;
            G1 Z-500 F6000
            G92 Z0

            If I dont send G92 Z0 the printer seems to attempt a probe in the wrong direction (Z+ instead of Z-). I think this is because it thinks the bed is at Z-500 (my G1 Z-500 command).

            If I attempt to home when the bed is fully lowered at power on, the bed raises about 1/2 way (Z-), then starts going to other way (Z+).
            It seems to me like there is a timeout or travel limit safety.

            1 Reply Last reply Reply Quote 0
            • nick9one1undefined
              nick9one1 @fcwilt
              last edited by nick9one1

              @fcwilt

              M574 now looks like this;

              ; Endstops
              M564 H0					     ; allow jog without homing
              M574 X1 S1 P"xstop"                          ;
              M574 Y2 S1 P"ystop"                          ;
              M574 Z1 S1 P"zstop"                          ; 
              

              not

              ; Endstops
              M564 H0					       ; allow jog without homing
              M574 X1 S1 P"xstop"                            ;
              M574 Y2 S1 P"ystop"                            ;
              M574 Z1 S2                                     ; configure Z-probe endstop for low end on Z
              

              Unfortunately the behaviour is still the same

              droftartsundefined 1 Reply Last reply Reply Quote 0
              • jay_s_ukundefined
                jay_s_uk
                last edited by

                What fcwilt meant was remove the M574 line for the endstop, unless you still have one on Z maximum.

                Your M558 included an I0, which is not supported as part of RRF3.

                Your Z maximum is set as 350mm. How large is it as you seem to be issuing a -600mm move which would indicate your Z axis is larger than 350mm

                Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

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

                  @nick9one1 this came up recently in another thread, where the M208 Z limit was much smaller then the actual Z movement. If the probe move has to move more than 1.1 times the M208 Z limit, probing is cancelled and it will try to move the bed back to Z0. So set you M208 Z limit to much closer to the actual size, eg Z600. You can always set up a fast Z home move, then slow Z home, if it’s painful to watch it home 600mm at slow speed!

                  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

                  Phaedruxundefined 1 Reply Last reply Reply Quote 0
                  • nick9one1undefined
                    nick9one1
                    last edited by

                    @jay_s_uk said in Z probe wrong direction unless I zero Z:

                    What fcwilt meant was remove the M574 line for the endstop, unless you still have one on Z maximum.

                    Your M558 included an I0, which is not supported as part of RRF3.

                    Your Z maximum is set as 350mm. How large is it as you seem to be issuing a -600mm move which would indicate your Z axis is larger than 350mm

                    Thanks!

                    I will remove I0 frm M558

                    I guess Z max here is probably the cause of the bed getting to half way then reversing. I will change to Z650 (Z is 650)

                    M208 X305 Y332 Z350 S0                         ; set axis maxima
                    
                    nick9one1undefined 1 Reply Last reply Reply Quote 0
                    • nick9one1undefined
                      nick9one1 @nick9one1
                      last edited by

                      @droftarts said in Z probe wrong direction unless I zero Z:

                      @nick9one1 this came up recently in another thread, where the M208 Z limit was much smaller then the actual Z movement. If the probe move has to move more than 1.1 times the M208 Z limit, probing is cancelled and it will try to move the bed back to Z0. So set you M208 Z limit to much closer to the actual size, eg Z600. You can always set up a fast Z home move, then slow Z home, if it’s painful to watch it home 600mm at slow speed!

                      Ian

                      I like the idea of a faster Z home, so will try that.

                      I'm also using a mini IR Z probe which seems to have similar behaviour when Z gets close.

                      1 Reply Last reply Reply Quote 0
                      • jay_s_ukundefined
                        jay_s_uk
                        last edited by

                        I use

                        M558 F250 				 										; Set the probing speed
                        G30					 											; Probe a single point
                        M558 F30 				 										; Set a slower probing speed
                        G30					 											; Probe a single point
                        

                        In my Z homing file. That sets the first homing speed to just over 4mm/s and then 0.5mm/s. A similar change to your homing file would work for you.

                        Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

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

                          @droftarts I thought it sounded familiar 😉

                          Z-Bot CoreXY Build | Thingiverse Profile

                          1 Reply Last reply Reply Quote 0
                          • nick9one1undefined
                            nick9one1
                            last edited by nick9one1

                            All working as expected now thankyou.

                            I think the key change was setting the correct Z height

                            M208 X305 Y332 Z350 S0 ; 
                            

                            now;

                            M208 X305 Y332 Z950 S0 ; 
                            

                            Full Gcode;

                            950 ; Configuration file for Duet WiFi (firmware version 3)
                            ; executed by the firmware on start-up
                            ;
                            ; generated by RepRapFirmware Configuration Tool v3.1.4 on Sat Sep 05 2020 23:57:30 GMT+0100 (British Summer Time)
                            
                            ; General preferences
                            M80					       	; Turns on the ATX power supply
                            G90                                            	; send absolute coordinates...
                            M83                                            	; ...but relative extruder moves
                            M550 P"BLV MGN Cube"                           	; 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                                     	; physical drive 0 goes backwards
                            M569 P1 S1                                     	; physical drive 1 goes forwards
                            M569 P2 S1                                     	; physical drive 2 goes forwards
                            M569 P3 S0                                     	; physical drive 3 goes backwards
                            M584 X0 Y1 Z2 E3                               	; set drive mapping
                            M350 X16 Y16 Z16 E16 I1                        	; configure microstepping with interpolation
                            M92 X200.00 Y200.00 Z800.00 E415.5             	; set steps per mm
                            M566 X600.00 Y600.00 Z24.00 E300.00            	; set maximum instantaneous speed changes (mm/min)
                            M203 X20000.00 Y20000.00 Z600.00 E2000.00      	; set maximum speeds (mm/min)
                            M201 X3000.00 Y3000.00 Z100.00 E5000.00        	; set accelerations (mm/s^2)
                            M906 X1500 Y1500 Z1500 E1100 I30               	; set motor currents (mA) and motor idle factor in per cent
                            M84 S30                                        	; Set idle timeout
                            
                            ; Pressure advance
                            ; M572 D0 S0.05	
                            
                            ; Axis Limits
                            M208 X-23 Y0 Z0 S1                            	; set axis minima
                            M208 X305 Y332 Z950 S0                        	; set axis maxima
                            
                            ; Endstops
                            M564 H0					       	; allow jog without homing
                            M574 X1 S1 P"xstop"                            	;
                            M574 Y2 S1 P"ystop"                            	;
                            M574 Z1 S1 P"zstop"                            	; configure Z-probe endstop for low end on Z
                            
                            ; Z-Probe
                            M558 P1 H5 C"^zprobe.in" H5 F250 T9000 R0.5	; set Z probe type to switch and the dive height + speeds
                            G31 P500 X-2 Y-16.4 Z1.40                      	; set Z probe trigger value, offset and trigger height
                            M557 X10:292 Y5:300 P5                       	; define mesh grid
                            
                            ; Heaters
                            M308 S0 P"bedtemp" Y"thermistor"T100000 B3950 C0 R4700 A"Bed Temp"  	; 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
                            M140 H0                                        				; map heated bed to heater 0
                            M143 H0 S100                                   				; set temperature limit for heater 0 to 100C
                            M307 H0 A466.3 C1262.5 D12.8 S1.00 V24.0 B0    				; Set PID for heated bed values
                            M308 S1 P"e0temp" Y"thermistor" T100000 B3950 C0 R4700 A"Hotend Temp"   ; 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
                            M143 H1 S260                              				; set temperature limit for heater 1
                            M307 H1 A340.0 C140.0 D5.5 S1.00 V24.0 B0     				; Set PID for hotend values
                            
                            ; 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 F1 C"fan1" Q500                           	; create fan 1 on pin fan1 and set its frequency
                            M106 P1 S1 H1 T45                              	; set fan 1 value. Thermostatic control is turned on
                            
                            ; Tools
                            M563 P0 D0 H1 F0                               	; 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
                            
                            
                            
                            
                            1 Reply Last reply Reply Quote 1
                            • First post
                              Last post
                            Unless otherwise noted, all forum content is licensed under CC-BY-SA