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

    Help! Toolchanging broken (offsets + T-1)

    Scheduled Pinned Locked Moved Solved
    General Discussion
    3
    6
    244
    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.
    • Merlin246undefined
      Merlin246
      last edited by

      Hello,

      Suddenly my Toolchanger is not recognizing T-1 commands, and is not applying tool offsets.

      I can home, and pickup a tool, the dashboard shows the tool as active, however once picked up the offsets have not applied (including Z-offset, rip my bed) and I cannot rehome the tool via T-1.

      Running Duet 2 Wifi + DueX, firmware 3.4.5. It was working an hour ago, now nothing. I have tried restarting (via both E-stop and actual power cycling), the problem persists.

      The only thing I've changed was the sensitivity of my stall detection in my homing files. Send help.

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

        Sounds like maybe your config.g isn't getting read completely. Maybe you've added something accidentally that is breaking the parsing.

        Can you share the full config.g and the results of sending M122 and M98 P"config.g" in the gcode console tab of DWC?

        Z-Bot CoreXY Build | Thingiverse Profile

        Merlin246undefined 2 Replies Last reply Reply Quote 1
        • Merlin246undefined
          Merlin246 @Phaedrux
          last edited by

          @Phaedrux

          M98 P"config.g" output:
          M98 P"config.g"
          HTTP is enabled on port 80
          FTP is disabled
          TELNET is disabled
          Error: in file macro line 96 column 20: meta command: variable 't1_ready_X' already exists

          The same problems as described in OP persist

          M112 Result
          The printer e-stops, same problems persist

          config.g
          The config-override.g and config-tool-offsets.g have not changed (let alone been opened) in the time between the printer working fine and the problems beginning.

          ; Configuration file for Duet WiFi / Ethernet running RRF3 on E3D Tool Changer
          ; executed by the firmware on start-up
          
          
          ; 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
          M667 S1 					; Select CoreXY mode	
          
          ; Network ------------------------------------------------------------------
          M550 P"ToolChanger" 			; Set machine name
          M587 S"[redacted]" P"[redacted]"     	; WiFi Settings
          M552 S1 P"[redacted]"     		; Enable WiFi Networking
          M552 S1					; Enable Networking
          M586 P0 S1 				; Enable HTTP
          M586 P1 S0 				; Disable FTP
          M586 P2 S0 				; Disable Telnet
          
          ; Drive direction ----------------------------------------------------------
          M569 P0 S0 						; Drive 0 X
          M569 P1 S0 						; Drive 1 Y
          M569 P2 S1 						; Drive 2 Z
          M569 P3 S1 						; Drive 3 E0
          M569 P4 S1 						; Drive 4 E1
          M569 P5 S1 						; Drive 5 E2
          M569 P6 S1 						; Drive 6 E3
          M569 P7 S0 						; Drive 7 COUPLER
          M569 P8 S0 						; Drive 8 UNUSED
          M569 P9 S0 						; Drive 9 UNUSED
          
          M584 X0 Y1 Z2 C7 E3:4:5:6 			; Apply custom drive mapping
          M208 X-30:328.5 Y-51:243 Z0:300 C-45:360	 ; Set axis maxima & minima
          M92 X100 Y100 Z1600 C91.022 E370:416:400:400			; Set steps per mm assuming x16 microstepping
          M350 E16:16:16:16 I1 									; Configure microstepping with interpolation
          M350 C16 I10											; Configure microstepping without interpolation
          M350 X16 Y16 Z16 I1										; Configure microstepping with interpolation
          M566 X200 Y200 Z8 C2 E300:300:2:2						; Set maximum instantaneous speed changes (mm/min)
          M203 X35000 Y35000 Z1200 C5000 E5000:5000:5000:5000		; Set maximum speeds (mm/min)
          M201 X6000 Y6000 Z400 C500 E4000:4000:2500:2500			; Set accelerations (mm/s^2)
          M906 X1800 Y1800 Z1330 I30   							; Idle motion motors to 30%
          M906 E1000:1000:1000:1000 C500 I10     					; Idle extruder motors to 10%
          
          ; Endstops -----------------------------------------------------------------------------------------------
          M574 X1 Y1 S3	 					; Set X / Y endstop stall detection
          M574 C1 S3							; Set C stall detection
          
          ; Z probe
          M558 P5 C"zstop" H2 F120 T50000		; Define probe
          M557 X5:295 Y5:195 P9:5 			; Define mesh grid
          G31 Z0								; Set trigger height
          
          ;Stall Detection
          M915 X Y S3 F0 H400 R0				; X / Y Axes
          
          
          M915 H200 C S3 R0 F0 				; set C to sensitivity 3, do nothing when stall, unfiltered
          
          
          ; Heaters --------------------------------------------------------------------------------------------------
          M308 S0 P"bedtemp" Y"thermistor" A"Bed" T100000 B4138 C0 		; Set thermistor 
          M950 H0 C"bedheat" T0 Q50										; Bed heater, 50Hz PWM Freq for Omron SSR.
          M143 H0 S225 													; Set temperature limit for heater 0 to 225C
          M140 H0															; Bed heater is heater 0
          M307 H0 B0														; Use PID for bed heater
          
          M308 S1 P"e0temp" Y"thermistor" A"T0" T100000 B4725 C7.06e-8 	; Set thermistor
          M950 H1 C"e0heat" T1											; Extruder 0 heater
          M143 H1 S305 													; Set temperature limit for heater 1 to 300C
          
          M308 S2 P"e1temp" Y"thermistor" A"T1" T100000 B4725 C7.06e-8	; Set thermistor
          M950 H2 C"e1heat" T2											; Extruder 1 heater
          M143 H2 S305 													; Set temperature limit for heater 2 to 300C
          
          
          ;M308 S3 P"e2temp" Y"thermistor" A"T2" T100000 B4725 C7.06e-8 	; Set thermistor
          ;M950 H3 C"duex.e2heat" T3										; Extruder 2 heater
          ;M143 H3 S305 													; Set temperature limit for heater 3 to 300C
          
          ;M308 S4 P"e3temp" Y"thermistor" A"T3" T100000 B4725 C7.06e-8 	; Set thermistor
          ;M950 H4 C"duex.e3heat" T4										; Extruder 3 heater
          ;M143 H4 S305 													; Set temperature limit for heater 4 to 300C
          
          
          ; Tools -----------------------------------------------------------------------------------------------------
          M563 P0 S"T0" D0 H1 F2 					; Define tool 0
          ;G10 P0 X0 Y0 Z0 						; Reset tool 0 axis offsets
          G10 P0 R0 S0 							; Reset initial tool 0 active and standby temperatures to 0C
          
          M563 P1 S"T1" D1 H2 F4 					; Define tool 1
          ;G10 P1 X0 Y0 Z0 						; Reset tool 1 axis offsets
          G10 P1 R0 S0 							; Reset initial tool 1 active and standby temperatures to 0C
          
          global t1_ready_X = 82				; pre/post position for T1 pickup
          global t1_ready_Y = 200				; 
          global t1_ready_speed = 30000			; feedrate
          
          global t1_pick_X = 82				; pickup location
          global t1_pick_Y = 223					;
          global t1_pick_speed = 3000			;
          
          ;M563 P2 S"T2" D2 H3 F6 					; Define tool 2
          ;G10 P2 X0 Y0 Z0 						; Reset tool 2 axis offsets
          ;G10 P2 R0 S0 							; Reset initial tool 2 active and standby temperatures to 0C
          
          ;M563 P3 S"T3" D3 H4 F8 					; Define tool 3
          ;G10 P3 X0 Y0 Z0 						; Reset tool 3 axis offsets
          ;G10 P3 R0 S0 							; Reset initial tool 3 active and standby temperatures to 0C
          
          ; Fans -----------------------------------------------------------------------------------------------
          M950 F1 C"fan1"
          M950 F2 C"fan2"
          M950 F3 C"duex.fan3"
          M950 F4 C"duex.fan4"
          M950 F5 C"duex.fan5"
          M950 F6 C"duex.fan6"
          M950 F7 C"duex.fan7"
          M950 F8 C"duex.fan8"
          
          M106 P1 S255 H1 T70					; T0 HE
          M106 P2 S0							; T0 PCF
          M106 P3 S255 H2 T70 				; T1 HE
          M106 P4 S0							; T1 PCF 
          M106 P5 S255 H3 T70 				; T2 HE 
          M106 P6 S0 							; T2 PCF
          M106 P7 S255 H4 T70					; T3 HE
          M106 P8 S0							; T3 PCF
          
          M593 F42.2							; cancel ringing at 42.2Hz (https://forum.e3d-online.com/threads/accelerometer-and-resonance-measurements-of-the-motion-system.3445/)
          M376 H5								; bed compensation taper
          
          ;G10 P0 X8 Y45 Z-8.55				; T0
          ;G10 P1 X-9 Y39 Z-5					; T1
          ;G10 P1 X-37 Y34 Z-5
          ;G10 P1 X19 Y44 Z-14.3
          ;G10 P2 X-9 Y39 Z-5					; T2
          ;G10 P3 X-9 Y39 Z-5					; T3
          
          ; MACRO FOR TOOL OFFSETS
          ;echo "TOOL OFFSETS ESTABLISHED"
          ;TOOL 0 (T0)
          ;G10 P0 X8 Y45 Z-8.55				; T0
          ; TOOL 1 (T1)
          ;G10 P1 X19 Y44 Z-14.3				; T1
          ; TOOL 2 (T2)
          ;G10 P2 X-9 Y39 Z-5					; T2
          ; TOOL 3 (T3)
          ;G10 P3 X-9 Y39 Z-5					; T3
          
          M98 P"config-tool-offsets.g"	; load in tool offsets
          
          
          M572 D0 S0.02 						; pressure advance T0
          M572 D1 S0.04 						; pressure advance T1
          ;M572 D2 S0.2 						; pressure advance T2
          ;M572 D3 S0.2 						; pressure advance T3
          
          M575 P1 S1 B57600					; Enable LCD
          G29 S2							    ; disable mesh
          T-1								    ; deselect tools
          
          M501                    			; load config-override.g
          
          Phaedruxundefined 1 Reply Last reply Reply Quote 0
          • Merlin246undefined
            Merlin246 @Phaedrux
            last edited by

            @Phaedrux a quick update, I commented out the T-1 at the beginning of my t0pre.g that I added in, and it is now working. I guess that is causing confusion in the printer, just added it in for safety and forgot about it. Problem solved!

            t0pre.g

            ; tpre0.g
            ; called before tool 0 is selected
            ;T-1; deselect any tool currently held
            G29 S2;
            M568 P0 A2; set tool active.
            ;Unlock Coupler
            M98 P"/macros/Coupler - Unlock"
            
            
            ;Move to location
            if move.axes[1].machinePosition > 200
            	G53 G1 Y200 F50000;
            
            G53 G1 X-5 Y200 F25000
            
            ;G1 Y205;
            
            ;Collect
            ;G1 X-10.5 Y242 F2500
            G53 G1 Y225 F2500;
            
            ;Close Coupler
            M98 P"/macros/Coupler - Lock"
            
            ;WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING!
            ;if you are using non-standard length hotends ensure the bed is lowered enough BEFORE undocking the tool!
            G91
            G1 Z10 F1000
            G90
            
            M116 P1; wait for temperature, this will not wait for temperatures above 40C.
            
            
            
            ;Move Out
            ;G1 X-10.5 Y150 F4000
            G53 G1 Y150 F4000;
            
            G29 S1;
            
            dc42undefined 1 Reply Last reply Reply Quote 1
            • Phaedruxundefined
              Phaedrux Moderator @Merlin246
              last edited by

              @Merlin246 said in Help! Toolchanging broken (offsets + T-1):

              M112 Result
              The printer e-stops, same problems persist

              M122 not M112.

              Z-Bot CoreXY Build | Thingiverse Profile

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

                @Merlin246 I'm glad you solved it. Nesting tool changes is never a good idea. Perhaps we should detect that in RRF and report an error.

                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
                • dc42undefined dc42 marked this topic as a question
                • dc42undefined dc42 has marked this topic as solved
                • First post
                  Last post
                Unless otherwise noted, all forum content is licensed under CC-BY-SA