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

    BLTouch Only Descends Halfway on G29/G32

    Scheduled Pinned Locked Moved
    General Discussion
    3
    27
    3.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.
    • Phaedruxundefined
      Phaedrux Moderator
      last edited by

      Can you post your config.g, homez.g, homeall.g?

      Did you follow this? https://duet3d.dozuki.com/Wiki/Connecting_a_Z_probe#Section_BLTouch
      and this? https://betrue3d.dk/bltouch-on-duet-wifi-configuratio-and-usage/

      You can circumvent requiring the school wifi by setting it up in access point mode where you then connect your laptop/phone/whatever to a wifi network created by the Duet and can access the DWC that way. That will probably make your lives a bit easier.

      Z-Bot CoreXY Build | Thingiverse Profile

      1 Reply Last reply Reply Quote 0
      • Zerbobundefined
        Zerbob
        last edited by

        I have tried to get the Duet direct method working, but must be doing the code wrong. With our deadline looming it was shelved for later. We're not using home all at the moment as what we're printing is a lot smaller than our total build volume (plus we haven't wired the X & Y endstops yet).

        [[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 Sat Mar 31 2018 08:48:41 GMT-0400 (Eastern Daylight Time)
        
        ; General preferences
        G90                                     ; Send absolute coordinates...
        M83                                     ; ...but relative extruder moves
        M555 P1                                 ; Set firmware compatibility to look like RepRapFirmare
        
        ; Network
        
        ; 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
        M569 P5 S1 R0 T2.5:2.5:5:0				;Settings for external Z driver
        M584 X0 Y1 Z5 E3                        ; Apply custom drive mapping
        M350 X16 Y16 Z16 E16 I1                 ; Configure microstepping with interpolation
        M92 X100 Y100 Z3909.340 E645             ; Set steps per mm
        M566 X1800 Y1800 Z30 E120               ; Set maximum instantaneous speed changes (mm/min)
        M203 X30000 Y30000 Z300 E6000           ; Set maximum speeds (mm/min)
        M201 X4500 Y4500 Z250 E250              ; Set accelerations (mm/s^2)
        M906 X800 Y2000 Z100 E800 I30           ; Set motor currents (mA) and motor idle factor in per cent
        M84 S30                                 ; Set idle timeout
        
        ; Axis Limits
        M208 X0 Y0 Z0 S1                        ; Set axis minima
        M208 X1400 Y1400 Z1800 S0               ; Set axis maxima
        
        ; Endstops
        ;M574 X1 Y2 S3                           ; Set endstops controlled by motor load detection
        M574 X0 Y0
        ;M915 X Y S5 R0							; Set motor drivers for stall detection
        
        ; Z-Probe
        M307 H3 A-1 C-1 D-1						; Disable Heater 3 to be used for probe
        M307 H2 A-1 C-1 D-1
        M574 Z1 S2                              ; Set endstops controlled by probe
        M558 P9 H20 F300 T6000                   ; Set Z probe type to switch and the dive height + speeds
        G31 P250 X0 Y0 Z-0.15                     ; Set Z probe trigger value, offset and trigger height
        M557 X0:1000 Y0:1000 S100               ; Define mesh grid
        
        ; Heaters
        M305 P0 X100          ; Set thermistor + ADC parameters for heater 0
        M143 H0 S100                            ; Set temperature limit for heater 0 to 100C
        M305 P1 T98640 B4633 C9.486166e-8 R4700 ; Set thermistor + ADC parameters for heater 1
        M143 H1 S280                            ; Set temperature limit for heater 1 to 280C
        
        ; Fans
        M106 P0 S1 I0 F500 H1 T45               ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
        M106 P1 S1 I0 F500 H-1                  ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
        M106 P2 S1 I0 F500 H-1                  ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off
        
        ; Tools
        M563 P0 D0 H1                           ; Define tool 0
        G10 P0 X22.5 Y-24 Z0                  ; Set tool 0 axis offsets
        G10 P0 R0 S0                            ; Set initial tool 0 active and standby temperatures to 0C
        
        ; Automatic saving after power loss is not enabled
        
        ; Custom settings are not configured
        
        
        [[language]]
        ; homez.g
        ; called to home the Z axis
        ;
        ; generated by RepRapFirmware Configuration Tool on Sat Mar 31 2018 08:48:41 GMT-0400 (Eastern Daylight Time)
        ;G91                ; relative positioning
        ;G1 Z5 F6000 S2     ; lift Z relative to current position
        ;G90;
        G1 X0 Y0 F9000;
        G30
        ;G1 S1 Z-1805 F1800 ; move Z down until the switch triggers
        ;G92 Z0.2           ; set Z position to trigger height
        
        ; Uncomment the following lines to lift Z after probing
        ;G91               ; relative positioning
        G1 Z5 F100 S2     ; lift Z relative to current position
        ;G90               ; absolute positioning
        
        
        1 Reply Last reply Reply Quote 0
        • Phaedruxundefined
          Phaedrux Moderator
          last edited by

          What command are you sending in the deployprobe.g and retractprobe.g files?

          Does the probe respond when you send it the commands to deploy, retract, self-test, and release alarm?

          If you set it to run self-test does it continue dropping and raising the pin non-stop until you manually trigger it or does it self-trigger? If it self-triggers you might have a sticky pin. In which case the pin can be removed by removing the set screw on the top of the unit.

          Your dive height is a little high and fast. Maybe try M558 H5 F100. And in the G31 command try P25 instead of P250.

          Here's how I have my BLTouch configured on my CoreXY

          [c]M574 X1 Y2 S0 ; Set active-low switches, low end endstop for X, high end endstop for Y, add Z2 for Zmax
          M574 Z1 S2 ; Use zprobe and home to min
          M307 H3 A-1 C-1 D-1 ; Unbind heater 3 pins for probe use.
          M558 P9 X0 Y0 Z1 H5 F100 T4000 A10 R0.5 S0.008 ; P9 for BLTouch, dive height 5mm, probe at 100mm/s, travel 4000mm/s, up to 10 probes, pause 0.5s
          G31 X-42.5 Y-2.2 Z1.8 P25 ; probe offset from nozzle, p is trigger value, set low for bltouch, set Z=0 for testing
          ; (z height is 1.8006 after calibration March 29th)
          M557 X20:310 Y2:282 S14 ; Define mesh grid
          M376 H20 ; Taper off compensation over 20mm of height
          M375 ; Load heightmap.csv[/c]

          For access point mode use M552 S2 and check your wifi networks for the Duet.

          Z-Bot CoreXY Build | Thingiverse Profile

          1 Reply Last reply Reply Quote 0
          • Zerbobundefined
            Zerbob
            last edited by

            I've tried your settings but still get this weird behaviour. Video: https://drive.google.com/file/d/1pSdNuHWDPTvjjOFv8BxW1zxDio94YLGC/view?usp=sharing

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

              Your Z speeds are pretty slow. What type of mechanics are you using?

              I also just noticed that your trigger height is negative. How did you calibrate that?

              Z-Bot CoreXY Build | Thingiverse Profile

              1 Reply Last reply Reply Quote 0
              • Zerbobundefined
                Zerbob
                last edited by

                Tried changing the Z trigger height to positive. Might have been a mistake. It did not solve the issue.

                For the Z axis we are using M12 threaded rods. Our gantry is about 1.5mx1.5m and is carrying about 10kg of weight. We can't go much faster or else we get vibration build up. The Z axis is about 2m tall. Future work is to upgrade them to lead screws but we were limited by cost and lead time.

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

                  Sounds like a very cool project. Hopefully you'll share the completed build in the example forum.

                  As for your homing issue, can you follow the steps here?
                  https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe

                  Is the BLTouch wiring running alongside any untwisted stepper wiring? Do you have a heater running during the probe? Can you test the probe with the wiring separated from the rest of the bundle? I'm starting to suspect possible interference.

                  Z-Bot CoreXY Build | Thingiverse Profile

                  1 Reply Last reply Reply Quote 0
                  • Zerbobundefined
                    Zerbob
                    last edited by

                    I'll give that a try tomorrow. It is running as part of a bundle of wires which contains multiple steppers, a heating element, and a fan. The steppers and heater are in shielded wire, but the lengths are long enough we could even get interference from fluorescent lights (which I've experienced with telephone wires).

                    Maybe I'll try a small capacitor and playing with the trigger value. We have been testing with the heaters off for now.

                    What confuses me is that M401 and M402 both work. G28 Z works. But when we go to G29 it doesn't behave correctly. We even noticed this when we swapped the BLTouch for an inductive sensor I had on hand.

                    I'll also be sure to put the build up on the forum. We're focused on finishing the project right now, but afterwards will be hitting up some of the various 3D printer sites and communities.

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

                      Further settings for the access point mode by the way.

                      M589: Configure access point parameters
                      Parameters:

                      S"ccc" The SSID that the WiFi interface should use when it is commanded to run as an access point
                      P"ccc" The WiFi password
                      Inn.nn.nn.nn The IP address to use
                      Cnn The WiFi channel to use (optional)
                      Note: WPA2 security will be used by default.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      1 Reply Last reply Reply Quote 0
                      • Zerbobundefined
                        Zerbob
                        last edited by

                        Could you actually provide a more detailed example of M589? I tried doing that but kept getting an error stating incorrect parameters.

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

                          Try adding this to your config.g. Remove your existing M552 entry or put it after it.

                          [c]
                          M550 PBigPrinter ; give the printer a name to show up in URL http://BigPrinter.local
                          M552 S0 ; disable wifi so we can add a network
                          M587 S"BigPrinterWifi" P"PRINT" I192.168.0.1 ; create entry in remembered networks for access point SSID
                          M552 P"BigPrinterWifi" S2 . ; Specify SSID and set access point mode
                          M589 S"BigPrinterWiFi" P"PRINT" I192.168.0.1 . ; configure access point parameters
                          [/c]

                          Now on your device find wifi network called BigPrinterWifi and connect using password PRINT.
                          Then in your browser go to http://BigPrinter.local or 192.168.0.1

                          Hopefully that would load up the DWC.

                          Z-Bot CoreXY Build | Thingiverse Profile

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

                            It's better to put those commands in a macro and run that, because the network module remains disabled until config.g has completed.

                            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
                            • Zerbobundefined
                              Zerbob
                              last edited by

                              Is there a way to trigger that macro to run on boot?

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

                                It should work if you set up a trigger on an unused endstop (e.g. E7) using M581, then use M582 to sample it. Running the macro will be deferred until after config.g has completed. Use a G4 S5 command at the start of the macro, to give the network module time to start up.

                                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
                                • Zerbobundefined
                                  Zerbob
                                  last edited by

                                  Thank you.

                                  Do you have any thoughts to the issue above relating to probing? It's a very odd situation and I have been unable to find others with the same issue even.

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

                                    It's an odd problem. Are you certain that your Z axis can do 300mm/sec speed and 250mm/sec^2 acceleration without skipping steps, both up and down? My Cartesian printer has 4000 steps/mm, almost the same as yours does, and I have to limit the speed to 250 and the acceleration to 20.

                                    Try reducing both the M203 Z parameter and M558 F parameter to 100, and the M201 Z parameter to 20, and see if that makes a difference.

                                    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
                                    • Zerbobundefined
                                      Zerbob
                                      last edited by

                                      I'd be very surprised if it was skipping steps. The Z axis is driven by two Nema 23's on an external high power driver (DM860AC). We have run the Z axis on big moves vertically and it does them correctly at 300 mm/min. We have run the motors to the point where they start to skip and do not see/hear skipping steps. We have run the Z axis up to 500 mm/min but slowed them down due to vibrations.

                                      It will also probe correctly on the first attempt. Even if we set M558 A >1 it will probe it once correctly, then fail to probe close to the same distance on the second attempt. This can be seen in the linked video above.

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

                                        Nevertheless, your Z acceleration looks very large to me, given the high steps/mm. Does the bed move in your printer, or the gantry? Have you tried moving Z up and down repeatedly by 10mm @ 300mm/min, and checking that the Z height doesn't drift?

                                        Another thing to try is placing the probe about 10mm above the bed, then repeatedly execute G30 S-1 and G1 Z10 F300, to see whether you get the same problem.

                                        Also make sure you don't have any M586 axis skew compensation configured in config.g.

                                        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
                                        • Zerbobundefined
                                          Zerbob
                                          last edited by

                                          It is a moving gantry. Our bed weighs about 110kg and consists of a metal sheet on a galvanized steel pallet. Moving the bed was not feasible.

                                          The Z axis consists of 2 threaded rods but the motion itself is on precision linear rails.

                                          I'll try turning the Z acceleration down and report back with the results tomorrow.

                                          1 Reply Last reply Reply Quote 0
                                          • Zerbobundefined
                                            Zerbob
                                            last edited by

                                            I have turned the Z acceleration down quite a bit, from 250mm/s^2 to 100mm/s^2. I also changed homez.gcode to utilize the endstop. With the new homez.gcode I get very consistent zeroing.

                                            To test the probing I do the following set of commands.

                                            M558 P9 F200 T9000 H5 A3     ; set probe type to BLTouch, feed rate to 200mm/min, travel between points to 9000 mm/min, dive height 3mm, probe three times
                                            
                                            G1 X0 Y0 F9000     ; go to x0 y0
                                            G28 Z                     ; home the Z axis
                                            G1 Z4.5 F200          ; move 
                                            G30                         ; perform single point probe
                                            
                                            

                                            This code should cause the Z axis to be correctly home, then probe the same spot three more times. The result is similar to before. The homing probe will be performed correctly (it is using a G1 S1 Z-1300 F200, followed by a G92). I then make sure that the probe is within the dive height to the bed based off the measurement just performed. The probing move is then started but the probe will stop a mm or two short of the bed then state "Error: Z probe was not triggered during probing move".

                                            On the probing move it is visibly not descending far enough before stopping and reporting the error. No heaters or fans are running during any of these tests.

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