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

    [RRF3.3b2] Possibly incorrect behavior when homing Z

    Scheduled Pinned Locked Moved Unsolved
    Beta Firmware
    6
    20
    950
    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.
    • pkosundefined
      pkos @Phaedrux
      last edited by pkos

      @phaedrux Sure thing.

      m122
      === Diagnostics ===
      RepRapFirmware for Duet 3 MB6HC version 3.3beta2 running on Duet 3 MB6HC v0.6 or 1.0 (standalone mode)
      Board ID: 08DJM-956L2-G43S4-6JKDA-3SJ6T-1B6GH
      Used output buffers: 3 of 40 (22 max)
      === RTOS ===
      Static ram: 148476
      Dynamic ram: 94096 of which 176 recycled
      Never used RAM 108588, free system stack 114 words
      Tasks: NETWORK(ready,236) ETHERNET(notifyWait,117) SENSORS(delaying,17) HEAT(delaying,303) CanReceiv(notifyWait,798) CanSender(notifyWait,372) CanClock(delaying,348) TMC(notifyWait,58) MAIN(running,648) IDLE(ready,19)
      Owned mutexes:
      === Platform ===
      Last reset 00:36:00 ago, cause: power up
      Last software reset at 2021-04-07 20:35, reason: User, GCodes spinning, available RAM 108916, slot 2
      Software reset code 0x0003 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x00400000 BFAR 0x00000000 SP 0x00000000 Task MAIN Freestk 0 n/a
      Error status: 0x00
      Aux0 errors 0,0,0
      Aux1 errors 0,0,0
      MCU temperature: min 21.7, current 45.1, max 45.5
      Supply voltage: min 23.9, current 24.0, max 24.1, under voltage events: 0, over voltage events: 0, power good: yes
      12V rail voltage: min 12.1, current 12.1, max 12.2, under voltage events: 0
      Heap OK, handles allocated/used 99/2, heap memory allocated/used/recyclable 2048/460/434, gc cycles 0
      Driver 0: position 20080, standstill, reads 55662, writes 37 timeouts 0, SG min/max 0/1023
      Driver 1: position -19920, standstill, reads 55662, writes 37 timeouts 0, SG min/max 0/1023
      Driver 2: position 1279, standstill, reads 55663, writes 37 timeouts 0, SG min/max 0/1023
      Driver 3: position 0, standstill, reads 55663, writes 37 timeouts 0, SG min/max 0/1023
      Driver 4: position 0, standstill, reads 55675, writes 25 timeouts 0, SG min/max 0/1023
      Driver 5: position 0, standstill, reads 55675, writes 25 timeouts 0, SG min/max 0/762
      Date/time: 2021-04-08 13:12:35
      Slowest loop: 46.79ms; fastest: 0.06ms
      === Storage ===
      Free file entries: 10
      SD card 0 detected, interface speed: 25.0MBytes/sec
      SD card longest read time 3.4ms, write time 5.1ms, max retries 0
      === Move ===
      DMs created 125, maxWait 104850ms, bed compensation in use: mesh, comp offset 0.000
      === MainDDARing ===
      Scheduled moves 23736, completed moves 23736, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 1], CDDA state -1
      === AuxDDARing ===
      Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], CDDA state -1
      === Heat ===
      Bed heaters = 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
      Heater 0 is on, I-accum = 0.1
      Heater 1 is on, I-accum = 0.6
      === GCodes ===
      Segments left: 0
      Movement lock held by null
      HTTP is idle in state(s) 0
      Telnet is idle in state(s) 0
      File is idle in state(s) 0
      USB is idle in state(s) 0
      Aux is idle in state(s) 0
      Trigger is idle in state(s) 0
      Queue is idle in state(s) 0
      LCD is idle in state(s) 0
      SBC is idle in state(s) 0
      Daemon is idle in state(s) 0
      Aux2 is idle in state(s) 0
      Autopause is idle in state(s) 0
      Code queue is empty.
      === CAN ===
      Messages queued 40348, send timeouts 0, received 8635, lost 0, longest wait 1ms for reply type 6042, peak Tx sync delay 503, free buffers 49 (min 48)
      === Network ===
      Slowest loop: 27.85ms; fastest: 0.02ms
      Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions Telnet(0), 0 sessions
      HTTP sessions: 1 of 8
      - Ethernet -
      State: active
      Error counts: 0 0 1 0 0
      Socket states: 2 2 2 2 2 0 0 0
      

      config.g

      ; Configuration file for Duet 3 (firmware version 3)
      ; executed by the firmware on start-up
      ;
      ; generated by RepRapFirmware Configuration Tool v3.1.3 on Sun Jul 12 2020 20:53:52 GMT+0200 (Central European Summer Time)
      
      ; General preferences
      G90                                            	    ; send absolute coordinates...
      M83                                                 ; ...but relative extruder moves
      M550 P"Voron 2"                                   	; set printer name
      M669 K1                                            	; select CoreXY mode
      
      ; Network
      M552 P0.0.0.0 S1                                   	; enable network and acquire dynamic address via DHCP
      M586 P0 S1                                          ; enable HTTP
      M586 P1 S0                                         	; disable FTP
      M586 P2 T1 S0                                        	; disable Telnet
      
      ; Wait a bit so boards can sync up
      G4 S5
      
      ; Drives for XY
      M569 P0.4 S1                                       	; A motor 
      M569 P0.5 S1                                       	; B motor
      
      ; Drives for Z
      M569 P0.0 S0                                       	; Front left 
      M569 P0.1 S1                                       	; Back left
      M569 P0.2 S0                                       	; Back right
      M569 P0.3 S1                                       	; Front right
      
      ; Drive for extruder 
      M569 P2.0 S0                                       	; 
      
      ; Drive mappings 
      M584 X0.4 Y0.5 Z0.0:0.1:0.2:0.3 E2.0               	; set drive mapping
      
      ; General drive config like speeds, accel, jerk, etc
      M350 X16 Y16 Z16:16:16:16 E16 I1                   	; configure microstepping with interpolation
      M92 X80.00 Y80.00 Z400.00 E410.00         			; set steps per mm
      M566 X600.00 Y600.00 Z60.00 E8000.00       			; set maximum instantaneous speed changes (mm/min)
      M203 X18000.00 Y18000.00 Z3000 E15000		       	; set maximum speeds (mm/min)
      M201 X1500.00 Y1500.00 Z350.00 E1800.00    			; set accelerations (mm/s^2)
      M204 P1500 T2000									; set printing acceleration and travel acceleration
      M906 X1200 Y1200 Z1200 E600 I60                		; set motor currents (mA) and motor idle factor in per cent
      M84 S30  
      
      ; Axis Limits
      M208 X1 Y0 Z0 S1                                   	; set axis minima
      M208 X301 Y305 Z300 S0                             	; set axis maxima
      
      ; Endstops
      M574 X2 S1 P"!io1.in"                               ; X Hall effect endstop
      M574 Y2 S1 P"!io2.in"                               ; Y Hall effect endstop
      ; M574 Z1 S1 P"io3.in"                                ; Z microswitch endstop
      M574 Z0 P"nil" 										; No endstop
      
      ; Z microswitch
      M558 K1 P8 C"io3.in" I1 H2 F350:60 T18000 A10 S0.01 R0.2 ; set Z probe type to switch and the dive height + speeds
      G31 K1 P500 X0 Y25 Z-0.16                           ; set Z probe trigger value, offset and trigger height
      
      ; Z-Probe
      M558 K0 P8 C"io4.in" I1 H5 F350:120 T18000 A5 S0.01 R0.2  ; set Z probe type to switch and the dive height + speeds
      G31 K0 P500 X0 Y25 Z1                               ; set Z probe trigger value, offset and trigger height
      
      M671 X354:354:-53:-53 Y0:370:370:0 S20        	 	; Define Z belts locations (Front_Left, Back_Left, Back_Right, Front_Right)
      M557 X15:285 Y25:275 S40                           	; define mesh grid
      
      
      ; Hotbed
      M308 S0 P"temp0" Y"thermistor" T100000 B4138       	; Thermistor
      M950 H0 C"out0" T0                                 	; Heater
      M307 H0 R0.799 C380.0 D4.51 S0.60 V24.0					; Heater 0 model for 3.x
      ; M307 H0 A157.8 C632 D1.4 V24.0 S0.6 B0			   	; Heater 0 model: gain 157.8, time constant 632.0, dead time 1.4, max PWM 0.60, calibration voltage 24.0, mode PID
      M140 H0                                            	; Map heated bed to heater 0
      M143 H0 S120                                       	; Set temperature limit for heater 0 to 120C
      M570 H0 T3											; Start screaming if temp falls 3C below set temp. 
      
      ; Hotend
      M308 S1 P"temp1" Y"thermistor" T100000 B4138       	; Thermistor
      M950 H1 C"out1" T1                                 	; Heater
      
      ; Mosquitto
      ; M307 H1 R3.110 C160.8 D8.11 S1.00 V24.0
      ; M307 H1 A593.7 C180.4 D7.6 V24.0 B0				   	; Heater 1 model: gain 593.7, time constant 180.4, dead time 7.6, max PWM 1.00, calibration voltage 24.0, mode PID
      
      ; Mosquitto HF
      ; M307 H1 A408.1 C161.3 D4.8 V24.0 B0				   	; Heater 1 model: gain 408.1, time constant 161.3, dead time 4.8, max PWM 1.00, calibration voltage 24.0, mode PID
      M307 H1 R2.479 C178.2 D6.92 S1.00 V24.0
      
      ; DHT22 sensor
      M308 S10 P"0.spi.cs1" Y"dht22"       A"Chamber Temp"    ; Temperature (connected to cs0 port on the temp daughterboard slot
      M308 S11 P"S10.1"     Y"dhthumidity" A"Chamber Hum[%]"  ; Humidity
      
      ; Main fans
      M950 F0 C"2.out6" Q500                             	; Part cooling fan
      M106 P0 S0 H-1 C"Part Fan"                        	; Default off; thermostatic control off 
      M950 F1 C"out7" Q500                           	   	; Hotend cooling fan
      ;M106 P1 S1 H-1                                     	; Default off; thermostatic control off 
      M106 P1 S1 H1 T45 C"Hotend Fan"                    	; Default on; thermistatic control on above 45C
      
      ; Aux fans (option to control daughter board fans based on main board temp sensor coming in RRF3.3, for now has to be manual)
      M950 F2 C"out8" Q500                              ; Electronics compartment fan 1
      M106 P2 S1 H0 T45 C"Electronics Fan 1"				; Default off; thermistatic control on above 45C 
      M950 F3 C"out9" Q500                              ; Electronics compartment fan 2
      M106 P3 S1 H0 T45 C"Electronics Fan 2"				; Default off; thermistatic control on above 45C 
      
      M950 F4 C"!out4+out4.tach"							; Noctua exhaust filter fan
      M106 P4 S0 H-1 C"Exhaust Fan"						; Default off 
      
      ; Tools
      M563 P0 D0 H1 F0                                   	; 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
      
      ; Push buttons and their config
      M950 J5 C"io5.in" 									; Left button - light
      M581 P5 T5 											; when button pushed, execute trigger5.g
      
      M950 J6 C"io7.in"  									; Left button - heat up
      M950 F5 C"io6.out"									; configure the relay as fan
      M106 F5 S0 H-1 C"Light"
      M581 P6 T6											; When pushed - trigger relay switch on io6.out
      
      ; Custom settings are not defined
      M593 F37.3											; DAA 
      
      ; Miscellaneous
      M911 S22 R23 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" 	; set voltage thresholds and actions to run on power loss
      M575 P1 S1 B57600                            		; enable support for PanelDue
      
      ; Prepare global vars for print macros
      global bed_temp = 0
      global hotend_temp = 0
      
      m98 P"config.g"
      HTTP is enabled on port 80
      FTP is disabled
      TELNET is disabled
      

      Voron 2.4 (Duet 3 6HC + 3HC standalone), Voron SW (Duet 3 mini 5+ standalone), Voron Trident (Duet 3 mini 5+ standalone), Voron 0.1

      OwenDundefined 1 Reply Last reply Reply Quote 0
      • OwenDundefined
        OwenD @pkos
        last edited by

        @pkos
        I have a Duet 2 Wifi and run RRF 3.3b2
        It works as expected for me.
        Move to Z100
        Run G30 K0
        It does a fast probe then only raises to the dive height before doing the subsequent probes at the slower speed.

        ; Z-Probe
        M950 S0 C"exp.heater3"                                      ; create servo pin 0 for BLTouch
        M558 P9 C"^zprobe.in" H6 F600:180 K0 T2400 A10 S0.03 R0.5 B0         ; set Z probe type to bltouch and the dive height + speeds
        G31 P500 X27 Y-2 Z0.48                                  	; set Z probe trigger value, offset and trigger height
        
        pkosundefined 1 Reply Last reply Reply Quote 0
        • pkosundefined
          pkos @OwenD
          last edited by pkos

          @owend

          Just to be clear.

          You take the gantry to 100.

          You turn the printer off completely.
          You turn the printer on and Home z - and then it also just raises a tiny bit even though the first probe needed a drop fo 100?

          The switched off printer is the key here. If it's already homed, the problem does not exist.

          This is a problem for me, since I often have prints running and the printer shuts itself off completely after it cools down.

          So then, when I want to print again, the gantry is often quite high and it takes a long time to get it to home again.

          Voron 2.4 (Duet 3 6HC + 3HC standalone), Voron SW (Duet 3 mini 5+ standalone), Voron Trident (Duet 3 mini 5+ standalone), Voron 0.1

          fulgundefined OwenDundefined 2 Replies Last reply Reply Quote 0
          • fulgundefined
            fulg @pkos
            last edited by

            @pkos My printer is down at the moment but as far as I remember this works for me? Granted I did not run 3.3b2 for long, but the first trigger of the probe should establish Z=0 (you should see the "Home Z" button turn blue in DWC as soon as the probe is triggered), then the gantry rises by the dive height and the 2nd probe occurs...

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

            pkosundefined 1 Reply Last reply Reply Quote 0
            • pkosundefined
              pkos @fulg
              last edited by

              They say a picture tells a thousand words.

              This is what I see.

              https://www.youtube.com/watch?v=0EZ7CqDl-Io

              The key to make this happen is set double speeds for probing.
              So in my case it's F350:60

              Voron 2.4 (Duet 3 6HC + 3HC standalone), Voron SW (Duet 3 mini 5+ standalone), Voron Trident (Duet 3 mini 5+ standalone), Voron 0.1

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

                @pkos Ok, I can reproduce this here on my VORON Zero if I replace the Z endstop with a Z probe connected to the same spot (so I can use G30 Z-99999 in my homing sequence instead of G1 H1 Z-125).

                When using a single probing speed, Z=0 is established on the first probe, so the move to the dive height is small.

                When using dual probing speeds, Z=0 is not established until after the second probe, so the move to the dive height is "power up position + dive height".

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

                1 Reply Last reply Reply Quote 1
                • OwenDundefined
                  OwenD @pkos
                  last edited by

                  @pkos said in [RRF3.3b2] Possibly incorrect behavior when homing Z:

                  @owend

                  Just to be clear.

                  You take the gantry to 100.

                  You turn the printer off completely.
                  You turn the printer on and Home z - and then it also just raises a tiny bit even though the first probe needed a drop fo 100?

                  The switched off printer is the key here. If it's already homed, the problem does not exist.

                  You could be right. I didn't turn the printer off.

                  1 Reply Last reply Reply Quote 0
                  • pkosundefined
                    pkos @Phaedrux
                    last edited by

                    @phaedrux Just checking in - is this possibly something that can be checked seeing as how others are now confirming the issue?

                    Voron 2.4 (Duet 3 6HC + 3HC standalone), Voron SW (Duet 3 mini 5+ standalone), Voron Trident (Duet 3 mini 5+ standalone), Voron 0.1

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

                      Yes I've asked @DC42 to comment when he gets a chance.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      pkosundefined 1 Reply Last reply Reply Quote 0
                      • pkosundefined
                        pkos @Phaedrux
                        last edited by

                        @phaedrux FYI - checked with 3.3b3 - behavior still there.

                        Voron 2.4 (Duet 3 6HC + 3HC standalone), Voron SW (Duet 3 mini 5+ standalone), Voron Trident (Duet 3 mini 5+ standalone), Voron 0.1

                        1 Reply Last reply Reply Quote 1
                        • sebkritikelundefined
                          sebkritikel
                          last edited by

                          I can verify this behavior as well
                          Duet2 Wifi +Duex5
                          Duet Web Control 3.3.0-b3
                          RepRapFirmware for Duet 2 WiFi/Ethernet 3.3beta3 (2021-04-22)

                          Large(ish?) IDEX - 6HC, 1HCL
                          Stratasys Dimension 1200es to 6HC Conversion

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

                            I've tried and failed to reproduce this behaviour. However, I have found a bug:

                            • If I set M558 F1000:300 A1 (or I don't specify the A parameter in the original M558 command), then homing Z using G30 probes just once and then reports "Homing failed".
                            • If I set M558 F1000:300 A2, then homing Z works. It probes once at the fast speed, moves up to the dive height (even if I started at a much greater height with Z not homed), then probes twice at the slow speed.

                            My G30 command to home Z has no parameters.

                            @pkps and @fulg, does the issue still occur if you remove the Z-99999 parameter from the G30 command?

                            @pkos and @sebkritikel, what A parameter are you using?

                            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

                            pkosundefined sebkritikelundefined 2 Replies Last reply Reply Quote 0
                            • pkosundefined
                              pkos @dc42
                              last edited by

                              @dc42 I am using A10.

                              Just in case, my config is at the top.

                              I am not sure if you need the whole config.g or if the things up there are enough.

                              Voron 2.4 (Duet 3 6HC + 3HC standalone), Voron SW (Duet 3 mini 5+ standalone), Voron Trident (Duet 3 mini 5+ standalone), Voron 0.1

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

                                @pkos, I just found a way to reproduce the issue you saw:

                                • Send Z to +50
                                • Send G92 Z0
                                • Send M18 Z to flag Z as not homed
                                • Send G30 (after setting M558 A2 to avoid the other bug)

                                I am about to test the fix.

                                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

                                pkosundefined 1 Reply Last reply Reply Quote 0
                                • pkosundefined
                                  pkos @dc42
                                  last edited by

                                  @dc42 Nice. I saw that M18 would also trigger this, but couldn't always reproduce it (so didn't want to waste your time with it).
                                  For the time being, I just removed M18 from my end gcode 😉

                                  Awesome you found it.

                                  Voron 2.4 (Duet 3 6HC + 3HC standalone), Voron SW (Duet 3 mini 5+ standalone), Voron Trident (Duet 3 mini 5+ standalone), Voron 0.1

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

                                    The fix is working and will be in 3.3RC1.

                                    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

                                    pkosundefined 1 Reply Last reply Reply Quote 1
                                    • pkosundefined
                                      pkos @dc42
                                      last edited by

                                      @dc42 Awesome. Can't wait 🙂 Thank you.

                                      Voron 2.4 (Duet 3 6HC + 3HC standalone), Voron SW (Duet 3 mini 5+ standalone), Voron Trident (Duet 3 mini 5+ standalone), Voron 0.1

                                      1 Reply Last reply Reply Quote 0
                                      • sebkritikelundefined
                                        sebkritikel @dc42
                                        last edited by

                                        @dc42 said in [RRF3.3b2] Possibly incorrect behavior when homing Z:

                                        @pkos and @sebkritikel, what A parameter are you using?

                                        For posterity:
                                        M558 P9 C"^zprobe.in" H5 F1000:200 A8 R0.75 T6000 S.02

                                        Large(ish?) IDEX - 6HC, 1HCL
                                        Stratasys Dimension 1200es to 6HC Conversion

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