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

    BLTouch working

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    50
    266
    79.2k
    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.
    • HenrikMundefined
      HenrikM
      last edited by

      That wiring is correct.
      My bltouch is working perfect and i tried a extreme bed compensation with 1.5 mm high on one side and 1.5 mm low on other side and i got a Perfect first layer 🙂

      BUT is there a code or something so you can "fade" out the compensation. that compensation makes the Z move around and can make ugly prints.

      I had that on marlin with my mks board. 3mm was the compensation Then it dont compensate anymore and the print is level.
      I have not tried that gcode that fades out in Marlin on my Duet. And i am not on my computer now so i cant see what that gcode is.

      1 Reply Last reply Reply Quote 0
      • iDeveloundefined
        iDevelo
        last edited by

        @HenrikM:

        That wiring is correct.
        My bltouch is working perfect and i tried a extreme bed compensation with 1.5 mm high on one side and 1.5 mm low on other side and i got a Perfect first layer 🙂

        BUT is there a code or something so you can "fade" out the compensation. that compensation makes the Z move around and can make ugly prints.

        I had that on marlin with my mks board. 3mm was the compensation Then it dont compensate anymore and the print is level.
        I have not tried that gcode that fades out in Marlin on my Duet. And i am not on my computer now so i cant see what that gcode is.

        Sure is M376 http://reprap.org/wiki/G-code#M376:_Set_bed_compensation_taper

        1 Reply Last reply Reply Quote 0
        • HenrikMundefined
          HenrikM
          last edited by

          Great! Thanks. Will try it later 🙂

          1 Reply Last reply Reply Quote 0
          • toshiundefined
            toshi
            last edited by

            Hello,
            I wirred my Bltouch yesterday thanks to this thread, it's the new version with something to cut for 3.3V output. I can extend, retract, and simulate the bed contact with my finger with no limit.
            But, there is always a problem =), When I launch a G32 with the following code (grid or points), the fourth point is always skipped with the error : ''Error: Z probe already triggered at start of probing move".
            Do you have an idea ?

            Config:

            M558 P5 X0 Y0 Z5 H10 F200 T5000
            M307 H3 A-1 C-1 D-1
            M574 E0 S0
            G31 X-30 Y-5 Z3.15 P25	
            
            

            Bed:

            M280 P3 S10 I1
            G4 P50
            
            ;**Mesh bed leveling
            ;G28 Z
            ;M557 X10:190 Y10:190 S36
            ;G29 S0
            
            ;**Point bed leveling
            G30 P0 X-12 Y12 Z-99999
            G30 P1 X-12 Y190 Z-99999
            G30 P2 X170 Y190 Z-99999
            G30 P3 X170 Y12 Z-99999 S0
            
            G4 P50
            M280 P3 S90 I1
            
            
            1 Reply Last reply Reply Quote 0
            • ThePigSlayerundefined
              ThePigSlayer
              last edited by

              Toshi, you should probably decrease your trigger height. 3.15 is an awfully big trigger height, and since your dive height is only 5 (in m558), your z axis only goes up from 3.15 to 5mm, which is too short of a z-lift after each probe, which makes the probe report that it is already trigger before the travel move.

              Your BL touch pin (the very tip) should be 2mm above the tip of your nozzle when retracted, which gives most people a trigger height of around 1.5mm. Your dive height of 5mm is normal, so either you need adjust your mount so you can lower your trigger height (by mounting the probe higher), or you miscalculated your trigger height. 3.15mm would be dangerously close to the height of the nozzle, and could catch during prints, so I think that it is more likely that you made a mistake when calculating the trigger height.

              1 Reply Last reply Reply Quote 0
              • toshiundefined
                toshi
                last edited by

                Thanks for you advises, I just finish to redesign my x carriage with 2.1mm différence between probe triggered and nozzle (tested), this program was with the initial mount, not optimized but worked. The issue was a wired cut inside the isolation thus a default.
                Now it's working and perfect, maybe tune the speed and hight to have a better repetability. Some times at least 1 point is wrong and the 1rst layer too.

                1 Reply Last reply Reply Quote 0
                • drmaestroundefined
                  drmaestro
                  last edited by

                  Hi,

                  Would it be ok if I used 270 ohms or 220 ohms as resistor, as I don't have 240 ohms.

                  Thanks

                  1 Reply Last reply Reply Quote 0
                  • Sniffleundefined
                    Sniffle
                    last edited by

                    @drmaestro:

                    Hi,

                    Would it be ok if I used 270 ohms or 220 ohms as resistor, as I don't have 240 ohms.

                    Thanks

                    I would pull out a meter and test each of them since they have +-5%

                    If you have 4 1kohm resistors you can run them in parallel and get ~250ohms. again if you have something close meter them and use the closest to 240ohms

                    1 Reply Last reply Reply Quote 0
                    • claustroundefined
                      claustro
                      last edited by

                      I am trying to setup bltouch and auto bed compensation
                      I added at config.g
                      [c];*** BLTouch
                      M307 H3 A-1 C-1 D-1
                      M558 P5 X0 Y0 Z1 H3 F200 T5000
                      G31 P100 X0 Y-20 Z2[/c]

                      and

                      [c]M557 X10:290 Y10:290 S70[/c]

                      Checked the trigger height as described in the wiki but now I am lost.
                      Where to put G29 command ? Should I use a bed.g config file? where I setup the probing sequence?

                      Also
                      I am trying to home the axis using bl touch
                      X and Y home correctly but I can't homing Z axis 'cos bltouch don't deploy during the procedure ( it deploy correctly if I launch the deploy command through console)
                      My endstop line in config.g is this
                      [c]M574 X1 Y2 Z0 S0[/c]
                      Iam using makerboat endstop on x and y and bltouch on z
                      Thank you

                      1 Reply Last reply Reply Quote 0
                      • claustroundefined
                        claustro
                        last edited by

                        Is there anyone who can help me ? I am stuck

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

                          Homing Z using a Z probe is done using a G30 command. See https://duet3d.com/wiki/Configuring_RepRapFirmware_for_a_Cartesian_printer#Homing_files. To use a deployable Z probe, you need to ensure that you have set up the deployprobe.g and retractprobe.g files correctly for your probe, then in homez.g and homeall.g put M401 before the G30 command and M402 after it.

                          If you want to use mesh bed compensation then I suggest you put these commands in bed.g:

                          M401
                          G29
                          M402

                          HTH David

                          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
                          • claustroundefined
                            claustro
                            last edited by

                            I am missing some basic information for understand how all the macro interact I reach this results simply copying some posted configuration but I don't understand how the firmware works
                            When I launch a print, how can I practically run a bed leveling routine and bed compensation?

                            I understand from the wiki there are 2 bed leveling system
                            G29 and G32 ( G29 is better for a core xy) so I went for G29 .
                            I have to use M557 command but where? I made a macro with this inside
                            [c]G91
                            G1 Z6 F200
                            G90
                            M98 Pdeployprobe.g
                            G29 S2
                            M557 X30:270 Y30:270 S60
                            G29
                            M98 Pretractprobe.g[/c]
                            and I can run it with G29 so I understand I could simply put G28 and then G29 in the start script in the slicer program , is that right?

                            What if I would use a simply 5 points bed leveling using something like this
                            [c]G30 P0 X50 Y50 Z-99999
                            G30 P1 X50 Y250 Z-99999
                            G30 P2 X250 Y250 Z-99999
                            G30 P3 X250 Y50 Z-99999
                            G30 P4 X150 Y150 Z-99999 S0
                            [/c]
                            where I should place this commands and How I should run it?

                            Hope You'll excuse me for such dumb questions but I always used Marlin based printer till now 😞
                            Thank you very much

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

                              Have you read https://duet3d.com/wiki/Using_mesh_bed_compensation ?

                              You can put the M557 command in config.g assuming that you always want to probe the same bed area. Or it can go in the same file as the G29 command.

                              Your mesh bed levelling macro looks ok but the G29 S2 line is not needed because the height map is automatically cleared at the start of the other G29 command.

                              Your 5 point probing sequence also looks good, but of course you need to deploy the probe at the start and retract it at the end.

                              You could put either sequence in your bed.g file so that you can invoke it with G32.

                              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
                              • claustroundefined
                                claustro
                                last edited by

                                @dc42:

                                Have you read https://duet3d.com/wiki/Using_mesh_bed_compensation ?

                                You can put the M557 command in config.g assuming that you always want to probe the same bed area. Or it can go in the same file as the G29 command.

                                Your mesh bed levelling macro looks ok but the G29 S2 line is not needed because the height map is automatically cleared at the start of the other G29 command.

                                Your 5 point probing sequence also looks good, but of course you need to deploy the probe at the start and retract it at the end.

                                You could put either sequence in your bed.g file so that you can invoke it with G32.

                                Thank you for all your patience and assistance.

                                Yes I read that part about 30 times 🙂 Maybe I am missing some basic concept.
                                This is the part I can't understand

                                You can put the M557 command in config.g assuming that you always want to probe the same bed area. Or it can go in the same file as the G29 command.
                                You could put either sequence in your bed.g file so that you can invoke it with G32

                                • If I understand correctly G29–> mesh bed levelling G32-->Probing at fixed points But I am missing the practical differences between this 2 commands.
                                  if I'd put all the 2 sequences in bed.g with G29 command will be executed the mesh levelling instead with G32 will be executed the 5 points leveling is that correct?
                                  -When I run a G29 command what config files are read by the board? And when I run a G32? Always look in bed.g if present?
                                • How bed.g Config.g and a Macro interact?
                                • You said that putting the M557 command in config.h will be tested always the same area, Do you mean that having differents macros for bed levelling I can starts it in many ways following may needs? How can I test 2 different pattern mesh map using G29 command? How can coexist 2 M557 command ? Using 2 differents macros?

                                I have another problem , when I home the Z probe seems to work perfectly, the printer register the touch point and the home Z button become blue . The problem is the probe that after touching the bed with the pin it start flashing and I have to reset it manually https://www.youtube.com/watch?v=eq2wTy3-kxA
                                this is my homing routine

                                [c]G91 ; relative mode
                                G1 Z4 F200 ; raise head 4mm to ensure it is above the Z probe trigger height
                                G90 ; back to absolute mode
                                M98 Pdeployprobe.g
                                G1 X150 Y150 F2000 ; put head over the centre of the bed, or wherever you want to probe
                                G30 ; lower head, stop when probe triggered and set Z to trigger height[/c]

                                Hope you'll be able to understand my very mad English 🙂

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

                                  There are two sorts of bed compensation you can do:

                                  1. Mesh levelling, using M557 to define the grid and G29 S0 (or just G29) to probe it. The height map is saved to a file, the default filename is heightmap.csv. You can also load a previously-generated height map using G29 S1.

                                  2. Bed probing using a sequence of G30 commands. On Delta printers this does auto calibration. On Cartesian printers it is an older way of doing bed compensation, provided for backwards compatibility with older firmware that didn't support mesh levelling.

                                  The G32 command simply runs the bed.g file.

                                  On a Cartesian printer, you can use either mesh levelling (G29) or G30 probing, not both. I recommend mesh levelling. So I suggest you put your mesh levelling script in bed.g.

                                  I'll leave it for someone who has a BLTouch to help you with your BLTouch issue.

                                  HTH David

                                  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
                                  • claustroundefined
                                    claustro
                                    last edited by

                                    Thank you very much for your assistance , I am really happy with your board!

                                    1 Reply Last reply Reply Quote 0
                                    • patterson6undefined
                                      patterson6
                                      last edited by

                                      How does this look? I have a delta with a 300mm bed.

                                      In my system editor i have

                                      config.g
                                      ;**************** Z probe and compensation definition****************
                                      M558 P5 X0 Y0 Z1 H5 F100 T2000
                                      M307 H3 A-1 C-1 D-1
                                      M557 R125 S15
                                      G31 X19 Y-11 Z1.5 P1 ; Set the zprobe offset and threshold (determine your printer's Z offset value). For a delta, use zero X and Y offset.

                                      bed.g
                                      ;Bed*****
                                      G28 ;Home the printer
                                      G91 ;Set to Relative Positioning
                                      G0 Z5 F3500 ;Move to center 5mm from bed
                                      G90 ;Set to Absolute Positioning
                                      M561 ;Clear any bed transform, otherwise homing may be at the wrong height
                                      M557 R115 S15 ;Mesh leveling
                                      M98 Presetprobe.g ;Call macro reset prob
                                      M98 Pdeployprobe.g ;Call macro deploy probe
                                      G4 P50 ;Pause
                                      G29 S2 ;Clear height map
                                      G29 S0 ;Generate bed height map
                                      M98 Pretractprobe.g ;Call macro retract probe
                                      G1 X0 Y0 Z150 F15000 ;Get the head out of the way of the bed

                                      Prefix code


                                      M141 S45 ; Heat the chamber
                                      M140 S <bed>; ;Heat the bed
                                      M190 ; Wait for bed to reach temp
                                      G28 ; Home
                                      M104 ; Set extruder temperature
                                      M109 ; Set extruder temperature and wait
                                      G21 ; Set Units to Millimeters
                                      G90 ; Set to Absolute Positioning
                                      M82 ; Set extruder to absolute mode
                                      G92 E0; Set Position for extruder
                                      G29 S1 ; Load bed height map</bed>

                                      1 Reply Last reply Reply Quote 0
                                      • AaronGreenundefined
                                        AaronGreen
                                        last edited by

                                        Hi everyone.

                                        I've read through this entire thread 3 or 4 times now and I still can't get my DuetWiFi-BLTouch deploying, let alone retracting or bed levelling.

                                        I've followed the BLTouch Wiki through and have the exact wiring connections.

                                        What happens when I run a Home All, or even a Deploy Command, M401 or M280 P3 S10 I1, it homes X and Y successfully, then throws this error: INVALID M CODE: M401, or INVALID M CODE M280 P3 S10 I1, if I have changed all the deploy commands to the latter. I haven't been able to find this error code anywhere on the Duet forum or the internet.

                                        When I start the Tevo Black Widow printer, the BLTouch lights up and deploys and retracts twice, before defaulting to the constantly lit state with the pin up. I had been using it perfectly fine with the MKS board, before switching to the Duet. I also don't have any macros set up yet, so I don't know if that's an issue for testing the BLTouch or running a home command.

                                        I've been working on it for 4 days straight now and I have no idea what to do, please help.

                                        Here's my config.g, which was set up by someone in my FB group:

                                        ; Configuration file for Duet WiFi (firmware version 1.17)
                                        ; executed by the firmware on start-up
                                        ;
                                        ; generated by RepRapFirmware Configuration Tool on Sat Mar 04 2017 15:46:00 GMT+0100 (W. Europe Standard Time)

                                        ; General preferences
                                        M111 S0 ; Debugging off
                                        G21 ; Work in millimetres
                                        G90 ; Send absolute coordinates…
                                        M83 ; ...but relative extruder moves
                                        M555 P2 ; Set firmware compatibility to look like Marlin
                                        M208 X0 Y0 Z0 S1 ; Set axis minima
                                        M208 X340 Y250 Z280 S0 ; Set axis maxima

                                        ; Endstops
                                        M574 X1 Y1 Z1 S0 ; Define active low and unused microswitches
                                        M558 P5 X0 Y0 Z1 H5 F200 T6000 ; Set Z probe type to modulated, the axes for which it is used and the probe + travel speeds
                                        G31 X-40 Y7 Z0.9 P50 ; Set Z probe trigger value, offset and trigger height

                                        ;Z-offset (Z0.9). Higher value LOWER nozzle height
                                        ; Lower value RAISE nozzle height

                                        M557 X10:340 Y10:240 S68 ; Define mesh grid

                                        M307 H3 A-1 C-1 D-1 ; disable heater 3, which makes it available for use to control the BLTouch

                                        ; Drives
                                        M569 P0 S1 ; 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 - Extruder

                                        M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation 16
                                        M92 X160 Y160 Z1600 E800 ; Set steps per mm 16

                                        M566 X600 Y420 Z12 E120 ; Set maximum instantaneous speed changes (mm/min) - (JERK)

                                        M203 X6000 Y6000 Z500 E400 ; Set maximum speeds (mm/min)

                                        M201 X1000 Y1000 Z1000 E250 ; Set accelerations (mm/s^2)

                                        M204 P1000 T1000 ; Set Max acceleration for P=printing moves and T=travel moves
                                        M906 X1600 Y1600 Z900 E1000 I30 ; Set motor currents (mA) and motor idle factor in per cent
                                        M84 S30 ; Set idle timeout

                                        ; Heaters
                                        M143 S285 ; Set maximum heater temperature to 285C
                                        ;M305 P1 X101

                                        M305 P1 T107000 B10832 C4.891620e-7 R4700 ; Set thermistor + ADC parameters for heater 0 - BED
                                        M305 P0 T99600 B4388 C0 R4700 ; Set thermistor + ADC parameters for heater 1 - HOTEND E3d

                                        M307 H0 P96.0, I3.285, D603.9 ;Bed
                                        ;M307 H1 P1.1, I0.011, D51.5 ;Hotend pid

                                        M307 H1 P17.8, I0.055, D74.9 ;Hotend E3d pid

                                        ; 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
                                        M550 Black Widow ; Set machine name
                                        M552 P0.0.0.0 S1 ; Enable network and acquire dynamic address via DHCP

                                        ; Fans
                                        M106 P0 S0.3 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

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

                                          What version of RepRapFirmware are you running? It must be quite old if it doesn't support M280 or M401.

                                          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
                                          • Sabagmnundefined
                                            Sabagmn
                                            last edited by

                                            I don't have access to my BW config file at work here, but one thing I would try, is to leave off the I1 (invert polarity) in the M280 command. When I used the BLTouch, it would not work with that parameter set.

                                            So basically just try this to deploy:
                                            M280 P3 S10

                                            @AaronGreen:

                                            Hi everyone.

                                            I've read through this entire thread 3 or 4 times now and I still can't get my DuetWiFi-BLTouch deploying, let alone retracting or bed levelling.

                                            I've followed the BLTouch Wiki through and have the exact wiring connections.

                                            What happens when I run a Home All, or even a Deploy Command, M401 or M280 P3 S10 I1, it homes X and Y successfully, then throws this error: INVALID M CODE: M401, or INVALID M CODE M280 P3 S10 I1, if I have changed all the deploy commands to the latter. I haven't been able to find this error code anywhere on the Duet forum or the internet.

                                            When I start the Tevo Black Widow printer, the BLTouch lights up and deploys and retracts twice, before defaulting to the constantly lit state with the pin up. I had been using it perfectly fine with the MKS board, before switching to the Duet. I also don't have any macros set up yet, so I don't know if that's an issue for testing the BLTouch or running a home command.

                                            I've been working on it for 4 days straight now and I have no idea what to do, please help.

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