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

    Precision Piezo z probes guide for duet users reference

    Scheduled Pinned Locked Moved
    Third-party add-ons
    39
    145
    40.4k
    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.
    • papilioundefined
      papilio
      last edited by

      Thanks Idris ... yes I'd seen that idea in the manual, but had forgotten. I'll give it a shot!
      And thanks for the tip on the cables.

      • Michael
      1 Reply Last reply Reply Quote 0
      • papilioundefined
        papilio
        last edited by papilio

        Wow fascinating video Idris! Thanks so much for taking the time to show us!

        • Michael
        1 Reply Last reply Reply Quote 0
        • 2689Mattundefined
          2689Matt
          last edited by

          Hi,

          I have an under bed setup using 4 piezo on a universal board... until last night!

          I have changed my extruder and new hotend is a mk10 from a mk8. I cannot see why this might make a difference but now my piezo setup won’t work!

          Any suggestions please? Nothing else in my setup has changed... except the M92 E value for new extruder!

          Now it still triggers as it did when tapping the bed, but nozzle just crashes when probing..

          Many thanks,

          Matt

          1 Reply Last reply Reply Quote 0
          • Cubex249undefined
            Cubex249
            last edited by

            Installing a Orion Piezo on a cubex. The Z probe is always at 1000 with or without piezo connected to probe header. When connected and i touch the end of the hot end the blue light flashes and Z probe goes to zero. in this configuration I get a error that the Z home signal is on before homing starts. I'm configuring this thru the RepRap configuration software. I've also have left the configuration to z probe and then used a n/c switch but it start to home but i can't stop it. the blue led flashes when I tap the hot end but it doesn't stop. The following moves x,y to 25mm z retracts (30mm?) and then I get the error. Thank You for your help. I'm about as new as one can get to this.

            G90 ; Send absolute coordinates...
            M83 ; ...but relative extruder moves

            ; Network
            M550 P"Cubex" ; Set machine name
            M552 S1 ; Enable network
            ;*** Access point is configured manually via M587
            M586 P0 S1 ; Enable HTTP
            M586 P1 S0 ; Disable FTP
            M586 P2 S0 ; Disable Telnet

            ; Drives
            M569 P0 S0 ; Physical drive 0 goes backwards
            M569 P1 S0 ; Physical drive 1 goes backwards
            M569 P2 S1 ; Physical drive 2 goes forwards
            M569 P3 S1 ; Physical drive 3 goes forwards
            M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
            M92 X80.00 Y80.00 Z4000.00 E420.00 ; Set steps per mm
            M566 X900.00 Y900.00 Z12.00 E120.00 ; Set maximum instantaneous speed changes (mm/min)
            M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; Set maximum speeds (mm/min)
            M201 X500.00 Y500.00 Z20.00 E250.00 ; Set accelerations (mm/s^2)
            M906 X800.00 Y800.00 Z800.00 E800.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
            M84 S30 ; Set idle timeout

            ; Axis Limits
            M208 X25 Y10 Z0 S1 ; Set axis minima
            M208 X250 Y250 Z220 S0 ; Set axis maxima

            ; Endstops
            M574 X1 Y1 S0 ; Set active low and disabled endstops

            ; Z-Probe
            M574 Z1 S2 ; Set endstops controlled by probe
            M558 P5 R0.4 H5 F1200 T6000 ; Set Z probe type to effector and the dive height + speeds
            G31 P500 X0 Y0 Z2.5 ; Set Z probe trigger value, offset and trigger height
            M557 X25:25 Y25:195 S20 ; Define mesh grid

            ; Heaters
            M140 H-1 ; Disable heated bed
            M305 P1 T100000 B4138 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 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
            M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off

            ; 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

            ; Automatic power saving
            M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; Set voltage thresholds and actions to run on power loss

            ; Custom settings are not configured

            ; homez.g
            ; called to home the Z axis
            ;
            ; generated by RepRapFirmware Configuration Tool v2 on Tue May 21 2019 15:52:37 GMT-0400 (Eastern Daylight Time)
            G91 ; relative positioning
            G1 Z5 F6000 S2 ; lift Z relative to current position
            G90 ; absolute positioning
            G1 X25 Y25 F6000 ; go to first probe point
            G30 ; home Z by probing the bed

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

            Cubex249undefined 1 Reply Last reply Reply Quote 0
            • Cubex249undefined
              Cubex249 @Cubex249
              last edited by

              @cubex249
              I figured it out. I added a I1 in the M558

              1 Reply Last reply Reply Quote 0
              • alil2096undefined
                alil2096
                last edited by

                Hi,

                I've a problem with the Andromeda system. I've installated all, and if I try with my hand all works fine. But when I run the G29 command, at the fourth or fifth point, the piezo stops working and I get the error:

                I've this error:

                Error: Z probe was not triggered during probing move
                

                This is my config.g (i've try to reduce the R parameter and increase the speed, but the situation dosen't change):

                ; Z-Probe
                M558 P8 I1 R0.2 F1000 X0 Y0 Z0     ; digital mode, NO/NC, delay, speed, not used as axis endstop
                G31 X0 Y0 Z-2.5 P100               ; X Y Z offsets. P=debounce interval (The debounce interval in ms smoothes the signal)
                M557 X15:375 Y30:390 S60           ; define mesh grid
                
                

                How I can fix this?

                Thanks,

                Andrea

                www.lillia.net

                Facebook page

                1 Reply Last reply Reply Quote 0
                • Dr_Ju_Juundefined
                  Dr_Ju_Ju
                  last edited by

                  If you tap the probe, with your finger, do the led lights flash on the control board and does it also show as triggered in the DWC ???

                  If leds flash, but no show in the DWC then your configuration is incorrect. If they don't flash, you need to check your board\wiring\probe etc.

                  Julian,

                  Old goat, learning new things….

                  1 Reply Last reply Reply Quote 0
                  • alil2096undefined
                    alil2096
                    last edited by

                    Sorry, but what's DWC?

                    The probe works, because the first points are probed correctly. At the fourth point, however, it stopped working..

                    www.lillia.net

                    Facebook page

                    1 Reply Last reply Reply Quote 0
                    • Dr_Ju_Juundefined
                      Dr_Ju_Ju
                      last edited by

                      DWC - Duet control web pages & sorry I should have taken in what you've written...

                      So I take it, that at the fourth point the probe hits the bed ??

                      FYI, as it looks like you are still on RRF2, if so, this was my setting for that version (which worked well)

                      M558 P8 I1 R0.5 H5 T24000 F250 A3 S0.08 ; Set Peizo - P probe type, I Invert, R recovery time, H dive hight, T inter-probe-point speeds, F Probing Speed, 3 Dives , S calculated difference

                      Julian,

                      Old goat, learning new things….

                      1 Reply Last reply Reply Quote 1
                      • alil2096undefined
                        alil2096
                        last edited by

                        I've try your code but for me dosenìt work.. the bed don't feel the probe..

                        www.lillia.net

                        Facebook page

                        1 Reply Last reply Reply Quote 0
                        • Deltasquareundefined
                          Deltasquare
                          last edited by

                          Hey all!

                          So I have been playing with the piezo probes a couple of times now. However, even after having had my hands on 4 sets of piezo probes, it just does not work.

                          My setup is a Duet Wifi with under-the-bed piezo sensors. They are Andromeda sensors hanging under the bed, screwed to the frame, with the central Screw propping up the bed.

                          The relevant Duet Code I am using is as follows:

                          M558 H25 T9000 A10 P3 I1 R0.4 S0.02 F500
                          G31 X0 Y0 Z-0.15 P100
                          

                          In order to test I run following script:

                          G28 X
                          
                          G1 Z25 F8000
                          G30 S-1
                          ...the above two lines  *100
                          
                          G28 X
                          

                          I get a drift or roughly 0,3mm over the first 30 measurements, with increments of drift ranging from 0 to 0,018mm. After leveling out at approximately the 30-probe mark (this is by no means a hard limit) measurements jump back and forth between 0,002mm to max 0,015mm altough the larger differences are usually followed by an equally large countermovement (so if it measures 0,015 higher than the previous measurement, it is likely it is going to measure 0,015 lower the next cycle around).

                          I don't know what it is but with this problem I can not work with the piezo probes especially not with the arrangement I have got here.

                          I tried a lot and t kills me that it does not work. On top, I actually thought it was the perfect system for our business 3D printer and it not working doe not really help me at all.

                          I posted a similar request in the reprap forum, as I am trying to cover all my bases here and the problem persists for more than 12 months already.

                          Best regards
                          Deltasquare

                          droftartsundefined 1 Reply Last reply Reply Quote 0
                          • droftartsundefined
                            droftarts administrators @Deltasquare
                            last edited by

                            @Deltasquare said in Precision Piezo z probes guide for duet users reference:

                            M558 H25 T9000 A10 P3 I1 R0.4 S0.02 F500

                            I think this could be improved for accuracy/repeatability:
                            P3 - This mode is the analogue input. Usually piezos use the P8 (digital, unfiltered, faster) mode. You will probably still need to invert, which you're doing already.
                            H25 - this is the dive height. Unless your bed is wildly out of whack, you don't need to move the probe up this high. Try H5. Will also speed things up.
                            F500 - this is the probing speed. 500mm/min is FAST for probing. Most people in this thread seem to use F120. Try slow, then speed up if it still holds accuracy.

                            Ian

                            Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                            gtj0undefined 1 Reply Last reply Reply Quote 0
                            • Deltasquareundefined
                              Deltasquare
                              last edited by

                              Hi Ian!

                              Thank you for your quick reply!

                              ad dive height.:
                              I have run apprx 20 tests with 100 reps each for distinguishing the optimal probing height. I previously got the least offset when probing from 25mm height. My guess is that at 25mm is a multiplier of the full steps required to get to the bed.

                              ad analog vs digital.:
                              I had the impression that the analog was supposed to be the more accurate, is this not true?

                              I am implementing all your suggestions as I am writing. I will be getting back with results.

                              thk
                              dsq

                              1 Reply Last reply Reply Quote 0
                              • Deltasquareundefined
                                Deltasquare
                                last edited by

                                So I implemented the changes as suggested. There is no change.

                                In this attempt I have run 3 scripts twice each. The results are supporting one another in most cases.

                                Run1 & 2 were with the previous test script.

                                Run 3 & 5 were with the suggested improvements:

                                Improvements:

                                M558 H5 T9000 A10 P8 I1 R0.4 S0.02 F120	; M558 dive Height, Travel speed, probing Attempts, Probe type, Remain, dive speed F
                                G31 X0 Y0 Z-0.15 P100				; Set Z probe trigger value, offset and trigger height Z-0.012 / Z-0.45
                                

                                Script Z5:

                                G28 X
                                
                                G1 Z5 F3000
                                G30 S-1
                                ... above two lines x100
                                
                                G28 X
                                

                                and out of curiosity i also run the same settings with following script, to move the sliders a little more, as it is likely to happen in my setup.

                                Script Z5 updown:

                                G28 X
                                G1 Z5 F3000
                                
                                G30 S-1
                                G1 Z40 F6000
                                G1 Z5 F6000
                                ... above three lines x100
                                G28 X
                                

                                Results you can find here, mind the tabs:
                                https://drive.google.com/file/d/19arr1t3R8NCq5BxTw2s26OPm-Wabvvv0/view?usp=sharing

                                1 Reply Last reply Reply Quote 0
                                • gtj0undefined
                                  gtj0 @droftarts
                                  last edited by

                                  @droftarts said in Precision Piezo z probes guide for duet users reference:

                                  @Deltasquare said in Precision Piezo z probes guide for duet users reference:

                                  M558 H25 T9000 A10 P3 I1 R0.4 S0.02 F500

                                  I think this could be improved for accuracy/repeatability:
                                  P3 - This mode is the analogue input. Usually piezos use the P8 (digital, unfiltered, faster) mode. You will probably still need to invert, which you're doing already.
                                  H25 - this is the dive height. Unless your bed is wildly out of whack, you don't need to move the probe up this high. Try H5. Will also speed things up.
                                  F500 - this is the probing speed. 500mm/min is FAST for probing. Most people in this thread seem to use F120. Try slow, then speed up if it still holds accuracy.

                                  Ian

                                  The "P" mode for the Orion depends on which headers on the Orion you're connected to. The newer boards have both analog and digital outputs so P1 (or P3) is correct for the analog output and P8 is correct for the digital output. P3 is like P1 except it doesn't drive the Duet's output pin low which the Orion doesn't need anyway.

                                  The unfortunate situation is that the "proper" configuration depends on which Orion you have, which Orion outputs you want to use, which Duet you have, which Duet connector the Orion is connected to, and which version of RRF you run.

                                  The Duet connector is important because only some of the IO connectors on the Duet3 support analog input.

                                  1 Reply Last reply Reply Quote 0
                                  • Deltasquareundefined
                                    Deltasquare
                                    last edited by Deltasquare

                                    Hi gtj0!

                                    Thank you for your input! I thought there has been a change as I was confused last time I saw a digital and an anlog input on the universal Piezo Z-Probe PCB!

                                    Unfortunately I have not got my hands on an Orion sensor, as we are only using Andromeda sensors which only have two leads coming out compared to the 6 from the Orion. What do you suggest for the Andromeda? Would you have it plugged into Analog or Digital? (On this topic: Is the Orion the better solution of the two? I could also mount 3 Orions under the bed)

                                    However here the Versions:

                                    • PP-PCB v2.85
                                    • DuetWiFi v1.04c
                                    • Andromeda v1.0

                                    Connection PCB <-> Duet is via the "Probe" plug.
                                    ![Picture of duet Board with version number and duet "Probe" Plug attached to the z-probe]
                                    https://drive.google.com/file/d/1VvkJIHuc_7ZN2v5XB3PSSQCO7H-Kn-x8/view?usp=sharing

                                    Firmware Version: 2.05 (2019-12-13b1)
                                    WiFi Server Version: 1.23
                                    Web Interface Version: 1.22.6

                                    arhiundefined 2 Replies Last reply Reply Quote 0
                                    • arhiundefined
                                      arhi @Deltasquare
                                      last edited by

                                      @Deltasquare you cannot connect andromeda directly to DUET you can burn duet easily like that. andromeda needs to go into ppiezo board and from that board to DUET. old boards had only digital output and 2 pots, new boards dunno, I only have orion sensor new with integrated new board, only 1 pot and both digital and analog output (no schematic but the switched from TLC27L4 to LM324, not sure why, maybe 'cause 324 works up to 32V so will work on 24V systems without regulator but not sure and without schematic hard to tell, but in my experience old board with TLC27L4 was easier to work with ).

                                      Anyhow if you want to use andromeda's you would need "Universal Piezo Z-Probe PCB v2.85" https://www.precisionpiezo.co.uk/product-page/universal-piezo-z-probe-pcb-v2-x-for-1-2-3-or-more-piezos and it comes with both analog and digital output or old style v1 https://www.precisionpiezo.co.uk/product-page/copy-of-piezo20-pcb-for-the-piezo20-module-1-piezo (just wire your piezos in parallel and you can use as much as you want)

                                      1 Reply Last reply Reply Quote 0
                                      • arhiundefined
                                        arhi @Deltasquare
                                        last edited by

                                        @Deltasquare said in Precision Piezo z probes guide for duet users reference:

                                        PP-PCB v2.85
                                        DuetWiFi v1.04c
                                        Andromeda v1.0

                                        Connection PCB <-> Duet is via the "Probe" plug.

                                        use the A pin on the 2.85 pcb it is analog output and connect it to zprobe pin on the duet (only one that is analog input!!)

                                        config

                                        ; ORION ANALOG 
                                        M558 P1 C"zprobe.in" R2 H5 F1200 T3000 A3 S0.03 K0 
                                        G31 X0 Y0 Z0 P780 
                                        M376 H10                                         ; taper compensation during 10mm
                                        M557 X-110:110 Y-100:100 P5:5                    ; define mesh grid
                                        

                                        but when you use the probe you need something like this (requires RRF v3)

                                        G4S1    ; wait 1 second for sensors to stabilize
                                        G31 P{sensors.probes[0].value[0] + 8} ; set threshold value to "whatever is PP sending" + 8
                                        G30     ; probe
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • Deltasquareundefined
                                          Deltasquare
                                          last edited by

                                          Hi All!

                                          Thank you for your help!

                                          Apparently the problem wasn't the z-probe at all. The z-probe was diligently reporting the right value all the time. However, the delta-konfiguartion appears to be at fault. The coordinate system drifts apprx. 0.25mm when i repeatedly probe the same point 100 times.

                                          As this is a whole different thread with different keywords etc. I will start another thread in order to reach the right audience for that.

                                          Thanks to everyone for supporting me with this up until now, I certainly know the piezo-precision probe far better by now.

                                          Best regards,
                                          DSQ

                                          1 Reply Last reply Reply Quote 0
                                          • en_passantundefined
                                            en_passant
                                            last edited by

                                            Hello all,

                                            I'm hoping for some help with my piezo which I've just hooked up to my coreXY - I bought it a while back but just getting around to getting it fitted!

                                            I have taken 2 videos of it:
                                            here, I am VERY lightly tapping and it's responding as I expect

                                            here, I run my home-all.

                                            my config.g:

                                            ; 11/5/20

                                            ; fusion3 f400-s, s/n: 1067
                                            ; duet 2.03, wifiserver 1.23, dwc 1.22.6

                                            M111 S0 ; debug off
                                            M550 PFusion3 F400 ; web control printer name ("P" then name)
                                            M551 Preprap ; web control password ("P" then pass, reprap = no password required)
                                            M552 S1 ; enable wifi module
                                            M555 P2 ; output looks like marlin
                                            M575 P1 B57600 S1 ; comms parameters for paneldue

                                            ;===* machine config *==========================;
                                            M569 P0 S1 ; drive 0 - forward [x motor]
                                            M569 P1 S1 ; drive 1 - forward [y motor]
                                            M569 P2 S0 ; drive 2 - backward [z motor]
                                            M569 P3 S0 ; drive 3 - backward [e motor]
                                            M569 P4 S0 ; drive 4 - backwards [not used]
                                            M574 X1 Y1 Z2 S1 ; endstop config
                                            M669 K1 ; op mode [corexy] (2.03+)
                                            M92 X43.56 Y43.56 Z426.67 E464.93 ; steps/mm [x,y,z,extruder]
                                            M906 X1300 Y1300 Z1400 E1400 I100 ; motor currents (mA)
                                            M201 X2000 Y2000 Z300 E4000 ; accelerations (mm/s^2)
                                            M203 X33000 Y33000 Z1000 E10000 ; max speeds (mm/min)
                                            M566 X600 Y600 Z40 E950 ; max jerk speeds mm/minute
                                            M208 X0 Y0 Z0 S1 ; axis min
                                            M208 X355 Y355 Z325 S0 ; axis max
                                            M671 X-27.5:-27.5:365:365 Y-40:414:414:-40 P0.5 ; bed-levelling screws: front left (X-27.5, Y-40), rear left (X-27.5, Y414), rear right (X365,Y414), front right (X365, Y-40), 0.5mm thread pitch (m3)
                                            G21 ; work in mm
                                            G90 ; absolute co-ords
                                            M83 ; relative movements (extruder)

                                            ;===* z-probe *=================================;
                                            M558 P8 I1 R0.4 F400 T15000 H3 ; probe type, inverted (active high), 0.4s recovery (travel stop to probe dive), 400mm/min probing speed, 15000mm/min travel between probes, 3mm dive height
                                            G31 X0 Y0 Z-0.1 P100 ; x,y,z probe offset from nozzle [probe is nozzle], trigger value (probe threshold)
                                            M557 X0:355 Y0:355 P21 ; x & y min:max co-ords & mesh compensation no. probe points each axis (2.02+) ( >max: (duet wifi max: 21x21 = 441 probes))

                                            ; * P5 (1.14+) = switch (default NC) for bed probing between In & Gnd pins of z-probe connector. P8 (1.20+) = P5 but unfiltered (faster response time)

                                            my home-all:

                                            ; 29/7/19

                                            ; M561 ;; transform identity: cancels previous bed-plane (mesh)
                                            G91 ; relative co-ords (from last position, not origin)
                                            G1 Z10 F500 H1 ; z 10mm @ 500mm/min (ensure it's below probe trigger height)
                                            G1 X-500 Y-500 F3000 H1 ; x & y -500mm [relative] (> max) @3000mm/min - until limit sw. detects
                                            G1 X-500 H1 ; x -500mm [relative] (> max) @ 3000mm/min - until limit sw. detects
                                            G1 Y-500 H1 ; y -500mm [relative] (> max) @ 3000mm/min - until limit sw. detects
                                            G1 X5 Y5 F500 ; x & y 5mm @ 500mm/min
                                            G1 X-10 H1 ; x -10mm @ 500mm/min - until limit sw. detects
                                            G1 Y-10 H1 ; y -10mm @ 500mm/min - until limit sw. detects
                                            G90 ; absolute co-ords (relative to origin)
                                            G1 X172.5 Y172.5 F15000 ; x & y 172.5mm [absolute] @ 15000mm/min
                                            G1 X177.5 Y177.5 F1000 ; x & y 177.5mm [absolute] (bed-centre) @ 1000mm/min
                                            G30 ; raise bed until probe triggered & set z to trigger height
                                            G91 ; relative co-ords (from last position, not origin)
                                            G1 Z300 F1000 H1 ; z 300mm @ 1000mm/min
                                            G1 Z100 F150 H3 ; z 100mm (> max) @ 150mm/min [until endstop] & set temporary z max (until power-cycled)
                                            G1 X-172.5 Y-172.5 F15000 H1 ; x & y -172.5mm [relative] @ 15000mm/min
                                            G1 X-50 Y-50 F1000 H1 ; x & y -50mm [relative] (> max) @1000mm/min - until limit sw. detects
                                            G1 X-50 H1 ; x -50mm (> max) @ 1000mm/min - until limit sw. detects
                                            G1 Y-50 H1 ; y -50mm (> max) @ 1000mm/min - until limit sw. detects
                                            G1 X5 Y5 F500 ; x & y 5mm @ 500mm/min
                                            G1 X-10 H1 ; x -10mm @ 500mm/min - until limit sw. detects
                                            G1 Y-10 H1 ; y -10mm @ 500mm/min - until limit sw. detects
                                            G90 ; absolute co-ords (relative to origin)

                                            ; edited 2/8/19 to remove the m561 command at start - otherwise everytime I home x,y,z it deletes the g29 mesh...

                                            I'm confused why it doesn't read when I run it but it is triggering by a. very light touch? I tried changing I1 to I0 with the same result?

                                            Thanks,
                                            e_p

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