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

Unable to set Z offset with PINDA probe

Scheduled Pinned Locked Moved
Tuning and tweaking
4
24
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.
  • undefined
    CarbonVirus @Phaedrux
    last edited by CarbonVirus 12 Apr 2020, 21:12 4 Dec 2020, 21:12

    @Phaedrux Apologies, I'm quite shite at explaining the situation...
    It is a Core X/Y, and positive should move the bed down away from the gantry I believe (jogging positive results in the bed descending).

    Here's the process resulting in failure:

    • Home X + Y
    • Home Z (with updated homing code provided above)
    • Send gantry to x150, y150
    • Send gantry to z0
    • Observe nozzle is still ~4mm away from print bed
    • Observe this distance is right where the PINDA sensor triggers
    • Cannot raise bed (send negative movement commands) without disabling axis endstops (M564 S0)
    1 Reply Last reply Reply Quote 0
    • undefined
      CarbonVirus
      last edited by 4 Dec 2020, 21:15

      config.g

      ; Configuration file for Duet WiFi (firmware version 3)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jun 28 2020 17:19:16 GMT-0400 (Eastern Daylight Time)
      
      ; General preferences
      G90                                                	; send absolute coordinates...
      M83                                                	; ...but relative extruder moves
      M550 P"CarbonCube"                                 	; 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 S1                                         	; physical drive 0 goes forwards
      M569 P1 S0                                         	; physical drive 1 goes forwards
      M569 P2 S0                                         	; physical drive 2 goes forwards
      M569 P3 S0                                         	; physical drive 3 goes forwards
      M584 X0 Y1 Z2 E3                                   	; set drive mapping
      M350 X16 Y16 Z16 E16 I1                            	; configure microstepping with interpolation
      M92 X160.00 Y160.00 Z800.00 E418.60                	; set steps per mm
      M566 X1800.00 Y1800.00 Z400.00 E4000.00            	; set maximum instantaneous speed changes (mm/min)
      M203 X12000.00 Y12000.00 Z2000.00 E120000.00       	; set maximum speeds (mm/min)
      M201 X1000.00 Y1000.00 Z400.00 E2000.00            	; set accelerations (mm/s^2)
      M906 X1450 Y1450 Z1450 E1450 I30                   	; Set motor currents (mA) and motor idle factor in per cent
      M84 S30                                            	; set idle timeout
      
      ; Axis Limits
      M208 S1 X0 Y0 Z0                                 	; set axis minima
      M208 S0 X300 Y300 Z300                             	; set axis maxima
      
      ; Endstops
      M574 X1 S4                                         	; configure sensorless endstop for low end on X
      M574 Y1 S4                                         	; configure sensorless endstop for low end on Y
      
      ; Z-Probe
      M574 Z1 S2 ; Set endstops controlled by probe
      M558 P5 C"^zprobe.in" I1 H0.7 F1000 T6000 A20 S0.005; PINDA
      G31 P500 X30 Y-20 Z-0.490							; set z-probe offset height
      M557 X100:200 Y100:200 P2                           ; define mesh grid
      
      ; Heaters
      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
      M140 H0                                            	; map heated bed to heater 0
      M143 H0 S120                                       	; set temperature limit for heater 0 to 120C
      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 B0 S1.00                                   	; disable bang-bang mode for heater  and set PWM limit
      
      ; 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
      
      ; Custom settings are not defined
      
      ; Miscellaneous
      M501                                               	; load saved parameters from non-volatile memory
      M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" 	; set voltage thresholds and actions to run on power loss
      T0                             			   		  	; select first tool
      
      

      homeall.g

      ; homeall.g
      ; called to home all axes
      ;
      ; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jun 28 2020 17:19:16 GMT-0400 (Eastern Daylight Time)
      
      G91                     										; relative positioning
      G1 H2 Z5 F6000          										; lift Z relative to current position
      
      ; set motors to homing settings
      M400 															; make sure everything has stopped before we make changes
      M574 X1 Y1 S4 													; set endstops to use motor stall
      M913 X30 Y30 													; drop motor current to 20%
      M915 X Y S1 F0 H400 R0 											; set sensitivity , do nothing when stall, unfiltered
      
      
      ; home x
      G1 H1 X-1000 F4000 												; move 1000mm, stopping at the endstop
      
      
      ; home y
      G1 H1 Y-1000 F4000 												; move 1000mm, stopping at the endstop
      
      
      ; home z
      G91              												; relative positioning
      G1 H2 Z5 F6000   												; lift Z relative to current position
      
      G90              												; absolute positioning
      G1 X150 Y150 F6000 												; go to first probe point
      
      G30 															; use probe to find Z 0
      
      G91             												; relative positioning
      G1 Z10 F6000      												; lift Z relative to current position
      G90             												; absolute positioning
      
      
      ; set motors to print settings
      M400 															; make sure everything has stopped before we reset the motor current
      M913 X100 Y100 													; motor current back to 100%
      
      G91             												; relative positioning
      G1 Z10 F6000      												; lift Z relative to current position
      G90             												; absolute positioning
      G1 x10 y10 F6000      											; move x/y relative to current position
      

      homez.g

      ; homez.g
      ; called to home the Z axis
      ;
      ; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jun 28 2020 17:19:17 GMT-0400 (Eastern Daylight Time)
      
      
      G91              												; relative positioning
      G1 H2 Z5 F6000   												; lift Z relative to current position
      
      G90              												; absolute positioning
      G1 X150 Y150 F6000 												; go to first probe point
      
      G30 															; use probe to find Z 0
      
      G91             												; relative positioning
      G1 Z10 F6000      												; lift Z relative to current position
      G90             												; absolute positioning
      
      1 Reply Last reply Reply Quote 0
      • undefined
        Phaedrux Moderator @Phaedrux
        last edited by Phaedrux 12 Apr 2020, 21:23 4 Dec 2020, 21:19

        @Phaedrux said in Unable to set Z offset with PINDA probe:

        Z+ should move the bed up towards the nozzle and Z- should move the bed down away from the nozzle, correct? Flip that. Z- to the nozzle, and Z+ away from nozzle.

        Sorry. My mistake there.

        Z-Bot CoreXY Build | Thingiverse Profile

        1 Reply Last reply Reply Quote 0
        • undefined
          Phaedrux Moderator
          last edited by 4 Dec 2020, 21:23

          @CarbonVirus said in Unable to set Z offset with PINDA probe:

          It is a Core X/Y, and positive should move the bed down away from the gantry I believe (jogging positive results in the bed descending).

          Yes. That is correct. Sorry for the confusion.

          @CarbonVirus said in Unable to set Z offset with PINDA probe:

          Cannot raise bed (send negative movement commands) without disabling axis endstops (M564 S0)

          I think this is because of your odd trigger height.

          @CarbonVirus said in Unable to set Z offset with PINDA probe:

          Send gantry to z0
          Observe nozzle is still ~4mm away from print bed

          What your G31 Z-0.4 trigger height is saying, is that when you send G30 to probe the bed, when the probe triggers the nozzle is at -0.4mm inside the surface of the bed. You can't send a negative value after that because it already thinks you're touching the bed.

          If your nozzle is still far away from the bed at that point, you need to redo the trigger height calibration because something went wrong.

          Z-Bot CoreXY Build | Thingiverse Profile

          1 Reply Last reply Reply Quote 0
          • undefined
            CarbonVirus
            last edited by 4 Dec 2020, 21:47

            alright, achieved proper z-offset with following configs
            config.g

            ; Configuration file for Duet WiFi (firmware version 3)
            ; executed by the firmware on start-up
            ;
            ; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jun 28 2020 17:19:16 GMT-0400 (Eastern Daylight Time)
            
            ; General preferences
            G90                                                	; send absolute coordinates...
            M83                                                	; ...but relative extruder moves
            M550 P"CarbonCube"                                 	; 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 S1                                         	; physical drive 0 goes forwards
            M569 P1 S0                                         	; physical drive 1 goes forwards
            M569 P2 S0                                         	; physical drive 2 goes forwards
            M569 P3 S0                                         	; physical drive 3 goes forwards
            M584 X0 Y1 Z2 E3                                   	; set drive mapping
            M350 X16 Y16 Z16 E16 I1                            	; configure microstepping with interpolation
            M92 X160.00 Y160.00 Z800.00 E418.60                	; set steps per mm
            M566 X1800.00 Y1800.00 Z400.00 E4000.00            	; set maximum instantaneous speed changes (mm/min)
            M203 X12000.00 Y12000.00 Z2000.00 E120000.00       	; set maximum speeds (mm/min)
            M201 X1000.00 Y1000.00 Z400.00 E2000.00            	; set accelerations (mm/s^2)
            M906 X1450 Y1450 Z1450 E1450 I30                   	; Set motor currents (mA) and motor idle factor in per cent
            M84 S30                                            	; set idle timeout
            
            ; Axis Limits
            M208 S1 X0 Y0 Z0                                 	; set axis minima
            M208 S0 X300 Y300 Z300                             	; set axis maxima
            
            ; Endstops
            M574 X1 S4                                         	; configure sensorless endstop for low end on X
            M574 Y1 S4                                         	; configure sensorless endstop for low end on Y
            
            ; Z-Probe
            M574 Z1 S2 ; Set endstops controlled by probe
            M558 P5 C"^zprobe.in" I1 H0.7 F1000 T6000 A20 S0.005; PINDA
            G31 P500 X30 Y-20 Z2.75							; set z-probe offset height
            M557 X100:200 Y100:200 P2                           ; define mesh grid
            
            ; Heaters
            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
            M140 H0                                            	; map heated bed to heater 0
            M143 H0 S120                                       	; set temperature limit for heater 0 to 120C
            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 B0 S1.00                                   	; disable bang-bang mode for heater  and set PWM limit
            
            ; 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
            
            ; Custom settings are not defined
            
            ; Miscellaneous
            M501                                               	; load saved parameters from non-volatile memory
            M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" 	; set voltage thresholds and actions to run on power loss
            T0                             			   		  	; select first tool
            

            homez.g

            ; homez.g
            ; called to home the Z axis
            ;
            ; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jun 28 2020 17:19:17 GMT-0400 (Eastern Daylight Time)
            
            
            G91              												; relative positioning
            G1 H2 Z5 F6000   												; lift Z relative to current position
            
            G90              												; absolute positioning
            G1 X150 Y150 F6000 												; go to first probe point
            
            G30 															; use probe to find Z 0
            
            G91             												; relative positioning
            G1 Z10 F6000      												; lift Z relative to current position
            G90             												; absolute positioning
            

            I think the stem of the entire issue was the incorrect homing command (using the endstop style command instead of a probe G30); still need to determine what could be wrong with my thermistor 😕
            Thank you very much @Phaedrux for the assistance; I got all turned about when messing with the offset/axis limit/homing commands and your assistance was quite helpful (as well as all others who chimed in)!

            undefined 1 Reply Last reply 4 Dec 2020, 22:13 Reply Quote 1
            • undefined
              Phaedrux Moderator @CarbonVirus
              last edited by 4 Dec 2020, 22:13

              @CarbonVirus said in Unable to set Z offset with PINDA probe:

              still need to determine what could be wrong with my thermistor

              Do you mean the pinda thermistor?

              Z-Bot CoreXY Build | Thingiverse Profile

              undefined 1 Reply Last reply 4 Dec 2020, 22:25 Reply Quote 0
              • undefined
                CarbonVirus @Phaedrux
                last edited by 4 Dec 2020, 22:25

                @Phaedrux
                I believe @Veti was indicating the default thermistor my bed uses based off the reprap auto configuration tool is wrong. I wasn't planning on using the PINDA thermistor as I only ever print with the bed at 60c and plan to do the mesh grid probing at that temp so there shouldn't be variance, correct?
                Reading up on the PINDA temp compensation was rather perplexing TBH.

                1 Reply Last reply Reply Quote 0
                • undefined
                  Phaedrux Moderator
                  last edited by 5 Dec 2020, 01:24

                  Right. Do you know what kind of thermistor you have? What kind of printer is it? did it come with the hotend? What is it?

                  Z-Bot CoreXY Build | Thingiverse Profile

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    CarbonVirus
                    last edited by 5 Dec 2020, 03:23

                    It's a fully custom printer I've been tinkering with 2+ years; Core X/Y with a single Z axis drive and a 20x20 cube chassis.
                    The thermistor is the standard thermistor included with the E3D V6 Lite. The bed thermistor is outlined in the above comments.

                    1 Reply Last reply Reply Quote 0
                    • Vetiundefined
                      Veti @CarbonVirus
                      last edited by 5 Dec 2020, 04:04

                      @CarbonVirus said in Unable to set Z offset with PINDA probe:

                      it has a NTC 100k 3950B thermistor.

                      So the B value for your bed is 3950

                      @CarbonVirus said in Unable to set Z offset with PINDA probe:

                      The thermistor is the standard thermistor included with the E3D V6 Lite

                      this one has 2 values B4725 C7.06e-8

                      1 Reply Last reply Reply Quote 1
                      • undefined
                        CarbonVirus
                        last edited by 23 Dec 2020, 23:52

                        Excellent, I've updated the thermistor values and am running a test print ATM; thank you for the assistance @Veti 👍

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