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

    Duet3 doesn't always heat hotend

    Scheduled Pinned Locked Moved Unsolved
    Duet Web Control
    5
    20
    700
    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.
    • BlueDustundefined
      BlueDust @engikeneer
      last edited by

      @engikeneer
      Tpre0.g already exists and basically empty.

      ; tpre0.g
      ; called before tool 0 is selected
      ;
      ; generated by RepRapFirmware Configuration Tool v3.1.4 on Sun Nov 15 2020 19:29:35 GMT-0500 (Eastern Standard Time)
      
      ; tpre1.g
      ; called before tool 1 is selected
      ;
      ; generated by RepRapFirmware Configuration Tool v3.1.4 on Sun Nov 15 2020 19:29:35 GMT-0500 (Eastern Standard Time)
      

      Fun, that 3 letter word with "u" in the middle.

      engikeneerundefined 1 Reply Last reply Reply Quote 0
      • engikeneerundefined
        engikeneer @BlueDust
        last edited by

        @BlueDust and tfree0.g & tpost0.g? my tpost0.g has an M116 in it (though not sure if that was in by default or I added...)

        E3D TC with D3Mini and Toolboards.
        Home-built CoreXY, Duet Wifi, Chimera direct drive, 2x BMG, 300x300x300 build volume
        i3 clone with a bunch of mods

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

          Can you share your config.g please?

          Z-Bot CoreXY Build | Thingiverse Profile

          BlueDustundefined 1 Reply Last reply Reply Quote 0
          • BlueDustundefined
            BlueDust @Phaedrux
            last edited by BlueDust

            @Phaedrux
            I have a lot of config currently commented out as I still have to add my 2nd 1LC board and attach my 2nd hotend to it for IDEX.

            ; Configuration file for Duet 3 (firmware version 3)
            ; executed by the firmware on start-up
            ;
            ; generated by RepRapFirmware Configuration Tool v3.2.1 on Sun Jan 10 2021 20:45:03 GMT-0500 (Eastern Standard Time)
            
            ; General preferences
            G90                                                   ; send absolute coordinates...
            M83                                                   ; ...but relative extruder moves
            M550 P"Duet 3"                                        ; set printer name
            
            ; Drives
            ;M569 P0.0 S1                                          ; physical drive 0.0 goes forwards
            M569 P0.0 S0                                       
            ;M569 P10.0 S0  
            M569 P0.3 S0  
            M569 P0.1 S1                                          ; physical drive 0.1 goes forwards
            M569 P0.2 S1                                          ; physical drive 0.2 goes forwards
            M569 P10.0 S1                                        ; physical drive 121.0 goes forwards
            ;M569 P11.0 S1                                        ; physical drive 122.0 goes forwards - Right Extruder
            
            ;M584 X0.0 Y0.1 Z0.2 E10.0                      		; set drive mapping
            M584 X0.1 U0.4 Y0.5 Z0.0 E10.0:11.0
            ;M584 X0.0 Y0.1 Z0.2 E10.0:11.0                      ; set drive mapping - Right Extruder
            M350 X16 U16 Y16 Z16 E16:16 I1                            ; configure microstepping with interpolation
            M92 X160.00 U160 Y160.00 Z800.00 E830.9:830.9           ; set steps per mm
            M566 X400.00 U400 Y400.00 Z40.00 E1000.00:1000.00            ; set maximum instantaneous speed changes (mm/min)
            M203 X4000.00 U4000 Y4000.00 Z200.00 E1200.00:1200.00       ; set maximum speeds (mm/min)
            M201 X400.00 U400 Y400.00 Z40.00 E1000.00:1000.00            ; set accelerations (mm/s^2)
            M906 X1000 U1000 Y1000 Z1800 E1000:1000 I30                      ; set motor currents (mA) and motor idle factor in per cent
            M84 S30                                               ; Set idle timeout
            
            ; Axis Limits
            M208 X-53 U0 Y0 Z0 S1                                      ; set axis minima
            M208 X300 U353 Y300 Z370 S0                                ; set axis maxima
            
            ; Endstops
            M574 X1 S3                                            ; configure sensorless endstop for low end on X
            M574 U1 S3 
            M574 Y1 S3                                            ; configure sensorless endstop for low end on Y
            M574 Z1 S2                                            ; configure Z-probe endstop for low end on Z
            
            ; Z-Probe
            M950 S0 C"10.io0.out"                                ; create servo pin 0 for BLTouch
            ;M950 S4 C"10.io0.out"
            ;M558 P9 C"^10.io0.in" H5 F120 T6000                  ; set Z probe type to bltouch and the dive height + speeds
            ;M558 P9 C"^10.io0.in" H5 F100 R0.2 T6000 A5 B0 
            M558 P9 C"^10.io0.in" H5 F100 R0.2 T6000 A5 B1 
            ;G31 P500 X0 Y0 Z2.5                                   ; set Z probe trigger value, offset and trigger height
            G31 P500 X-30 Y-12 Z3.58  
            ;M557 X15:275 Y15:275 S20                              ; define mesh grid
            M557 X30:270 Y30:270 P2
            
            ; Heaters
            M308 S0 P"10.temp0" Y"thermistor" T100000 B4138      ; configure sensor 0 as thermistor on pin 121.temp0
            M950 H0 C"10.out0" T0                                ; create nozzle heater output on 121.out0 and map it to sensor 0
            M307 H0 B0 S1.00                                      ; disable bang-bang mode for heater  and set PWM limit
            M143 H0 S280                                          ; set temperature limit for heater 0 to 100C
            
            ;M308 S1 P"11.temp0" Y"thermistor" T100000 B4138      ; configure sensor 1 as thermistor on pin 122.temp0
            ;M950 H1 C"11.out0" T1                                ; create nozzle heater output on 122.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
            
            M308 S2 P"temp2" Y"thermistor" T100000 B4138          ; configure sensor 2 as thermistor on pin temp3
            M950 H2 C"out3" T2                                    ; create bed heater output on out3 and map it to sensor 2
            M307 H2 B0 S1.00                                      ; disable bang-bang mode for the bed heater and set PWM limit
            M140 H2                                               ; map heated bed to heater 2
            M143 H2 S100                                          ; set temperature limit for heater 2 to 280C
            
            M572 D0:1 S0.07											; Pressure Advanced for extruders 0 and 1
            
            ; Fans
            M950 F0 C"10.out1" Q500                              ; create fan 0 on pin 121.out1 and set its frequency
            M106 P0 C"PartFanLeft" S0 H-1                         ; set fan 0 name and value. Thermostatic control is turned off
            M950 F1 C"10.out2" Q500                              ; create fan 1 on pin 121.out2 and set its frequency
            M106 P1 C"HotendFanLeft" S1 H0 T40                    ; set fan 1 name and value. Thermostatic control is turned on
            
            ;M950 F2 C"11.out1" Q500                              ; create fan 2 on pin 122.out1 and set its frequency
            ;M106 P2 C"PartFanRight" S0 H-1                        ; set fan 2 name and value. Thermostatic control is turned off
            ;M950 F3 C"11.out2" Q500                              ; create fan 3 on pin 122.out2 and set its frequency
            ;M106 P3 C"HotendFanRight" S1 H1 T40                   ; set fan 3 name and value. Thermostatic control is turned on
            
            ; Tools
            M563 P0 S"LeftExtruder" D0 H0 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
            
            ;M563 P1 S"RightExtruder" D1 H1 F2                     ; define tool 1
            ;G10 P1 X0 Y0 Z0                                       ; set tool 1 axis offsets
            ;G10 P1 R0 S0                                          ; set initial tool 1 active and standby temperatures to 0C
            
            ;M563 P2 S"Copy" D0:1 H1:2 F0:2                        ; define tool 2
            ;G10 P2 X0 Y0 Z0                                       ; set tool 2 axis offsets
            ;G10 P2 R0 S0                                          ; set initial tool 2 active and standby temperatures to 0C
            ;M568 P2 S1                                            ; enable mixing for tool 2
            ;M567 P2 E0.5:0.5                                      ; set mixing ratios for tool 2
            
            ;M563 P3 S"Mirror" D0:1 H1:2 F0:2                      ; define tool 3
            ;G10 P3 X0 Y0 Z0                                       ; set tool 3 axis offsets
            ;G10 P3 R0 S0                                          ; set initial tool 3 active and standby temperatures to 0C
            ;M568 P3 S1                                            ; enable mixing for tool 3
            ;M567 P3 E0.5:0.5                                      ; set mixing ratios for tool 3
            
            ; Custom settings are not defined
            
            ; Miscellaneous
            M575 P1 S1 B57600                                     ; enable support for PanelDue
            M501                                                  ; load saved parameters from non-volatile memory
            M911 S10 R11 P"M913 X0 U0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
            ;T0                                                    ; select first tool
            
            
            

            Not that I think it matters, but do have a M116 command in there.... But also sharing my Auto Ready Macro I run before each print. (originally created for and copied from another printer running on a Duet2) This macro does work most of the time on the Duet3, and everytime on Duet2 (still running on 2.x)

            M290 R0 S0			;Clear Baby Stepping
            
            M140 R60 S60 		;Bed Temp
            T0					;Enable Hotend - Active.
            G10 P0 R130 S150	;Hotend Temp
            M116 				;Wait for heater teamps
            
            G28					;Home
            G28
            
            G29					;Auto Compensation
            
            G0 X-100 U400 Y-100 Z25 F6000		;Go here, this fast
            
            G10 P0 R130 S200
            M140 R60 S70
            
            M290 S-0.10			;Baby Stepping
            

            Fun, that 3 letter word with "u" in the middle.

            1 Reply Last reply Reply Quote 0
            • BlueDustundefined
              BlueDust @engikeneer
              last edited by

              @engikeneer said in Duet3 doesn't always heat hotend:

              tfree0

              ; tfree0.g
              ; called when tool 0 is freed
              ;
              ; generated by RepRapFirmware Configuration Tool v3.1.4 on Sun Nov 15 2020 19:29:35 GMT-0500 (Eastern Standard Time)
              
              ;Duet IDEX Example Code
              M83 ; relative extruder movement
              ;G1 E-2 F3600 ; retract 2mm
              M106 S0           ; turn off our print cooling fan
              G91 ; relative axis movement
              G1 Z3 F500 ; up 3mm
              G90 ; absolute axis movement
              ;G1 S2 X-52 F6000 ; park the X carriage at -52mm
              G1 H2 X-52 F6000 ; park the X carriage at -52mm
              
              ; tfree1.g
              ; called when tool 1 is freed
              ;
              ; generated by RepRapFirmware Configuration Tool v3.1.4 on Sun Nov 15 2020 19:29:35 GMT-0500 (Eastern Standard Time)
              
              ;Duet IDEX Example Code
              M83 ; relative extruder movement
              ;G1 E-2 F3600 ; retract 2mm
              M106 S0           ; turn off our print cooling fan
              G91 ; relative axis movement
              G1 Z3 F500 ; up 3mm
              G90 ; absolute axis movement
              ;G1 S2 U248 F6000 ; park the U carriage at +248mm
              G1 H2 U248 F6000 ; park the U carriage at +248mm
              

              Fun, that 3 letter word with "u" in the middle.

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

                Can you try adding G4 S2 near the start of your config.g? This will add a 2 second pause to give the boards time to initialize before commands are sent.

                Z-Bot CoreXY Build | Thingiverse Profile

                BlueDustundefined 1 Reply Last reply Reply Quote 1
                • BlueDustundefined
                  BlueDust @Phaedrux
                  last edited by BlueDust

                  @Phaedrux said in Duet3 doesn't always heat hotend:

                  add a 2 second pause to give the boards time to initialize before commands are sent

                  Added it. It seems to only occur 20% of the time. I will follow up after a few prints.
                  Any idea why the Duet3 doesn't give an error for thermal protection? I know the hotend isn't actually heating up at all, and I assume something in the logic seems to know that, otherwise it would have. But I wonder if there is an odd glitch or edge case where the thermal protection may fail.

                  Thanks for the help!

                  Fun, that 3 letter word with "u" in the middle.

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

                    @BlueDust said in Duet3 doesn't always heat hotend:

                    Any idea why the Duet3 doesn't give an error for thermal protection? I know the hotend isn't actually heating up at all, and I assume something in the logic seems to know that, otherwise it would have. But I wonder if there is an odd glitch or edge case where the thermal protection may fail.

                    The thermal protection is handed on the board with the heater; so if it doesn't execute the heating command for any reason, protection won't cut in.

                    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 1
                    • BlueDustundefined
                      BlueDust
                      last edited by

                      @Phaedrux

                      It happened again. It says Busy and doesn't react to any clicks on Heater0.
                      Also, appears it is still trying to wait for the hotend to reach the set temp as the Macro is still in process.
                      e99d38ee-5880-48dd-8892-846e2582bdf1-image.png

                      I will keep the Duet3 in this state for a little while in hopes you are able to respond and have anything you would like me to do before I hit Emergency Stop and start the next print.

                      bdb5c543-2318-43ab-abf0-609fa05ebbd2-image.png

                      ; generated by RepRapFirmware Configuration Tool v3.2.1 on Sun Jan 10 2021 20:45:03 GMT-0500 (Eastern Standard Time)
                      
                      ; General preferences
                      G4 S2   			;adds a 2 second pause to give the boards time to initialize before commands are sent.  May fix random hotend not heating up
                      
                      G90                                                   ; send absolute coordinates...
                      M83                                                   ; ...but relative extruder moves
                      M550 P"Duet 3"                                        ; set printer name
                      
                      
                      M122
                      === Diagnostics ===
                      RepRapFirmware for Duet 3 MB6HC version 3.2.2 running on Duet 3 MB6HC v1.01 or later (SBC mode)
                      Board ID: 08DJM-956L2-G43S4-6JTDJ-3SD6S-9S5YD
                      Used output buffers: 1 of 40 (18 max)
                      === RTOS ===
                      Static ram: 149788
                      Dynamic ram: 62796 of which 104 recycled
                      Never used RAM 146144, free system stack 178 words
                      Tasks: Linux(ready,101) HEAT(blocked,297) CanReceiv(blocked,824) CanSender(blocked,371) CanClock(blocked,352) TMC(blocked,50) MAIN(running,1183) IDLE(ready,19)
                      Owned mutexes: Telnet(MAIN)
                      === Platform ===
                      Last reset 00:09:44 ago, cause: power up
                      Last software reset at 2021-03-11 21:55, reason: User, none spinning, available RAM 145852, slot 2
                      Software reset code 0x0012 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0044a000 BFAR 0x00000000 SP 0x00000000 Task Linu Freestk 0 n/a
                      Error status: 0x00
                      Aux0 errors 0,0,0
                      Aux1 errors 0,0,0
                      MCU temperature: min 9.9, current 28.9, max 29.1
                      Supply voltage: min 24.0, 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.2, max 12.2, under voltage events: 0
                      Driver 0: position 0, standstill, reads 2086, writes 14 timeouts 0, SG min/max 0/0
                      Driver 1: position 0, standstill, reads 2086, writes 14 timeouts 0, SG min/max 0/0
                      Driver 2: position 0, standstill, reads 2089, writes 11 timeouts 0, SG min/max 0/0
                      Driver 3: position 0, standstill, reads 2089, writes 11 timeouts 0, SG min/max 0/0
                      Driver 4: position 0, standstill, reads 2086, writes 14 timeouts 0, SG min/max 0/0
                      Driver 5: position 0, standstill, reads 2086, writes 14 timeouts 0, SG min/max 0/0
                      Date/time: 2021-03-12 08:59:09
                      Slowest loop: 54.70ms; fastest: 0.03ms
                      === Storage ===
                      Free file entries: 10
                      SD card 0 not detected, interface speed: 37.5MBytes/sec
                      SD card longest read time 0.0ms, write time 0.0ms, max retries 0
                      === Move ===
                      DMs created 125, maxWait 0ms, bed compensation in use: none, comp offset 0.000
                      === MainDDARing ===
                      Scheduled moves 0, completed moves 0, hiccups 0, stepErrors 0, LaErrors 0, Underruns [0, 0, 0], 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 = 2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1
                      Heater 0 is on, I-accum = 0.0
                      Heater 2 is on, I-accum = 0.0
                      === GCodes ===
                      Segments left: 0
                      Movement lock held by HTTP
                      HTTP* is doing "M116" in state(s) 0 0, running macro
                      Telnet* is doing "M122" 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 2251, send timeouts 0, received 6684, lost 0, longest wait 2ms for reply type 6049, free buffers 48
                      === SBC interface ===
                      State: 4, failed transfers: 0
                      Last transfer: 2ms ago
                      RX/TX seq numbers: 20017/20017
                      SPI underruns 0, overruns 0
                      Number of disconnects: 0, IAP RAM available 0x2c884
                      Buffer RX/TX: 72/352-0
                      === Duet Control Server ===
                      Duet Control Server v3.2.2
                      HTTP:
                      Buffered code: M116 ;Wait for heater teamps
                      Buffered code: G28 ;Home
                      Buffered code: G28
                      Buffered code: G29 ;Auto Compensation
                      Buffered code: G0 X-100 U400 Y-100 Z25 F6000 ;Go here, this fast
                      Buffered code: G10 P0 R130 S200
                      Buffered code: M140 R60 S70
                      Buffered code: M290 S-0.10 ;Baby Stepping
                      ==> 280 bytes
                      Executing macro 0:/macros/Auto Ready Printer, started by M98 P"0:/macros/Auto Ready Printer"
                      > Next stack level
                      Pending code: T-1
                      Pending code: T-1
                      Code buffer space: 3744
                      Configured SPI speed: 8000000 Hz
                      Full transfers per second: 0.50
                      Maximum length of RX/TX data transfers: 3024/960
                      ok
                      

                      Fun, that 3 letter word with "u" in the middle.

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

                        What are the responses if you send M308 S0 and then M950 H0 ?

                        What does M122 B10 respond with this time?

                        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

                        BlueDustundefined 1 Reply Last reply Reply Quote 0
                        • BlueDustundefined
                          BlueDust @dc42
                          last edited by

                          @dc42
                          Trying to send M308 S0... Waited a few minutes and it still hasn't completed.
                          ef75867c-92f5-4adc-9112-897605bfe6d6-image.png

                          M122 B10
                          Diagnostics for board 10:
                          Duet TOOL1LC firmware version 3.2 (2021-01-05)
                          Bootloader ID: SAMC21 bootloader version 2.2 (2021-01-16b1)
                          Never used RAM 4012, free system stack 96 words
                          HEAT 90 CanAsync 89 CanRecv 83 TMC 54 MAIN 218 AIN 64
                          Last reset 02:30:32 ago, cause: power up
                          Last software reset data not available
                          Driver 0: position 0, 830.9 steps/mm, standstill, SG min/max 0/0, read errors 0, write errors 0, ifcnt 13, reads 59793, writes 13, timeouts 0, DMA errors 0
                          Moves scheduled 0, completed 0, in progress 0, hiccups 0
                          No step interrupt scheduled
                          VIN: 23.8V
                          MCU temperature: min 20.7C, current 36.2C, max 36.6C
                          Ticks since heat task active 39, ADC conversions started 8996572, completed 8996571, timed out 0
                          Last sensors broadcast 0x00000001 found 1 42 ticks ago, loop time 0
                          CAN messages queued 108066, send timeouts 0, received 81195, lost 0, free buffers 36
                          ok
                          

                          Fun, that 3 letter word with "u" in the middle.

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

                            Try reloading DWC (i.e. browser tab refresh), then send the M308 command again.

                            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

                            BlueDustundefined 1 Reply Last reply Reply Quote 0
                            • BlueDustundefined
                              BlueDust @dc42
                              last edited by

                              @dc42
                              No change.

                              42ec6b17-a633-40d1-b79a-9c3aebb1bdb9-image.png

                              Fun, that 3 letter word with "u" in the middle.

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