• Tags
  • Documentation
  • Order
  • Register
  • Login
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.
  • undefined
    Merlin246
    last edited by 15 Aug 2023, 20:03

    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
    • undefined
      Phaedrux Moderator
      last edited by 15 Aug 2023, 21:06

      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

      undefined 2 Replies Last reply 15 Aug 2023, 22:09 Reply Quote 1
      • undefined
        Merlin246 @Phaedrux
        last edited by 15 Aug 2023, 22:09

        @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
        undefined 1 Reply Last reply 16 Aug 2023, 00:29 Reply Quote 0
        • undefined
          Merlin246 @Phaedrux
          last edited by 15 Aug 2023, 22:18

          @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;
          undefined 1 Reply Last reply 19 Aug 2023, 06:38 Reply Quote 1
          • undefined
            Phaedrux Moderator @Merlin246
            last edited by 16 Aug 2023, 00:29

            @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
            • undefined
              dc42 administrators @Merlin246
              last edited by 19 Aug 2023, 06:38

              @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
              • undefined dc42 marked this topic as a question 19 Aug 2023, 06:39
              • undefined dc42 has marked this topic as solved 19 Aug 2023, 06:39
              5 out of 6
              • First post
                5/6
                Last post
              Unless otherwise noted, all forum content is licensed under CC-BY-SA