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

    BL Touch Help Needed Please

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    4
    20
    2.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.
    • Asdasd1234undefined
      Asdasd1234
      last edited by

      Hi guys,

      I've setup the BL touch to the specs outlined on the wiki to the best of my ability but I cant quite get it to work on my duet wifi. Any help would be greatly appreciated as I've spent all night trying to get this working 😞
      I've wired it up to to the z probe and pin 1,2,8 and put a 240ohm resistor across the black and white lines (signal and ground it should be)

      Currently:

      • When I power on the machine, it looks like it is self testing by extending and retracting a couple times with the internal light flashing while doing so before settling into the retracted stage.
      • I can manually extend it with 'M280 P3 S10 I1'
      • I can manually retract it with 'M280 P3 S90 I1'
      • But when I do the testing with 'M280 P3 S60 I1' I cant get the values to change on the web interface even after trying 20 odd times as it says sometimes it wont show correctly.
      • When I try to home z, it lowers, extends the pin , then just keeps raising the bed (corexy) and ignores when the pin gets pushed up and would crash into the nozzle if I allowed it.

      my config file is : (Updated from the help below but still not working 😞 )

      [[language]]
      ; Configuration file for Duet WiFi (firmware version 1.20 or newer)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool on Tue Jan 16 2018 19:48:58 GMT+0000 (GMT Standard Time)
      
      ; General preferences
      M552 S1
      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
      M307 H3 A-1 C-1 D-1 			;
      ; Automatic saving after power loss is not enabled
      
      M667 S1                                   ; Select CoreXY mode
      M208 X5 Y15 Z0 S1                         ; Set axis minima
      M208 X295 Y300 Z200 S0                    ; Set axis maxima
      
      ; Endstops
      M574 X1 Y2 S0                             ; Set active low endstops
      M574 Z0 S2                                ; Set endstops controlled by probe
      M558 P5 X0 Y0 Z0 H5 F100 T2000		;
      G31 X0 Y0 Z0 P1			;
      M557 X15:280 Y15:285 S50                  ; Define mesh grid
      
      ; Drives
      M569 P0 S1                                ; Drive 0 goes forwards
      M569 P1 S1                                ; Drive 1 goes forwards
      M569 P2 S1                                ; Drive 2 goes forwards
      M569 P3 S0                                ; Drive 3 goes forwards
      M350 X16 Y16 Z16 E16 I1                    ; Configure microstepping with interpolation (I1)
      M92 X80 Y80 Z1500 E424                    ; Set steps per mm
      M566 X900 Y900 Z50 E120                   ; Set maximum instantaneous speed changes (mm/min)
      M203 X20000 Y20000 Z120 E1200             ; Set maximum speeds (mm/min)
      M201 X1500 Y1500 Z10 E250                ; Set accelerations (mm/s^2)
      M906 X800 Y800 Z750 E800 I30              ; Set motor currents (mA) and motor idle factor in per cent
      M84 S120                                  ; Set idle timeout
      
      ; Heaters
      M301 H0 S1.00 P10 I0.1 D200 T0.4 W180 B30 ; Use PID on bed heater (may require further tuning)
      M305 P0 T100000 B4138 C0 R4700            ; Set thermistor + ADC parameters for heater 0
      M143 H0 S120                              ; Set temperature limit for heater 0 to 120C
      M305 P1 T100000 B4138 C0 R4700            ; Set thermistor + ADC parameters for heater 1
      M143 H1 S280                              ; Set temperature limit for heater 1 to 280C
      
      ; Tools
      M563 P0 D0 H1                             ; 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
      
      ; Network
      
      ; Fans
      M106 P0 S1 I0 F500 H-1                    ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
      M106 P1 S1 I0 F500 H1 T45                 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
      M106 P2 S1 I0 F500 H1 T45                 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned on
      
      ; Custom settings are not configured
      
      ;M280 P3 S90 I1
      
      

      My homez.g file is :

      [[language]]
      ; homez.g
      ; called to home the Z axis
      ;
      ; generated by RepRapFirmware Configuration Tool on Fri Jan 19 2018 18:24:18 GMT+0800 (China Normalzeit)
      G1 x150 y150 f7000
      G91                 ; relative positioning
      G1 Z5 F6000         ; lift Z relative to current position
      M98 Pdeployprobe.g  ;deploy the probe
      G30            ; move Z down until the switch triggers
      G92 Z2              ; set Z position to trigger height
      M98 Pretractprobe.g ;retract the probe after triggering and stop.
      
      ; Uncomment the following lines to lift Z after probing
      ;G91              ; relative positioning
      ;G1 Z5 F100       ; lift Z relative to current position
      ;G90              ; absolute positioning
      
      

      My deployprobe.g file is :

      [[language]]
      M280 P3 S10 I1
      
      

      My retractprobe.g file is :

      [[language]]
      M280 P3 S90 I1
      
      

      Please could someone knowledgeable take a look over this and see if they can work out where I've gone wrong, it would be greatly appreciated!!

      Many thanks!

      1 Reply Last reply Reply Quote 0
      • Juergen110undefined
        Juergen110
        last edited by

        Hi,

        • But when I do the testing with 'M280 P3 S60 I1' I cant get the values to change on the web interface even after trying 20 odd times as it says sometimes it wont show correctly.

        I also "Fight" with the BLTouch in the last Days, and now it´s working.
        But i also have the same issue as you wrote: I Never seen a change of the Value in the Web Interface….Always 0....
        All Tests are okay. It works on Homing for Z-Axis and also reports this "Bed-Level-Picture" afer a G29 Command.
        Everything fine.
        So i ignore that it doesn´t change the Value 🙂

        To your Issue, that it don´t stop for the Homing:
        I´m in the Office now, and could not check my Files for config.g and homez.g. I send some additional Info to you, when i´m back home.
        In my Memories: Change in homez.g the "G1 S1 Z-205 F3000" to G30

        Best Regards, Juergen

        1 Reply Last reply Reply Quote 0
        • Asdasd1234undefined
          Asdasd1234
          last edited by

          Hi Juergen,

          Thanks for the advice! I'll ignore the web-interface section for now when testing and just focus on whether I can get it to home or not.

          I wont be able to test it for another 10 or so hours as I'm about to head off to work, but I'll definitely try swapping that line to G30 like you mentioned.

          I'll update this with how it goes,

          Thanks

          1 Reply Last reply Reply Quote 0
          • Juergen110undefined
            Juergen110
            last edited by

            Hi,
            as i mentioned above, here my homez.g :

            ; homez.g
            ; called to home the Z axis
            ;
            ; generated by RepRapFirmware Configuration Tool on Fri Jan 19 2018 18:24:18 GMT+0800 (China Normalzeit)
            G91 ; relative positioning
            G1 Z5 F6000 ; lift Z relative to current position
            M98 Pdeployprobe.g ;deploy the probe
            G30 S-1 ; move Z down until the switch triggers
            G92 Z2 ; set Z position to trigger height
            M98 Pretractprobe.g ;retract the probe after triggering and stop.

            ; Uncomment the following lines to lift Z after probing
            ;G91 ; relative positioning
            ;G1 Z5 F100 ; lift Z relative to current position
            ;G90 ; absolute positioning

            I hope it helps to you.

            Here´s what in my config.g for the Endstops:

            ; Endstops
            M574 Y0 X0 S0 ; Set active high endstops
            M574 Z1 S2 ; Set endstops controlled by probe
            M307 H3 A-1 C-1 D-1 ;
            M558 P5 X0 Y0 Z1 H5 F100 T2000
            G31 X0 Y20 Z2 P25
            M557 X30:270 Y30:270 S60 ; Define mesh grid

            And don´t forget to change also the homeall.g for the Z-Axis !!!
            Simply copy the lines from homez.g, when it works.

            Best Regards, Juergen

            1 Reply Last reply Reply Quote 0
            • Asdasd1234undefined
              Asdasd1234
              last edited by

              Thank you very much,
              I though I might have to change the homez.g but the wiki instructions mentioned nothing about it (or I missed them, but I read them like 10 times).

              I completely missed the homeall.g file though, I'll be sure to correct it once I get this thing homing correctly.

              EDIT:

              I've realised now that I need to at least change M574 Z0 S0 to M574 Z0 S2. I already had that from the wiki but I must have left it as 0 when I started messing about with it yesterday.

              Fingers crossed with that change and the change to the homing files you have submitted (G30 code) I'll be able to get it working again later!

              1 Reply Last reply Reply Quote 0
              • Asdasd1234undefined
                Asdasd1234
                last edited by

                Nope, still not working sadly 😞
                I've updated the main post to show my current configs but I just cant get it to register when its triggered.

                I'm clueless now lol, please help!

                If its worth mentioning, I'm fairly sure the signal wire is fine as I had it working fine on my arduino/ramps setup beforehand.

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

                  @Asdasd1234:

                  I've realised now that I need to at least change M574 Z0 S0 to M574 Z0 S2. I already had that from the wiki but I must have left it as 0 when I started messing about with it yesterday.

                  That doesn't actually matter, because using G30 for Z homing tells it to use the Z probe anyway.

                  Suggestions:

                  1. Read https://duet3d.com/wiki/Test_and_calibrate_the_Z_probe.

                  2. Are you sure you needed the 240 ohm resistor? More recent versions of BLTouch have a trace to cut instead.

                  3. Check that you have the black and white wires connected to the correct pins on the Z probe connector.

                  4. Confirm you are using a Duet WiFi, not a Duet 085.

                  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
                  • garyd9undefined
                    garyd9
                    last edited by

                    To not ever seeing a non-0 P value:

                    While holding your finger against the bltouch probe (so it can't deploy properly), send a M401 command to deploy the probe. Because the probe can't deploy (due to your finger being in the way), the bltouch should go into an error state (flashing red.) At this point, does the web interface (or paneldue) show a P of 1000 (or anything other than 0?)

                    While I doubt this relates to your specific problem, I noticed that you use "G92 Z2" after G30. Once you get your G31 command set up to reflect the Z trigger height, remember to remove the G92 command that sets "Z".

                    G30 – sets Z to the trigger height specified in G31 when the probe triggers
                    G92 Z2 -- overwrites the Z value to 2.0

                    "I'm not saying that you are wrong - I'm just trying to fit it into my real world simulated experience."

                    1 Reply Last reply Reply Quote 0
                    • Asdasd1234undefined
                      Asdasd1234
                      last edited by

                      Hi,

                      1. I tried that link before, but I get stuck on "If the Z movement doesn't stop, turn off power to the printer before the head crashes into the bed.". It just wont register the pin being lifted

                      2. Honestly, not entirely sure. But the box came with one in it (it's a chinesium knockoff that I've already had working on the ramps setup without the resistor). I assumed since it came with the resistor that this was its purpose. It's installed in a bit of an awkward place to see if it has the trace to cut instead. Would it harm the duet if I took off the resistor for one or two test runs?

                      3. This pic () shows the black and white cables, this pic ( ) shows the orange,red,brown ones. I think they are correct?

                      4. I'm 90% certain thats the one I ordered. The picture seems to match up and I do connect to it through wifi although I'm not sure if the duet 085 has wifi also?

                      @garyd9:

                      To not ever seeing a non-0 P value:

                      While holding your finger against the bltouch probe (so it can't deploy properly), send a M401 command to deploy the probe. Because the probe can't deploy (due to your finger being in the way), the bltouch should go into an error state (flashing red.) At this point, does the web interface (or paneldue) show a P of 1000 (or anything other than 0?)

                      I've just done that and the P value ( I assume you mean the z-probe box in this link ?) still shows 0. Maybe the signal wire is to blame? maybe I do need to bust out an oscilloscope then

                      1 Reply Last reply Reply Quote 0
                      • garyd9undefined
                        garyd9
                        last edited by

                        On mine, while it's in an error state, the z-probe shows "1000." So, it seems like the signal isn't getting to the duet.

                        "I'm not saying that you are wrong - I'm just trying to fit it into my real world simulated experience."

                        1 Reply Last reply Reply Quote 0
                        • Asdasd1234undefined
                          Asdasd1234
                          last edited by

                          ah, In that case, I need to find out if its safe to take off the resistor for a couple runs.
                          I dont suppose @dc42 could chime in on that one?

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

                            Yes you have a Duet WiFi.

                            The first thing to check is that with the BLTouch connector disconnected from the Z probe connector, you get a Z probe reading of 1000. If you don't then there is probably an error in the configuration.

                            It should be safe to remove the 240 ohm resistor because the Z probe input is quite well protected.

                            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
                            • Asdasd1234undefined
                              Asdasd1234
                              last edited by

                              Woooo!!!!!!
                              removing the 240 ohm resistor seems to have done it. (along with changing all those settings above that people mentioned )

                              That'll teach me to buy cheap I suppose. I measured the voltage across the black and white leads and only read 1.3v on the multimeter while it was in the error state flashing at me . But that may have been due to it pulsing like a pwm signal and the multimeter just averaging it. Who knows.

                              What i do know is that it seems to be working now!

                              I'll still bust out the oscilacope tomorrow to see what on earth is actually going on with that signal.

                              Many thanks to everyones input, its been a great help!, we kinda dived into the deep-end on this build and went all on building a printer from having never owned one before and although the building part was pretty straight forward, I massively underestimated the software side of things.

                              1 Reply Last reply Reply Quote 0
                              • Juergen110undefined
                                Juergen110
                                last edited by

                                Hi garyd9,
                                @garyd9:

                                While I doubt this relates to your specific problem, I noticed that you use "G92 Z2" after G30. Once you get your G31 command set up to reflect the Z trigger height, remember to remove the G92 command that sets "Z".

                                G30 – sets Z to the trigger height specified in G31 when the probe triggers
                                G92 Z2 -- overwrites the Z value to 2.0

                                Oups….
                                Thanks a lot for this Reminder ! You are right !
                                I also forget to remove it. In my Case, it doesn´t matter, because it is the same Value in there.
                                But it makes sense to remove.

                                Best Regards, Juergen

                                1 Reply Last reply Reply Quote 0
                                • Juergen110undefined
                                  Juergen110
                                  last edited by

                                  and some additional Thing to Asdad1234, but maybe you already know:
                                  If you want to use the "Mesh-Grid" and Auto-leveling Function, please remind that you don´t start with an G28 in your Slicer-Program !
                                  Most generate automatically a Start-Code, that Contains only the G28.
                                  You need to replace it with an G29 Command (or later with an G29 S-1 if you already created the File and has no Changement)

                                  I was stucked on this funny small Issue, and wondering why i don´t get an Automatic Leveling when i start a Test-Print…..

                                  After i found this, it runs pretty well.
                                  Also when i change my Print-Platform to another, lightly deformed Glass Plate, i directly have a perfect First Layer 🙂

                                  Best Regards, Juergen

                                  1 Reply Last reply Reply Quote 0
                                  • Asdasd1234undefined
                                    Asdasd1234
                                    last edited by

                                    Thanks for the info Jeurgen,

                                    I only use the "load mesh bed from file" command in the slicing setup so hopefully that's not an issue for now.

                                    I don't think I can get away with using the z-probe for the actual mesh levelling due to :

                                    • The sensor is about 5cm away from the nozzle
                                    • I'm using the mesh to combat carriage sag rather than a warped bed so the readings will be off in one direction to the left of the bed and the other direction to the right of the bed.

                                    On a slightly un-related note. Is there any way to change the increments I can move the z-axis in when doing the manual mesh bed levelling?
                                    Currently the pop-up window only lets you move in 0.1mm increments, which is potentially a full layer high later on. I have a feeler guage 0.01mm thick so it would be nice to actually level the bed down to the correct level rather than "give or take half a layer"

                                    1 Reply Last reply Reply Quote 0
                                    • Juergen110undefined
                                      Juergen110
                                      last edited by

                                      Hi Guys,
                                      yesterday evening i found out that i also need some more Help…..

                                      What happend:
                                      After the Reminder from Gary (Thanks!) i remove the "G92 Z2" from my homez.g , after it Probes with G30.
                                      Unfortunately then it DON`T set the Value for the Z-Axis to 2
                                      And it also don´t switch the Z-Axis "Home-Button" to Blue and still says that Z is not Homed
                                      BUT: it stopped the Axis from Moving, when the BL-Touch is triggered.

                                      Now i´m a little bit lost..... What could be wrong ??
                                      WITH additional G92 everything works well. I could home the Axis, could do the Mesh-Bed-Leveling, and also the Print_Layers are perfect....
                                      This is in my Config.g

                                      ; Endstops
                                      M574 Y0 X0 S0 ; Set active high endstops
                                      M574 Z1 S2 ; Set endstops controlled by probe
                                      M307 H3 A-1 C-1 D-1 ;
                                      M558 P5 X0 Y0 Z1 H5 F100 T2000
                                      G31 X0 Y20 Z2 P25

                                      Why it ignore´s the Z-Value from the G31 Command when i run that G30 ??

                                      Here´s my homez.g again (that works with G92, but not without it….)

                                      ; homez.g
                                      ; called to home the Z axis
                                      ;
                                      ; generated by RepRapFirmware Configuration Tool on Fri Jan 19 2018 18:24:18 GMT+0800 (China Normalzeit)
                                      G91 ; relative positioning
                                      G1 Z5 F6000 ; lift Z relative to current position
                                      M98 Pdeployprobe.g ;deploy the probe
                                      G30 S-1 ; move Z down until the switch triggers
                                      G92 Z2 ; set Z position to trigger height
                                      M98 Pretractprobe.g ;retract the probe after triggering and stop.

                                      ; Uncomment the following lines to lift Z after probing
                                      ;G91 ; relative positioning
                                      ;G1 Z5 F100 ; lift Z relative to current position
                                      ;G90 ; absolute positioning

                                      Any recommendations or Tips, what i should check or try, are welcome 🙂

                                      I also try yesterday to get the BlTouch in Error-Mode. THEN the Value in Web-Interface change to 1000 and is red.
                                      All other Times, i only see a Value of 0

                                      Best Regards, Juergen

                                      1 Reply Last reply Reply Quote 0
                                      • garyd9undefined
                                        garyd9
                                        last edited by

                                        @Juergen110:

                                        Any recommendations or Tips, what i should check or try, are welcome 🙂

                                        Remove the "S-1" from the G30 command. Just a plain old "G30" is what you want.

                                        Just to put it out there, I'll post my config and homing stuff. I'm using what used to be a flashforge creator pro and I like the center of my build plate to be 0,0 (so anything to the left or front of center is negative.) Don't let that confuse you. 🙂

                                        The related part of my config.g:

                                        [[language]]
                                        M574 Z1 S2                                    ; this allow me to use the z-probe as if it were an endstop (which comes in handy for doing G1 S1)
                                        M307 H3 A-1 C-1 D-1			; ensure the servo pin is used for the probe * warning: overrides might override this **
                                        M558 P5 X0 Y0 Z1 H5 F100 T4000		; set z-probe type to 5, dive height and speeds
                                        G31 X-73.2 Y-0.8 Z0.83 P25		; configure the z-probe trigger value, offset, and threshold
                                        M557 X-111:75 Y-70:70 S20                            ; Define mesh grid
                                        M671 X1.1:-50:49 Y-69.2:65.5:65.5 P0.5   ; level screw locations and screw pitch type
                                        
                                        

                                        And part of my homeall.g script (at the point where I'm posting, X and Y are already homed, there's at least 5mm separation between my nozzles and build plate, and the printer is in absolute positioning (G90)

                                        [[language]]
                                        ; now home z - still in absolute positioning, z is still at least 5mm from the plate, and T1 is selected
                                        ;
                                        ; front/center adjustment screw is at X1.1 Y-69.2 and the probe is offset from T1 by X-73.2 Y-0.8
                                        ;
                                        G1 X74.3 Y-68.4 F6000  ; position the probe over the front/center screw adjustment point (offsetting from T1)
                                        G91			; relative positioning
                                        M401			; deploy the probe
                                        G1 S1 Z-155 F6000	; quickly move Z down, stopping at the probe (possible because of M574 Z1 S2 in config.g)
                                        G1 Z5 F1200		; immediately move the nozzle 5mm away from the build plate
                                        M401			; make sure the probe is deployed still
                                        G30			; slowly probe at the current position and set Z to the trigger height (this sets Z to 0.83 when the trigger happens)
                                        M402			; retract the probe
                                        
                                        

                                        "I'm not saying that you are wrong - I'm just trying to fit it into my real world simulated experience."

                                        1 Reply Last reply Reply Quote 0
                                        • Juergen110undefined
                                          Juergen110
                                          last edited by

                                          Hi Gary,

                                          Just a plain old "G30" is what you want.

                                          after i´m back Home, i will directly try !
                                          Thanks a lot !!!!
                                          crazy, what a misplaced and simple S-1 would do….

                                          And a short Feedback:
                                          Gary, you were absolutely Right !!!!
                                          After i delete the S-1, everything works without the additional "G92"

                                          THANKS A LOT !!!

                                          Best Regards, Juergen

                                          1 Reply Last reply Reply Quote 0
                                          • Asdasd1234undefined
                                            Asdasd1234
                                            last edited by

                                            Hi all,

                                            Just a thing to mention for everyone else in case you do something stupid like me…

                                            Make the deploy pin the FIRST command in your homez, or at least make the first command to move the bed out the way...
                                            I'm sure you can all guess what happens if you don't as I found out yesterday when I snapped the pin off the bl-touch 😞

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