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

    [3.3RC3] tool change don't wait on M116 P

    Scheduled Pinned Locked Moved Solved
    Beta Firmware
    4
    35
    1.5k
    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.
    • psychotik2k3undefined
      psychotik2k3
      last edited by psychotik2k3

      i have this gcode and when i execute i have the problem that when doing the T2 it does not wait until the tool gets to it's active temperature so it tries to extrude at cold (and yes it goes with my other subject) when purging.
      at first i thought it was because of the M116 line 9 that prusa slic3r puts before the T1 but even if i comment it i face the problem.

      here is the gcode:

      M107
      M190 S60 ; set bed temperature and wait for it to be reached
      G10 S215 P2 ; set temperature
      ;TYPE:Custom
      G28 ; home all axes
      G1 Z5 F5000 ; lift nozzle
      M98 P"/sys/load_meshbed.g"	; load mesh bed corresponding to the temp
      G10 S215 P2 ; set temperature
      ;M116 ; wait for temperature to be reached
      G21 ; set units to millimeters
      G90 ; use absolute coordinates
      M82 ; use absolute distances for extrusion
      G92 E0
      T2
      G92 E0
      ; Filament gcode
      M98 P"/macros/set_baby_step"	; set baby step
      M98 P"/macros/purge_and_wipe"; purge and wipe residu
      M98 P"/macros/prime_line"                  ; do the prime line
      

      my Tpost2.g

      ; tpost2.g
      ; called after tool 2 has been selected
      ;
      ; generated by RepRapFirmware Configuration Tool v3.2.3 on Thu May 13 2021 17:38:37 GMT+0200 (heure d’été d’Europe centrale)
      ; Wait for set temperatures to be reached
      ;G0 X{293 - sensors.probes[0].offsets[0]} Y{154 - sensors.probes[0].offsets[1]} F3600
      M116 P2
      G90
      if (move.axes[1].userPosition<(100+tools[2].offsets[1]))
      	G0 Y{100+tools[2].offsets[1]} F3600
      G0 X{153+tools[2].offsets[0]} Y{55+tools[2].offsets[1]} F3600
      G0 Y{20+tools[2].offsets[1]}
      ;M400
      ;M291 P"continue ?" S3 
      G0 Y{-3.5+tools[2].offsets[1]} F600
      ;M400
      ;M291 P"continue ?" S3 
      G0 X{143+tools[2].offsets[0]}
      ;M400
      ;M291 P"continue ?" S3 
      G0 Y{55+tools[2].offsets[1]} F6000
      M400
      ;M118 S{sensors.gpIn[1].value=1 && state.currentTool=2}
      if sensors.gpIn[1].value=1 && state.currentTool=2
        ;M118 S"writing file"
        M560 P"/sys/SetTool.g"
        T2 P0
        <!-- **EoF** -->
      
      o_lampeundefined 1 Reply Last reply Reply Quote 0
      • dc42undefined
        dc42 administrators @psychotik2k3
        last edited by

        @psychotik2k3 I don't think any of the other changes are needed. I think the issue may occur when selecting the new tool turns its heater on, and the heater is on a remote board, and the main board hasn't received a status report from that board between turning the heater on and the M116. I will try to implement a fix in time for the imminent 3.3 stable release.

        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

        psychotik2k3undefined 1 Reply Last reply Reply Quote 0
        • o_lampeundefined
          o_lampe @psychotik2k3
          last edited by

          @psychotik2k3
          I've put M116 in the first line of the tpost#.g macro.
          If you want to wait for the current heater only, you can add P# of the current heater. Otherwise it will also wait for the unused tool to reach standby-temp.

          psychotik2k3undefined 1 Reply Last reply Reply Quote 0
          • psychotik2k3undefined
            psychotik2k3 @o_lampe
            last edited by

            @o_lampe if you check this is exactly the first command of my Tpost2.g
            M116 P2 so wait for tool 2 to get its temperature.
            the thing is that sometimes it does wait and sometimes it doesn't

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

              @psychotik2k3 said in [3.3RC3] tool change don't wait on M116 P:

              the thing is that sometimes it does wait and sometimes it doesn't

              Can you pin down any further when it does/doesn't wait?

              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

              psychotik2k3undefined 2 Replies Last reply Reply Quote 0
              • psychotik2k3undefined
                psychotik2k3 @dc42
                last edited by

                @dc42 unfortunately i wasn't able to notice a schema or what pattern makes it wait.
                last try this afternoon i handle the first one because the tool was already loaded so it had time to raise in temp, but when i tried my first tool change it didn't wait.
                i will do some macros to test this.
                i also want to try with the deprecated M109 (which i think just encapsulate - didn't read the code yet- to a G10 followed by a M116)

                1 Reply Last reply Reply Quote 0
                • psychotik2k3undefined
                  psychotik2k3 @dc42
                  last edited by

                  @dc42 good news i found how to repeat.
                  so by default when i reset the board (apparently even when i boot the board got same problem)
                  so when i reset the board, do a home all so i'm sure all movement will be minimal

                  the M116 fails if i set up extruder temps with G10 or M104.

                  but as soon as i perform a M109 with a temp above 40°c then after taht i can set the extruder temp with G10 or M104, when doing the Tx corresponding, the tool will wait to heat before doing the whole tool change.

                  this is memorised per tool, so i can have T1 that bypasse M116 while T2 do the wait temp reached when tool change
                  (as i have M116 Pnn in my tpost macros)

                  so for now if i want to use a tool i need to do that:

                  var toolnumber = 2
                  var targettemp = 60
                  M109 S41 T{var.toolnumber}
                  T-1    ; needed so after that the M116 will be evaluated on the t_post
                  G10 P{var.toolnumber} S{var.targettemp} R0
                  T{var.toolnumber}
                  
                  G0 X155 Y155
                  T-1
                  G10 P{var.toolnumber} S0 R0
                  
                  dc42undefined 1 Reply Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators @psychotik2k3
                    last edited by

                    @psychotik2k3 are there motion commands earlier in the file than that code snipped that you posted? if so then I think I may know what is happening; and if I am right, then a M400 command would be another workaround.

                    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

                    psychotik2k3undefined 2 Replies Last reply Reply Quote 0
                    • psychotik2k3undefined
                      psychotik2k3 @dc42
                      last edited by

                      @dc42 i will try but all i did was this:
                      reset the board, do a G28 wait until it is finished and then launch this macro
                      But i will try to add a M400 before the M116 in the tpost macro

                      1 Reply Last reply Reply Quote 0
                      • psychotik2k3undefined
                        psychotik2k3 @dc42
                        last edited by

                        @dc42 i added a M400 like this in the tpost1.g but it didn't wait until the temp threshold before moving to center of the bed.

                        ; tpost1.g
                        ; called after tool 1 has been selected
                        ;
                        ; generated by RepRapFirmware Configuration Tool v3.2.3 on Thu May 13 2021 17:38:36 GMT+0200 (heure d’été d’Europe centrale)
                        ; Wait for set temperatures to be reached
                        M400
                        M116 P1
                        G90
                        if (move.axes[1].userPosition<(100+tools[1].offsets[1]))
                        	G0 Y{100+tools[1].offsets[1]} F3600
                        G0 X{244+tools[1].offsets[0]} Y{55+tools[1].offsets[1]} F3600
                        G0 Y{20+tools[1].offsets[1]}
                        G0 Y{-3.5+tools[1].offsets[1]} F600
                        G0 X{234+tools[1].offsets[0]}
                        G0 Y{55+tools[1].offsets[1]} F6000
                        
                        M400
                        ;M118 S{sensors.gpIn[1].value=1 && state.currentTool=2}
                        if sensors.gpIn[1].value=1 && state.currentTool=1
                          ;M118 S"writing file"
                          M560 P"/sys/SetTool.g"
                          T1 P0
                          <!-- **EoF** -->
                        
                        dc42undefined 1 Reply Last reply Reply Quote 0
                        • dc42undefined
                          dc42 administrators @psychotik2k3
                          last edited by dc42

                          @psychotik2k3 does a G4 P10 command between the G10 command and the T command work?

                          PS - which Duet do you have?

                          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

                          psychotik2k3undefined 1 Reply Last reply Reply Quote 0
                          • psychotik2k3undefined
                            psychotik2k3 @dc42
                            last edited by

                            @dc42 i have a cloned DUET3 MBH6c and HC3.
                            And adding the G4 like this didn't change anything (and i still have the M400 on the tpost)

                            var toolnumber = 1
                            var targettemp = 60
                            ;M109 S41 T{var.toolnumber}
                            T-1
                            
                            G10 P{var.toolnumber} S{var.targettemp} R0
                            G4 P50
                            ;M104 S{var.targettemp} T{var.toolnumber}
                            ;M109 S{var.targettemp} T{var.toolnumber}
                            T{var.toolnumber}
                            G0 X155 Y155
                            T-1
                            G10 P{var.toolnumber} S0 R0
                            
                            psychotik2k3undefined 1 Reply Last reply Reply Quote 0
                            • psychotik2k3undefined
                              psychotik2k3 @psychotik2k3
                              last edited by psychotik2k3

                              @dc42 and the 3 heaters are plugged on the H3C board (thermistor, heater cartridge fan and stepper motor)

                              psychotik2k3undefined 1 Reply Last reply Reply Quote 0
                              • psychotik2k3undefined
                                psychotik2k3 @psychotik2k3
                                last edited by

                                @dc42 just in case here is my config.g

                                ; Configuration file for Duet 3 (firmware version 3)
                                ; executed by the firmware on start-up
                                ;
                                ; generated by RepRapFirmware Configuration Tool v3.2.3 on Thu May 13 2021 17:38:36 GMT+0200 (heure d’été d’Europe centrale)
                                
                                ; General preferences
                                G90                                                                         ; send absolute coordinates...
                                ;M83                                                                         ; ...but relative extruder moves
                                M82                                                                         ; ...even for extruder moves do not forget to reset  when needed
                                M550 P"duet3"                                                               ; set printer name
                                M669 K1                                                                     ; select CoreXY mode
                                
                                ; Network
                                M552 S0                                                                     ; disable ethernet interface
                                M552 P192.168.1.151                                                         ; set ip address
                                M552 S1                                                                     ; enable network interface
                                M586 P0 S1                                                                  ; enable HTTP
                                M586 P1 S0                                                                  ; disable FTP
                                M586 P2 S0                                                                  ; disable Telnet
                                
                                ; Drives
                                M569 P0.0 S0 D2                                                             ; physical drive 0.0 goes backwards (DIAG front right rear left)
                                M569 P0.1 S0 D2                                                             ; physical drive 0.1 goes forwards  (other diagonal)
                                M569 P0.2 S1 D3                                                             ; physical drive 0.2 goes backwards  (z right)
                                M569 P0.3 S1 D3                                                             ; physical drive 0.3 goes backwards  (z left)
                                M569 P1.0 S0 D3                                                             ; physical drive 1.0 goes forwards  (tool 0) 
                                M569 P1.1 S0 D3                                                             ; physical drive 1.1 goes forwards  (tool 1)
                                M569 P1.2 S0 D3                                                             ; physical drive 1.2 goes forwards  (tool 2)
                                M584 X0.0 Y0.1 Z0.2:0.3 E1.0:1.1:1.2                                        ; set drive mapping
                                M350 X16 Y16 Z16:16 E16:16:16 I1                                            ; configure microstepping with interpolation
                                M92 X200.00 Y200.00 Z400.00 E424.91:955.666:406.00                          ; set steps per mm
                                ;M566 X42000.00 Y42000.00 Z1440.00:1440.00 E72000.00:72000.00:72000.00       ; set maximum instantaneous speed changes (mm/min)
                                M566 X700.00 Y700.00 Z24.00:24.00 E2000.00:2000.00:2000.00                  ; set maximum instantaneous speed changes (mm/min)
                                ;M203 X1080000.00 Y1080000.00 Z60000.00:60000.00 E72000.00:72000.00:72000.00 ; set maximum speeds (mm/min)
                                M203 X18000.00 Y18000.00 Z999.00:999.00 E1200.00:1200.00:1200.00           ; set maximum speeds (mm/min)
                                M201 X3000.00 Y3000.00 Z100.00:100.00 E4000.00:4000.00:4000.00              ; set accelerations (mm/s^2)
                                M906 X1400 Y1400 Z800:800 E1400:567:700 I30                                    ; set motor currents (mA) and motor idle factor in per cent
                                M84 S120                                                                    ; Set idle timeout
                                
                                ; Axis Limits
                                ;M208 X-24 Y-22 Z0 S1                                                        ; set axis minima
                                ;M208 X329 Y342 Z365 S0                                                      ; set axis maxima
                                M208 X-24 Y-17 Z0 S1                                                        ; set axis minima
                                M208 X329 Y347 Z365 S0                                                      ; set axis maxima
                                ; Endstops
                                M574 X1 S1 P"^io1.in"                                                       ; configure active-high endstop for low end on X via pin ^io1.in
                                M574 Y2 S1 P"^io2.in"                                                       ; configure active-high endstop for high end on Y via pin ^io2.in
                                M574 Z1 S2                                                                  ; configure Z-probe endstop for low end on Z
                                
                                ; Z-Probe
                                M950 S0 C"io7.out"                                                          ; create servo pin 0 for BLTouch
                                M558 P9 C"^io7.in" H5 F120 T8000                                            ; set Z probe type to bltouch and the dive height + speeds
                                ;M558 H30                                                                    ;*** Remove this line after delta calibration has been done and new delta parameters have been saved
                                ;G31 P500 X32.5 Y67.5 Z3.75                                                  ; set Z probe trigger value, offset and trigger height
                                G31 K0 P500 X43 Y3.5 Z5.68                                               ; calculated from macro autoconfig BLTOUCH correspond to T2 as it's the lowest
                                ;M557 X0:310 Y0:310 S31                                                      ; define mesh grid
                                M557 X19:305 Y3:303 S28.6:30                                                      ; define mesh grid
                                M98 P"retractprobe.g"                                                       ; force a retract in case of restart when pin deployed
                                
                                ; Heaters
                                ;M308 S0 P"temp0" Y"thermistor" T10000 B4092                                 ; configure sensor 0 as thermistor on pin temp0
                                M308 S0 P"temp0" Y"thermistor" T10000 B3450                                 ; configure sensor 0 as thermistor on pin temp0
                                M950 H0 C"out0" T0                                                          ; create bed heater output on out0 and map it to sensor 0
                                M307 H0 B0 S1.00                                                            ; disable bang-bang mode for the bed heater and set PWM limit
                                M140 H0                                                                     ; map heated bed to heater 0
                                M143 H0 S120                                                                ; set temperature limit for heater 0 to 120C
                                M307 H0 R0.142 C1371.2 D36.47 S1.00 V23.5                                   ; from autotune
                                M308 S1 P"1.temp0" Y"thermistor" T3600000 B6453 C9.932858e-8 H-3            ; configure sensor 1 as thermistor on pin 1.temp0
                                M950 H1 C"1.out0" T1                                                        ; create nozzle heater output on 1.out0 and map it to sensor 1
                                M307 H1 B0 S1.00                                                            ; disable bang-bang mode for heater  and set PWM limit
                                M143 H1 S280                                                                ; set temperature limit for heater 1 to 280C
                                ;M307 H1 B0 R2.508 C160.6 D4.58 S1.00 V0.0                                   ; values from autotuning
                                M307 H1 B0 R2.341 C180.2:144.3 D5.30 S1.00 V23.7                            ; values from autotuning
                                M308 S2 P"1.temp1" Y"thermistor" T100000 B4360                              ; configure sensor 2 as thermistor on pin 1.temp1
                                M950 H2 C"1.out1" T2                                                        ; create nozzle heater output on 1.out1 and map it to sensor 2
                                M307 H2 B0 S1.00                                                            ; disable bang-bang mode for heater  and set PWM limit
                                M143 H2 S280                                                                ; set temperature limit for heater 2 to 280C
                                M307 H2 B0 R2.589 C240.1:170.5 D10.82 S1.00 V23.7                           ; from autotune
                                ;M308 S3 P"1.temp2" Y"thermistor" T100000 B4138                              ; configure sensor 3 as thermistor on pin 1.temp2
                                M308 S3 P"1.temp2" Y"thermistor" T100000 B4290                              ; configure sensor 3 as thermistor on pin 1.temp2
                                M950 H3 C"1.out2" T3                                                        ; create nozzle heater output on 1.out2 and map it to sensor 3
                                M307 H3 B0 S1.00                                                            ; disable bang-bang mode for heater  and set PWM limit
                                M143 H3 S280                                                                ; set temperature limit for heater 3 to 280C
                                M307 H3 B0 R3.025 C230.8:153.9 D8.23 S1.00 V23.7                            ; values from autotune
                                
                                ; Fans
                                M950 F0 C"out9" Q499                                                        ; create fan 0 on pin out9 and set its frequency
                                M106 P0 S0 H-1                                                              ; set fan 0 value. Thermostatic control is turned off
                                M950 F1 C"1.out6" Q500                                                      ; create fan 1 on pin 1.out6 and set its frequency
                                M106 P1 S1 H1 T45                                                           ; set fan 1 value. Thermostatic control is turned on
                                M950 F2 C"1.out7" Q500                                                      ; create fan 2 on pin 1.out7 and set its frequency
                                M106 P2 S1 H2 T45                                                           ; set fan 2 value. Thermostatic control is turned on
                                M950 F3 C"1.out8" Q500                                                      ; create fan 3 on pin 1.out8 and set its frequency
                                M106 P3 S1 H3 T45                                                           ; set fan 3 value. Thermostatic control is turned on
                                
                                ; Tools
                                M563 P0 S"BMG-NF" D0 H1 F0                                                  ; define tool 0
                                ;G10 P0 X0 Y-0.7 Z1.76                                                             ; set tool 0 axis offsets
                                G10 P0 X0 Y-27.6 Z1.76                                                             ; set tool 0 axis offsets
                                G10 P0 R0 S0                                                                ; set initial tool 0 active and standby temperatures to 0C
                                M563 P1 S"BIQUH" D1 H2 F0                                                   ; define tool 1
                                ;G10 P1 X0 Y-26.9 Z0.29                                                             ; set tool 1 axis offsets
                                ;G10 P1 X0 Y-26.9 Z0.81                                                             ; set tool 1 axis offsets
                                G10 P1 X0 Y-26.9 Z-0.379                                                             ; set tool 1 axis offsets
                                G10 P1 R0 S0                                                                ; set initial tool 1 active and standby temperatures to 0C
                                M563 P2 S"LGXFF" D2 H3 F0                                                   ; define tool 2
                                G10 P2 X0 Y-26.9 Z0                                                             ; set tool 2 axis offsets
                                G10 P2 R0 S0                                                                ; set initial tool 2 active and standby temperatures to 0C
                                
                                ; Custom settings are not defined
                                
                                ;set screws position
                                ;M671 X271:35:35:271 Y277:277:33:33 P0.7	; for manual screw positionning
                                M671 X372:-62 Y154:154 S3				; for auto dual Z bed leveling
                                
                                ; Miscellaneous
                                M575 P1 S1 B57600                                                           ; enable support for PanelDue
                                
                                ; Toolchanger specific
                                M950 J1 C"io8.in"                                                           ; set up IR probe (or switch) on IO8 can check with sensors.gpIn[1].value=1 (tool loaded)
                                M98 P"/sys/SetTool.g"                                                       ; restore tool load status in case of reset or power loss with a tool loaded
                                ;a virer apres
                                ;M564 S0 H0
                                M501
                                

                                and the config-override.g

                                ; config-override.g file generated in response to M500 at 2021-06-07 15:07
                                ; This is a system-generated file - do not edit
                                ; Heater model parameters
                                M307 H0 R0.142 C1371.200:1371.200 D36.47 S1.00 V23.5 B0 I0
                                M307 H1 R2.341 C180.200:144.300 D5.30 S1.00 V23.7 B0 I0
                                M307 H2 R2.589 C240.100:170.500 D10.82 S1.00 V23.7 B0 I0
                                M307 H3 R3.025 C230.800:153.900 D8.23 S1.00 V23.7 B0 I0
                                ; Z probe parameters
                                G31 K0 P500 X40.2 Y4.1 Z3.97
                                ; Workplace coordinates
                                G10 L2 P1 X0.00 Y0.00 Z0.00
                                G10 L2 P2 X0.00 Y0.00 Z0.00
                                G10 L2 P3 X0.00 Y0.00 Z0.00
                                G10 L2 P4 X0.00 Y0.00 Z0.00
                                G10 L2 P5 X0.00 Y0.00 Z0.00
                                G10 L2 P6 X0.00 Y0.00 Z0.00
                                G10 L2 P7 X0.00 Y0.00 Z0.00
                                G10 L2 P8 X0.00 Y0.00 Z0.00
                                G10 L2 P9 X0.00 Y0.00 Z0.00
                                
                                
                                psychotik2k3undefined 1 Reply Last reply Reply Quote 0
                                • psychotik2k3undefined
                                  psychotik2k3 @psychotik2k3
                                  last edited by

                                  hummm i tried to replace the M116 with a M109 and test a simple printe with 2 heads.
                                  the first tool load was ok but when changing the tool the second one didn't stopped waiting to reach it's active temp.
                                  so even with M109 there are some misses.

                                  here is the code from tpost2.g

                                  ; tpost2.g
                                  ; called after tool 2 has been selected
                                  ;
                                  ; generated by RepRapFirmware Configuration Tool v3.2.3 on Thu May 13 2021 17:38:37 GMT+0200 (heure d’été d’Europe centrale)
                                  ; Wait for set temperatures to be reached
                                  var previousActiveTemperature = heat.heaters[3].active
                                  var previousStandbyTemperature = heat.heaters[3].standby
                                  M400
                                  M109 S{var.previousActiveTemperature} T2
                                  ;M116 P2
                                  G10 P2 S{var.previousActiveTemperature} R{var.previousStandbyTemperature}
                                  G90
                                  if (move.axes[1].userPosition<(100+tools[2].offsets[1]))
                                  	G0 Y{100+tools[2].offsets[1]} F3600
                                  G0 X{153+tools[2].offsets[0]} Y{55+tools[2].offsets[1]} F3600
                                  G0 Y{20+tools[2].offsets[1]}
                                  ;M400
                                  ;M291 P"continue ?" S3 
                                  G0 Y{-3.5+tools[2].offsets[1]} F600
                                  ;M400
                                  ;M291 P"continue ?" S3 
                                  G0 X{143+tools[2].offsets[0]}
                                  ;M400
                                  ;M291 P"continue ?" S3 
                                  G0 Y{55+tools[2].offsets[1]} F6000
                                  M400
                                  ;M118 S{sensors.gpIn[1].value=1 && state.currentTool=2}
                                  if sensors.gpIn[1].value=1 && state.currentTool=2
                                    ;M118 S"writing file"
                                    M560 P"/sys/SetTool.g"
                                    T2 P0
                                    <!-- **EoF** -->
                                  
                                  dc42undefined 1 Reply Last reply Reply Quote 0
                                  • dc42undefined
                                    dc42 administrators @psychotik2k3
                                    last edited by

                                    @psychotik2k3 please try the 3.3RC3+6 firmware from https://www.dropbox.com/sh/nmpsl9a3jfsumm5/AAA6adSjEcd1AM_j5_tVberGa?dl=0.

                                    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

                                    psychotik2k3undefined 2 Replies Last reply Reply Quote 0
                                    • psychotik2k3undefined
                                      psychotik2k3 @dc42
                                      last edited by

                                      @dc42 thanks will try that and keep you in touch

                                      1 Reply Last reply Reply Quote 0
                                      • psychotik2k3undefined
                                        psychotik2k3 @dc42
                                        last edited by psychotik2k3

                                        @dc42 😞 unfortunately it didn't worked, my tools where all parked and it took the tool 1 adn tried to purge it without waiting for it to reach the good temp.

                                        the job gcode was this:

                                        
                                        M107
                                        M190 S60 ; set bed temperature and wait for it to be reached
                                        G10 S215 P1 ; set temperature
                                        G10 S215 P2 ; set temperature
                                        ;TYPE:Custom
                                        G28 ; home all axes
                                        G1 Z5 F5000 ; lift nozzle
                                        M98 P"/sys/load_meshbed.g"	; load mesh bed corresponding to the temp
                                        
                                        G10 S215 P1 ; set temperature
                                        G10 S215 P2 ; set temperature
                                        
                                        G21 ; set units to millimeters
                                        G90 ; use absolute coordinates
                                        M82 ; use absolute distances for extrusion
                                        G92 E0
                                        T1
                                        M98 P"/macros/purge_and_wipe"; purge and wipe residu
                                        

                                        and the tpost1.g is this:

                                        ; tpost1.g
                                        ; called after tool 1 has been selected
                                        ;
                                        ; generated by RepRapFirmware Configuration Tool v3.2.3 on Thu May 13 2021 17:38:36 GMT+0200 (heure d’été d’Europe centrale)
                                        ; Wait for set temperatures to be reached
                                        var previousActiveTemperature = heat.heaters[2].active
                                        var previousStandbyTemperature = heat.heaters[2].standby
                                        
                                        M400
                                        M116 P1
                                        G90
                                        if (move.axes[1].userPosition<(100+tools[1].offsets[1]))
                                        	G0 Y{100+tools[1].offsets[1]} F3600
                                        G0 X{244+tools[1].offsets[0]} Y{55+tools[1].offsets[1]} F3600
                                        G0 Y{20+tools[1].offsets[1]}
                                        G0 Y{-3.5+tools[1].offsets[1]} F600
                                        G0 X{234+tools[1].offsets[0]}
                                        G0 Y{55+tools[1].offsets[1]} F6000
                                        
                                        M400
                                        if sensors.gpIn[1].value=1 && state.currentTool=1
                                          ;M118 S"writing file"
                                          M560 P"/sys/SetTool.g"
                                          T1 P0
                                          <!-- **EoF** -->```
                                        psychotik2k3undefined 1 Reply Last reply Reply Quote 0
                                        • psychotik2k3undefined
                                          psychotik2k3 @psychotik2k3
                                          last edited by

                                          for info the {1} on line 8 is just a display bug from the site this is only a crlf there
                                          0e5628ae-ed2a-46ec-a1c1-916e2f5514b0-image.png

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

                                            @psychotik2k3 if in the G10 command you set the standby temperature to 215 as well as the active (i.e. use G10 S215 R215), does it work then?

                                            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

                                            psychotik2k3undefined 1 Reply Last reply Reply Quote 0
                                            • psychotik2k3undefined
                                              psychotik2k3 @dc42
                                              last edited by

                                              @dc42 just tried and no.

                                              here is what i did in tpostn.g

                                              ; tpost1.g
                                              ; called after tool 1 has been selected
                                              ;
                                              ; generated by RepRapFirmware Configuration Tool v3.2.3 on Thu May 13 2021 17:38:36 GMT+0200 (heure d’été d’Europe centrale)
                                              ; Wait for set temperatures to be reached
                                              var previousActiveTemperature = heat.heaters[2].active
                                              var previousStandbyTemperature = heat.heaters[2].standby
                                              
                                              M400
                                              ;M109 S{var.previousActiveTemperature} T1
                                              G10 P1 S{var.previousActiveTemperature} R{var.previousActiveTemperature}
                                              M116 P1
                                              
                                              ;now that the temp threshold is here we put back standby temperature
                                              G10 P1 S{var.previousActiveTemperature} R{var.previousStandbyTemperature}
                                              G90
                                              
                                              dc42undefined 1 Reply Last reply Reply Quote 0
                                              • First post
                                                Last post
                                              Unless otherwise noted, all forum content is licensed under CC-BY-SA