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

    BLtouch not retracting when it's touching the bed

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    5
    15
    3.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.
    • Qonstruktundefined
      Qonstrukt
      last edited by Qonstrukt

      Yes, that's the weird thing. Literally everything works at startup, and if you do it by command. Just the pin is being blocked from being pressed when it touches anything after an S10.

      I just now managed to get it working by sending an S60 after a 200ms delay in deployprobe.g, but I don't get why it's working in this "Touch Switch Mode", and not in the regular mode, while it did with the clone.

      I can't even find anywhere what this Touch Switch Mode even means.

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

        @Qonstrukt said in BLtouch not retracting when it's touching the bed:

        M558 P9 C"zprobe.in+zprobe.mod" H5 F120 T6000

        +zprobe.mod remove that bit for starters.

        @Qonstrukt said in BLtouch not retracting when it's touching the bed:

        But when I press the pin when it's deployed, it will vibrate heavily like it's blocking the pin from coming back in

        Video of that? I've never seen anything like that.

        How exactly do you have it wired?

        Z-Bot CoreXY Build | Thingiverse Profile

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

          @Qonstrukt said in BLtouch not retracting when it's touching the bed:

          Touch Switch Mode

          I've never seen that either.

          https://www.antclabs.com/bltouch-v3

          I have a 3.0 not a 3.1 and I didn't have to do anything different to it then the old 2.0 version.

          Z-Bot CoreXY Build | Thingiverse Profile

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

            I wonder if Touch Switch mode is used when doing a G29 the pin will stay deployed between the probe points to save time. There was a post a little while ago going in detail on how to emulate the behaviour on older versions. That's pure speculation on my part.

            Z-Bot CoreXY Build | Thingiverse Profile

            1 Reply Last reply Reply Quote 0
            • Qonstruktundefined
              Qonstrukt
              last edited by Qonstrukt

              So I've uploaded a video: https://youtu.be/n3MhIpunyQ4

              Here you can see me engaging S10 and pressing it with a business card. If you listen carefully, you can hear it buzz. I could noticeably feel it's pushing the pin down while it's buzzing. If I would have done it more slowly, than it would've kept pushing and buzzing for at least 2 seconds before it would enter alarm mode.

              The second time I reset it with S160, deploy it with S10 again, and then also put it in Touch Switch Mode with S60. You can now see it behaves normally as you would expect with just S10.

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

                Have you tested the probe using a G30 command? Normally when the pin is deployed if you force it in it will error, so that's expected.

                Try this: https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe

                Z-Bot CoreXY Build | Thingiverse Profile

                Qonstruktundefined 1 Reply Last reply Reply Quote 0
                • PaulHewundefined
                  PaulHew
                  last edited by PaulHew

                  @Qonstrukt Please post your complete config.g

                  Regards,

                  Paul

                  RailCore II - Duet Mini + 1LC, Voron V0.1 - Duet Mini
                  Voron 2.4 disassembled..... Waiting for the RailCore Mini....

                  1 Reply Last reply Reply Quote 0
                  • Qonstruktundefined
                    Qonstrukt @Phaedrux
                    last edited by Qonstrukt

                    @Phaedrux said in BLtouch not retracting when it's touching the bed:

                    Have you tested the probe using a G30 command? Normally when the pin is deployed if you force it in it will error, so that's expected.

                    Try this: https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe

                    Doesn't matter if I do it with G30, the bed also causes an alarm.
                    Besides, the old clone didn't show this behaviour.

                    @PaulHew said in BLtouch not retracting when it's touching the bed:

                    @Qonstrukt Please post your complete config.g

                    Regards,

                    Paul

                    My firmware currently is 3.0.1 RC8, it did the same with 3.0 and 3.0.1 RC6.

                    ; Configuration file for Duet WiFi (firmware version 3)
                    ; executed by the firmware on start-up
                    ;
                    ; generated by RepRapFirmware Configuration Tool v2.1.8 on Tue Apr 07 2020 00:17:54 GMT+0200 (CEST)
                    
                    ; General preferences
                    G90                                            ; send absolute coordinates...
                    M83                                            ; ...but relative extruder moves
                    M550 P"Core A6"                                ; 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 P4 S0                                     ; physical drive 0 goes backwards
                    M569 P1 S0                                     ; physical drive 1 goes forwards
                    M569 P2 S1                                     ; physical drive 2 goes forwards
                    M569 P3 S0                                     ; physical drive 3 goes backwards
                    M584 X4 Y1 Z2 E3                               ; set drive mapping
                    M350 X16 Y16 Z16 E16 I1                        ; configure microstepping with interpolation
                    M92 X100.00 Y100.00 Z400.00 E436.54            ; set steps per mm
                    M566 X900.00 Y900.00 Z12.00 E120.00            ; set maximum instantaneous speed changes (mm/min)
                    M203 X6000.00 Y6000.00 Z600 E1200.00           ; set maximum speeds (mm/min)
                    M201 X500.00 Y500.00 Z20.00 E250.00            ; set accelerations (mm/s^2)
                    M906 X1500 Y1500 Z1000 E1500 I30               ; set motor currents (mA) and motor idle factor in per cent
                    M84 S30                                        ; set idle timeout
                    
                    ; Axis Limits
                    M208 X-150 Y-150 Z0 S1                         ; set axis minima
                    M208 X150 Y150 Z260 S0                         ; set axis maxima
                    
                    ; Endstops
                    M574 X2 S1 P"!xstop"                           ; configure active-low endstop for high end on X via pin xstop
                    M574 Y2 S1 P"!ystop"                           ; configure active-low endstop for high end on Y via pin ystop
                    M574 Z1 S2                                     ; configure Z-probe endstop for low end on Z
                    
                    ; Z-Probe
                    M950 S0 C"exp.heater3"                         ; create servo pin 0 for BLTouch
                    M558 P9 C"zprobe.in" H5 F120 T6000             ; set Z probe type to bltouch and the dive height + speeds
                    G31 P500 X-31 Y22 Z4.1                         ; set Z probe trigger value, offset and trigger height
                    M557 X-100:100 Y-100:100 S50                   ; define mesh grid
                    
                    ; Heaters
                    M308 S0 P"bedtemp" Y"thermistor" T100000 B4092 ; 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
                    M143 H0 S60                                    ; set temperature limit for heater 0 to 60C
                    ;M307 H0 B0 S1.00                              ; disable bang-bang mode for the bed heater and set PWM limit
                    M307 H0 A112.3 C573.2 D1.0 S1.00 V11.7 B0      ; auto-tuned heater 0 configuration
                    M140 H0                                        ; map heated bed to heater 0
                    M308 S1 P"e0temp" Y"thermistor" T100000 B4092  ; 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 S250                                   ; set temperature limit for heater 1 to 250C
                    ;M307 H1 B0 S1.00                              ; disable bang-bang mode for heater  and set PWM limit
                    M307 H1 A400.6 C113.7 D7.7 S1.00 V12.1 B0      ; auto-tuned heater 1 configuration
                    
                    ; 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
                    
                    ; Custom settings
                    M572 D0 S0.5                                   ; set pressure advance
                    
                    dc42undefined 1 Reply Last reply Reply Quote 0
                    • dc42undefined
                      dc42 administrators @Qonstrukt
                      last edited by

                      @Qonstrukt said in BLtouch not retracting when it's touching the bed:

                      M558 P9 C"zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds

                      Add the ^ character at the start of zprobe.in to enable the pullup resistor:

                      M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds

                      Duet WiFi hardware designer and firmware engineer
                      Please do not ask me for Duet support via PM or email, use the forum
                      http://www.escher3d.com, https://miscsolutions.wordpress.com

                      Qonstruktundefined 1 Reply Last reply Reply Quote 0
                      • Qonstruktundefined
                        Qonstrukt @dc42
                        last edited by Qonstrukt

                        @dc42 said in BLtouch not retracting when it's touching the bed:

                        @Qonstrukt said in BLtouch not retracting when it's touching the bed:

                        M558 P9 C"zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds

                        Add the ^ character at the start of zprobe.in to enable the pullup resistor:

                        M558 P9 C"^zprobe.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds

                        Thanks! Now with a G30 it actually triggers normally!
                        (I figured this would be the only way since the pull-up register wouldn't have any effect without actually Z-probing.)

                        But, just to confirm I removed the ^ afterwards, and what do you know, now it also triggers normally without it...

                        For me this was a confirmation that using G30 over just using M280 P0 S10 apparently does make a difference, although I'm pretty sure my initial tests were always with G30. It was only for the video that I started using a business card with M280 P0 S10.

                        I'm not sure what else has changed in the meantime, between me removing the zprobe.mod as @Phaedrux mentioned. So thank you both for helping investigate this. 🙂

                        The zprobe.mod was initially added by the RepRapFirmware Configuration Tool, so that might be worthwhile to take a look at. I can't remember me selecting any particular options that might've caused this, but I could be wrong.
                        Nevermind, I see this is an option under the Z-probe assignment, and I just left it on not exactly knowing what it is.

                        Although it still is weird that this exact configuration worked great with a cloned classic BLtouch.

                        Phaedruxundefined dc42undefined 2 Replies Last reply Reply Quote 0
                        • Phaedruxundefined
                          Phaedrux Moderator @Qonstrukt
                          last edited by

                          @Qonstrukt said in BLtouch not retracting when it's touching the bed:

                          Nevermind, I see this is an option under the Z-probe assignment, and I just left it on not exactly knowing what it is.

                          Yes, it's selected by default but it probably shouldn't be. It's on the change list.

                          Glad it's working now.

                          Z-Bot CoreXY Build | Thingiverse Profile

                          1 Reply Last reply Reply Quote 1
                          • dc42undefined
                            dc42 administrators @Qonstrukt
                            last edited by dc42

                            @Qonstrukt said in BLtouch not retracting when it's touching the bed:

                            But, just to confirm I removed the ^ afterwards, and what do you know, now it also triggers normally without it...

                            Without the pullup resistor enabled, it's somewhat random whether the port will register being triggered or not, and how long that will take.

                            @Qonstrukt said in BLtouch not retracting when it's touching the bed:

                            Although it still is weird that this exact configuration worked great with a cloned classic BLtouch.

                            Classic BLTouch pulled its output high as well as low, so it didn't matter whether the pullup resistor was enabled or not.

                            Duet WiFi hardware designer and firmware engineer
                            Please do not ask me for Duet support via PM or email, use the forum
                            http://www.escher3d.com, https://miscsolutions.wordpress.com

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

                              @dc42 said in BLtouch not retracting when it's touching the bed:

                              Classic BLTouch pulled its output high as well as low, so it didn't matter whether the pullup resistor was enabled or not.

                              Does that mean there should be a drop down selector or something for the BLtouch version in the configurator?

                              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