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

    My take on Installing a BL Touch Probe

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    15
    42
    8.6k
    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.
    • larsundefined
      lars
      last edited by

      Check the manual for the BLTouch-Classic Manual (March 2017) at https://www.antclabs.com/manual
      It clearly say you do not need external resistors, just cut the trace. I have one of these and can confirm it works.

      1 Reply Last reply Reply Quote 0
      • WZ9Vundefined
        WZ9V
        last edited by

        They updated the website at some point. BLTouch Classics that have a serial number sticker do not require the resistor but need the logic jumper cut. The early ones without a serial number require the resistor.

        The one in the picture above is one of the older Classics. On the newer Classics there is a serial number sticker and on the side a small jumper labeled LOGIC. It is different from the second picture above (Smart version)

        Scroll down on this page and there are instructions https://www.indiegogo.com/projects/bltouch-auto-bed-leveling-sensor-for-3d-printers#/

        1 Reply Last reply Reply Quote 0
        • SpeedyDadundefined
          SpeedyDad
          last edited by

          Yup, the manual is where I found the reference to the jumper and mine has it.

          1 Reply Last reply Reply Quote 0
          • FrankNPrinterundefined
            FrankNPrinter
            last edited by

            I have been messing with my bltouch on FT5(cartasian duet wifi for a while now. I have a z home sensor so just using bltouch for bed leveling. I have gotten as far as being able to deploy and retract the probe and test. it does appear to work when triggered as per above. I think i am close but As soon as i start the mesh bed level(g29) the ph moves to 1st probe point and i get an error "Z probe already triggered before probing move started. I can see bltouch go into alarm state AFTER it moves to probe position and Z has started to raise up and make contact with bltouch so it is getting triggered by probing but errors out. Am i right in thinking my z offset is wrong or is this something else entirely? could i edit this to adjust trigger height? (M558 P5 X-22 Y-9 Z2.65 H3 F200 T5000 ) Config below and i have micro stepped them successfully to g29 then error.

            ; bed.g
            ; called to perform automatic bed compensation via G32

            ; Clear any bed transform
            M561

            ; Home All
            G28

            ;Mesh Level
            M557 X40:220 Y40:220 S25 ; Define grid
            M401 ; Deploy probe
            G29 ; Start mesh level
            M374 ; Save results, but this might not be necessary
            M402 ; Retract probe

            ;G1 X20 Y20 Z10 F3000 ; Dock position

            Deployprobe.g

            M280 P3 S10 I1 ;deploy probe might need to try no I1

            #Retractprobe.g
            M280 P3 S90 I1 ; retract probe might need to try no I1

            #Config.g
            ; Configuration file for Duet WiFi (firmware version 1.17)
            ; generated by RepRapFirmware Configuration Tool on Thu Feb 23 2017 12:18:06 GMT-0500 (Eastern Standard Time)

            ; General preferences
            M111 S0 ; Debugging off
            G21 ; Work in millimetres
            G90 ; Send absolute coordinates…
            M83 ; ...but relative extruder moves
            M555 P1 ; Set firmware compatibility to look like RepRapFirmare
            M208 X0 Y0 Z0 S1 ; Set axis minima
            M208 X296 Y280 Z450 S0 ; Set axis maxima

            ; Endstops
            M574 X1 Y2 Z1 S0 ; Define active low and unused microswitches

            ; BLTouch
            M307 H3 A-1 C-1 D-1
            M558 P5 X-22 Y-9 Z2.65 H3 F200 T5000
            G31 X-22 Y-9 Z1

            M584 X0 Y1:4 Z2 E3

            ; Drives
            M569 P0 S0 ; Drive 0 goes forwards - X
            M569 P1 S0 ; Drive 1 goes Backwards - Y
            M569 P2 S0 ; Drive 2 goes Backwards - Z
            M569 P3 S1 ; Drive 3 goes forwards - E0
            M569 P4 S1 ; Drive 4 goes forwards - Y

            M350 X32 Y32 Z32 E32 I1 ; Configure microstepping with interpolation
            M92 X320 Y320 Z1610 E340.5 ; Set steps per mm
            M566 X600 Y600 Z600 E120 ; Set maximum instantaneous speed changes (mm/min)
            M203 X6000 Y6000 Z1000 E1200 ; Set maximum speeds (mm/min)
            M201 X500 Y500 Z500 E500 ; Set accelerations (mm/s^2)
            M906 X1500 Y1500 Z1500 E1500 I30 ; Set motor currents (mA) and motor idle factor in per cent
            M84 S30 ; Set idle timeout

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

              Just a guess: does it need a delay between deploying it and probing the first point? If so then I suggest a delay command at the end of deployprobe.g. For example, G4 P200 will delay 200ms.

              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

              1 Reply Last reply Reply Quote 0
              • FrankNPrinterundefined
                FrankNPrinter
                last edited by

                hello again, I will take your guess over my "know" any day of the week. Thanks again but no luck so far. tried delay of 200 and 500 and same result and error. Probe deploys bed moves to 1st probe point bed comes up and it appears to trigger but bl touch goes into alarm (blinking)

                Deployprobe.g

                M280 P3 S10 I1 ;deploy probe might need to try no I1

                G4 P200 ;will delay 200ms.

                when i do this step by step from touch screen console, same result. maybe i am doing something wrong?
                G28

                M557 X40:220 Y40:220 S25 ; Define grid

                M280 P3 S10 I1 ;deploy probe

                G4 P200 ; delay 200ms

                G29 ; Start mesh level

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

                  Does anyone know what puts a BLTouch into alarm mode? Could it be incomplete deployment?

                  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

                  1 Reply Last reply Reply Quote 0
                  • FrankNPrinterundefined
                    FrankNPrinter
                    last edited by

                    this is interesting. after i run g29 and probe errors out, i ran m280 p3 s60 i1 and alarm clears. ran g29 again and it runs successfully. i really dont get that but clearly it works right the 2nd time. anyone got a clue why? i tried delay command but no idea what max is (up to "g4 p2000")

                    1 Reply Last reply Reply Quote 0
                    • FrankNPrinterundefined
                      FrankNPrinter
                      last edited by

                      i tried to print directly after (ft5 bed level test) and print head was over 5mm above bed at start. it did say height map was saved when g29 completed so how could it be so far off?

                      1 Reply Last reply Reply Quote 0
                      • FrankNPrinterundefined
                        FrankNPrinter
                        last edited by

                        this is height map but i have no idea what it is telling me lol
                        RepRapFirmware height map file v1 mean error 0.10 deviation 0.68
                        xmin xmax ymin ymax radius spacing xnum ynum
                        10 260 10 240 -1 25 11 10
                        0.856 0.487 0.27 0.047 -0.176 -0.4 -0.612 -0.83 -1.036 -1.222 -1.458
                        0.811 0.599 0.373 0.139 -0.09 -0.298 -0.492 -0.706 -0.915 -1.12 -1.316
                        0.858 0.655 0.436 0.217 0.004 -0.201 -0.386 -0.593 -0.787 -0.965 -1.157
                        1.047 0.721 0.515 0.296 0.107 -0.096 -0.302 -0.472 -0.688 -0.876 -1.051
                        1.101 0.798 0.591 0.399 0.191 0.002 -0.183 -0.346 -0.547 -0.723 -0.908
                        1.1 0.888 0.694 0.489 0.292 0.125 -0.074 -0.259 -0.416 -0.583 -0.755
                        1.181 1.001 0.798 0.611 0.421 0.243 0.095 -0.099 -0.259 -0.437 -0.595
                        1.269 1.094 0.899 0.714 0.531 0.363 0.188 0.027 -0.13 -0.298 -0.458
                        1.36 1.186 1.006 0.823 0.65 0.483 0.307 0.155 -0.004 -0.155 -0.235
                        1.378 1.23 1.067 0.888 0.727 0.567 0.419 0.27 0.126 0.071 -0.038

                        1 Reply Last reply Reply Quote 0
                        • FrankNPrinterundefined
                          FrankNPrinter
                          last edited by

                          this is my bed.g now odd i know but it does work as far as running probe and getting result.
                          ; bed.g
                          ; called to perform automatic bed compensation via G32

                          G28 ; Home All

                          ;–--------- Mesh Level ------------------

                          M561 ; Clear any bed transform
                          M557 X10:260 Y10:240 S25 ; Define grid
                          M401 ; Deploy probe
                          G29 ; Start mesh level (this is where it deploys probe, moves to 1st point and then alarms)
                          M280 P3 S60 I1 ; Clear Alarm
                          G29 ; Start mesh level
                          M402 ; Retract probe

                          Deployprobe.g

                          M280 P3 S10 I1 ;deploy probe

                          G4 P200 ;will delay 200ms.

                          Config.g

                          ; BLTouch
                          M307 H3 A-1 C-1 D-1
                          M558 P5 X-22 Y-9 Z2.65 H3 F200 T5000
                          G31 X-22 Y-9 Z1

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

                            The Z parameter in your G31 command is the nozzle height above the bed when the probe triggers. You need to set that correctly to get the nozzle at the correct height when you start printing. See https://duet3d.com/wiki/Using_mesh_bed_compensation#Checking_the_trigger_height.

                            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

                            1 Reply Last reply Reply Quote 0
                            • FrankNPrinterundefined
                              FrankNPrinter
                              last edited by

                              i did a manual bed level last night and re ran mesh level. It still runs fine and the result appeared to be way better now but the nozzle is still way to high when it starts to print. I have z offset in slic3r set to 0 so not sure where this is coming from but z is off by close to 5mm after running routine. very odd.

                              Sorry, didn't see your g31 reply till just now, definitely going to play with that setting. Thanks much!

                              1 Reply Last reply Reply Quote 0
                              • FrankNPrinterundefined
                                FrankNPrinter
                                last edited by

                                it appears the z probe error is caused when it deploys then moves. it starts moving to soon and drags a little at start of move to 1st home position. is there a way i can delay a command by a second or 2? that should fix the error and having to clear alarm. still playing with g31 to see if that fixes it.

                                1 Reply Last reply Reply Quote 0
                                • fulgundefined
                                  fulg
                                  last edited by

                                  @dc42:

                                  Does anyone know what puts a BLTouch into alarm mode? Could it be incomplete deployment?

                                  That is exactly it. Part of the problem is that G29 and G30 do not handle deployprobe.g and retractprobe.g, so you have to deploy the probe yourself before using them. This means 1) the probe is deployed during the moves and 2) the BLTouch can enter the error state if you do not rise Z fast enough to clear the pin re-extending after the trigger, because the servo signal still says the probe should be deployed.

                                  Maybe this is the wrong place to suggest this (I don't mean to hijack the thread!) but it would help a lot if G29 and G30 could call the deploy and retract macros of the probe implicitly, so RRF would only deploy the pin before moving Z down for the actual Z test, and avoid the early redeploy of the pin during the Z up. It should also be possible for RRF to detect the error state of the BLTouch (I don't remember the details, I could look them up or just write the code), and fail the probe to avoid the inevitable head crashing that will occur. Much like it already does when you attempt to probe with the probe already triggered.

                                  It would also mean you could then do G29 and G30 from the Gcode console without fear of crashing the head. Right now you cannot even do a manual G30 because even if you remember to deploy the BLTouch first, once G30 is done Z is unchanged from the trigger height, which will cause the BLTouch to go in its error state (as it cannot extend the pin further, it has already been triggered!). You can also see this on a G29 for the final point, the pin will extend one last time for no reason while Z is rising to its probe clearance height, before the M402 takes effect.

                                  Cheers,
                                  Ben.

                                  VORON V2 CoreXY + Duet3 Mini5+ Ethernet v1.0 with Mini2+ expansion, VORON V0 CoreXY + Duet2 Maestro

                                  1 Reply Last reply Reply Quote 0
                                  • FrankNPrinterundefined
                                    FrankNPrinter
                                    last edited by

                                    Thanks dc42, i think you are right on the money for my issue, probe is still deploying when it starts to move to 1st position. even a 1 or 2 second pause would do the trick. is the a g code for that by chance? Just did bed leveling again and adjusted my g31 z height. post mesh, i moved z to 0 and it appears spot on but when i print i am still 1 to 2 mm above bed. odd considering z is perfect after mesh level runs (paper just snug under ph when nozzle is z=0) verified slic3r has no z ofset so still have to figure out where gap is coming from.

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

                                      The G4 command can be used to implement a delay.

                                      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

                                      1 Reply Last reply Reply Quote 0
                                      • FrankNPrinterundefined
                                        FrankNPrinter
                                        last edited by

                                        thank you sir!
                                        I found the switch for whole seconds so that should do it. 1 thing that still bothers me is i have a 300 x 300 mm bed, after running mesh bed leveling i was expecting to be able to print a good test grid but the result is way worse than i get doing it manually. a couple of the corners are more that .3 mm off and print in mid air so not good with .2 layer height lol My bed has a 120 vac 750 watt heater mat and 6 screws with springs supporting bed from solid aluminum plate so i am concerned about warping but the glass should take care of that right? . 1 piece of 1/4 inch cork tile with heater glued to underside of pcb bed and glass with 3mm pei sheet on top. i have dual z motors but z axis is not tied together (upgrade coming soon to reduce to 1 z motor and tie both z lead screws to 1 belt) I suspect my bed can get crooked from time to time and thought mesh bed compensation would take care of that. I did do a solid mechanical alignment 1st so bed is level with nozzle in all corners and above each screw mount. I also don't see the results in web or touch screen console no apparent button or menu. i thought i should have both.

                                        G4: Dwell
                                        Support FiveD Teacup Sprinter Marlin Repetier Smoothie RepRapFirmware Machinekit MakerBot grbl Redeem MK4duo
                                        Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes
                                        Pause the machine for a period of time.
                                        Parameters
                                        Pnnn Time to wait, in milliseconds
                                        Snnn Time to wait, in seconds (Only on Repetier, Marlin, Smoothieware, and RepRapFirmware 1.16 and la

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

                                          If you click on the arrow next to the button "Auto bed compensation" in Duet WebControl, it will display the last height map saved. It should display it automatically after running G32 or G29 from DuetWebControl too.

                                          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

                                          1 Reply Last reply Reply Quote 0
                                          • FrankNPrinterundefined
                                            FrankNPrinter
                                            last edited by

                                            yup that is what i understand but there is no arrow. i tried the g4 and added 5 second pause before deploy, after deploy and it still errors out but clearing alarm lets it run fine 2nd time. even tried to clear alarm twice to see if i could clear it on the 1st error and no luck there either

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