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

    BLTouch always reports same value

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    2
    9
    467
    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.
    • ballanuxundefined
      ballanux
      last edited by ballanux

      First of all, I found someone with the same issue here, but it's a bit old post and unsolved...

      So, as the title says, my probe always reports -5.0mm, I beleive it is the same value I have as the dive height on the M558 command. If I change it to -4, it always reports -4

      I have seen a couple of times different values reported through the many tests I made, but unfortunately I can't replicate it right now, so I think it is not a hardware issue (I haven't changed any of the connections)

      When I do a G30 S-1 test I always get -5.0, even if I put a thick cardboard between the bed and the probe and repeat the test.

      The BLTouch is original and it actually triggers, I think it just reports the wrong value.

      Also, quite strange, but isn't the G30 S-1 supposed to not change the Z value? to me it subtracts 5mm... so if I have it set to 0.0 and do a G30 S-1, it is changed to -5.0mm which I don't understand

      This is my config.g

      ; Configuration file for Duet 3 (firmware version 3)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool v3.2.3 on Sat Apr 24 2021 19:02:10 GMT+0200 (hora de verano de Europa central)
      
       
      ; General preferences
      M111 S0         ; debug off
      G90                                          ; send absolute coordinates...
      M83                                          ; ...but relative extruder moves
      M550 P"3d printer"                           ; set printer name
      M669 K1                                      ; select CoreXY mode
      
      ; Network
      M540 PBE:73:31:34:53:3E                      ; set custom MAC address
      M552 P0.0.0.0 S1                             ; enable network and acquire dynamic address via DHCP
      M586 P0 S1                                   ; enable HTTP
      M586 P1 S0                                   ; disable FTP
      M586 P2 S0                                   ; disable Telnet
      
      G4 S1								         ; wait for expansion boards to initialize
      
      ; Drives
      M569 P0.0 S1 D3                              ; physical drive 0.0 goes forwards
      M569 P0.1 S1 D3                              ; physical drive 0.1 goes forwards
      M569 P1.0 S1 D3                              ; physical drive 1.0 goes forwards
      M569 P1.1 S1 D3                              ; physical drive 1.1 goes forwards
      M569 P1.2 S1 D3                              ; physical drive 1.2 goes forwards
      M569 P0.2 S0                                 ; physical drive 0.2 goes backwards
      M584 X0.0 Y0.1 Z1.0:1.1:1.2 E0.2             ; set drive mapping, three Z motors connected to driver outputs 0, 1 and 2 of expansion board
      M350 X16 Y16 Z16 E16 I1                      ; configure microstepping with interpolation
      M92 X200.00 Y200.00 Z400.00 E420.00          ; set steps per mm
      M566 X900.00 Y900.00 Z24.00 E120.00          ; set maximum instantaneous speed changes (mm/min)
      M203 X6000.00 Y6000.00 Z400.00 E1200.00      ; set maximum speeds (mm/min)
      M201 X500.00 Y500.00 Z100.00 E250.00         ; set accelerations (mm/s^2)
      M906 X800 Y800 Z1200 E800 I30                ; set motor currents (mA) and motor idle factor in per cent
      M84 S30                                      ; Set idle timeout
      
      ; Axis Limits
      M208 X-25:328 Y0:300 Z0:286 S1               ; set axis min:max
      
      ; Endstops                                   ; no puedo usar io0.in para esto puesto que va con el PanelDue
      ; Las entradas de final de carrera tienen un pull-up interno de 27kOhm
      ; Cuando se presiona el final de carrera, este cortocircuita la línea y pasa a 0
      M574 X1 S1 P"io1.in"                         ; configure active-high endstop for low end on X via pin io1.in
      M574 Y1 S1 P"io2.in"                         ; configure active-high endstop for low end on Y via pin io2.in
      M574 Z2 S1 P"1.io0.in+1.io1.in+1.io2.in"     ; configure active-high endstop for high end on Z via pins 1.io0.in+1.io1.in+1.io2.in
      
      ; Z-Probe
      ;M558 P0 H5 F120 T6000                       ; disable Z probe but set dive height, probe speed and travel speed
      ;M557 X15:215 Y15:195 S20                    ; define mesh grid
      M950 S0 C"io7.out"                           ; create servo pin 0 for BLTouch
      M558 P9 C"io7.in" H5 R0.2 F100 T6000 A5     ; set Z probe type to bltouch and the dive height + speeds
      G31 P25 X0 Y20 Z0.000                        ; set Z probe trigger value, offset and trigger height
      M557 X20:280 Y20:280 P4                      ; define mesh grid
      
      ; Z-axis leadscrews positions
      M671 X-75:150:375 Y10:380:10 S6.0
      
      ; Heaters
      M308 S0 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp0
      M950 H0 C"out0" T0                           ; create bed heater output on out0 and map it to sensor 0
      M307 H0 R0.241 C467.8 D3.07 S1.00 V24.2      ; 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"spi.cs0" Y"rtd-max31865"           ; configure sensor 1 as PT100 via CS pin spi.cs0
      M950 H1 C"out1" T1                           ; create nozzle heater output on out1 and map it to sensor 1
      M307 H1 R2.137 C196.5:184.7 D5.46 S1.00 V24.3; tuning parameters
      M307 H1 B0 S1.00                             ; disable bang-bang mode for heater  and set PWM limit
      M143 H1 S280                                 ; set temperature limit for heater 1 to 280C
      
      ; Fans
      M950 F0 C"out7" Q500                         ; create fan 0 on pin out7 and set its frequency
      M106 P0 C"Heatbreak Fan" S0 L1.0 X1.0 H1 T45           ; set fan 0 value. Thermostatic control is turned on
      M950 F1 C"out8" Q15000                       ; create fan 1 on pin out8 and set its frequency
      M106 P1 C"Nozzle Fan" B0.5 S0 H-1            ; set fan 1 value. Thermostatic control is turned off
      
      ; 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
      
      ; Custom settings are not defined
      
      ; Miscellaneous
      M575 P1 S1 B57600                            ; enable support for PanelDue
      

      and homez.g:

      ; homez.g
      ; called to home the Z axis
      ;
      ; generated by RepRapFirmware Configuration Tool v3.2.3 on Sat Apr 24 2021 19:02:10 GMT+0200 (hora de verano de Europa central)
      G91             			; relative positioning
      G1 H2 Z5   					; lift Z relative to current position
      G90             			; absolute positioning
      G1 X15.0 Y20.0 F6000 		; go to first probe point
      G30            		        ; home Z by probing the bed
      

      Edit: by the way, I did do the calibration of the z probe but my G31 command has Z as 0.0 as I was doing several tests... the result is the same if I input my Z value (which also now I don't know if I can trust)
      Thanks!

      Hiroakiundefined 1 Reply Last reply Reply Quote 0
      • Hiroakiundefined
        Hiroaki @ballanux
        last edited by

        @ballanux Where and how do you see the reported value ?

        ballanuxundefined 1 Reply Last reply Reply Quote 0
        • ballanuxundefined
          ballanux @Hiroaki
          last edited by

          @hiroaki

          Through a notification in the DWC when I do the G30 command

          Hiroakiundefined 1 Reply Last reply Reply Quote 0
          • Hiroakiundefined
            Hiroaki @ballanux
            last edited by

            @ballanux
            Mine is like this.
            ; Z-Probe
            M307 H7 A-1 C-1 D-1 ; disable heater on PWM channel for BLTouch
            M558 P9 H3 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds
            G31 P500 X-25 Y0 Z4.75 ; set Z probe trigger value, offset and trigger height
            M557 X10:340 Y10:330 S200 ; define mesh grid

            When I send G30 command the reported value is always 4.75.

            ballanuxundefined 1 Reply Last reply Reply Quote 0
            • ballanuxundefined
              ballanux @Hiroaki
              last edited by

              @hiroaki said in BLTouch always reports same value:

              When I send G30 command the reported value is always 4.75.

              Even if you purposedly change the distance? shouldn't you read a different value if for example put a piece of paper in between? If it always reads the same value... how are you supposed to do the calibration procedure? Or do I have to read the value in a different way?

              Hiroakiundefined 2 Replies Last reply Reply Quote 0
              • Hiroakiundefined
                Hiroaki @ballanux
                last edited by

                @ballanux In my code 4.75 is the difference of the sensing point(level) of BL touch and top of the nozzle. So even if I put a paper on it the reported value will be the same.
                So if you put a paper T=0.1 and send G30, the height of the nozzle will be also a 0.1mm higher.

                ballanuxundefined 1 Reply Last reply Reply Quote 0
                • ballanuxundefined
                  ballanux @Hiroaki
                  last edited by

                  @hiroaki said in BLTouch always reports same value:

                  @ballanux In my code 4.75 is the difference of the sensing point(level) of BL touch and top of the nozzle. So even if I put a paper on it the reported value will be the same.
                  So if you put a paper T=0.1 and send G30, the height of the nozzle will be also a 0.1mm higher.

                  mmm you are correct, as the bed is moving it will not matter if I put anything in between, a bit of a brain fart on my part....

                  I tried to find the root cause of my problem, which is that I haven't been able to do an automatic bed leveling yet... but in doing so I asked the wrong question 🙄

                  I think is better that I keep digging and do another post when I have more concrete information then

                  Thanks, it has been quite helpfull as I was stuck thinking it was the sensor's fault

                  Hiroakiundefined 1 Reply Last reply Reply Quote 0
                  • Hiroakiundefined
                    Hiroaki @ballanux
                    last edited by

                    @ballanux Regarding the calibration. For eg.
                    Accroding to my code G31 ....Z4.75.
                    The send G30 or 31 command then you get the report of 4.75.
                    The you start printing.
                    The machine move the nozzle down to certain value 0.1(eg).
                    This nozzle location is 4.65mm down from the point the BL touch sensed.
                    So in this case if you feel the nozzle has to be 0.2 mm higher, the you need to change the value 4.75 to 4.55.
                    of if you have a thickness gauge maybe you can measure the height and adjust like above.

                    1 Reply Last reply Reply Quote 0
                    • Hiroakiundefined
                      Hiroaki @ballanux
                      last edited by

                      @ballanux When I first put BL touch, I thought the same way!
                      Here is my eg for you.
                      Mine has four lead screws and automatically level the bed !
                      It's very convenient!
                      Cheers.
                      ; Z-Probe
                      M307 H7 A-1 C-1 D-1 ; disable heater on PWM channel for BLTouch
                      M558 P9 H3 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds
                      G31 P500 X-25 Y0 Z4.75 ; set Z probe trigger value, offset and trigger height
                      M557 X10:340 Y10:330 S200 ; define mesh grid

                      ;leadscrews location
                      M671 X410:410:-65:-65 Y35:305:305:35 S10 ; leadscrews at rear left, front left, front right, and rear right

                      And the following is the code of deployprobe.g
                      ; deployprobe.g
                      ; called to deploy a physical Z probe
                      ;
                      ; generated by RepRapFirmware Configuration Tool v3.1.4 on Tue Aug 04 2020 21:15:41 GMT+0900 (日本標準時)
                      M280 P7 S10 ; deploy BLTouch

                      And following is retractprobe.g
                      ; retractprobe.g
                      ; called to retract a physical Z probe
                      ;
                      ; generated by RepRapFirmware Configuration Tool v3.1.4 on Tue Aug 04 2020 21:15:41 GMT+0900 (日本標準時)
                      M280 P7 S90 ; retract BLTouch

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