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

    How do I enable the hot end heater

    Scheduled Pinned Locked Moved
    General Discussion
    2
    30
    944
    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.
    • fcwiltundefined
      fcwilt @kb58
      last edited by

      @kb58

      This is what Cura does for the settings:

      Cura Printer Settings.png

      Cura Temp Settings.png

      ; Cura (Repeteir flavor - no temps) inserts the following around the call to this file
      
      ;M109 S0                        ; set extruder temp and wait (no wait with S0)
      ;M82                            ; absolute E moves
      ;M98 P"print_begin.g"           ; invokes this file
      ;G92 E0                         ; set E position
      ;G92 E0                         ; set E position again (have no idea why)
      ;G1 F1800 E-1                   ; do initial retract
      

      The M109 is setting the extruder temp to 0 which is of no consequence so when you get to the T0/M703 commands in the print_begin.g file the temp settings commands in the filament specific config.g file (G10, M140, M558) are executed and determine the temps.

      Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

      kb58undefined 1 Reply Last reply Reply Quote 0
      • kb58undefined
        kb58 @fcwilt
        last edited by kb58

        @fcwilt Okay, thanks, so the printer "wins" as far as which parameters are being used.

        Okay, I'm trying to get the call to filament config settings to work, yet it's as if the printer isn't seeing them at all.

        Here's my print_begin file:

        ; PrusaSlicer (RepRapflavor) inserts the following around the call to this file
        ;M106 S0                        ; fan off
        ;M98 P"print_begin.g"           ; invokes this file
        ;G21                            ; set units to millimeters
        ;G90                            ; absolute XYZ moves
        ;M83                            ; relative E moves
        
        G32				; home and level bed, then move to bed center and set Z datum
        
        ; select tool and configure based on filament selected
        T0                              ; select tool 0 so extruder commands below will work
        M703                            ; loads selected filament configuration (bed/extruder temps, extrusion
        				; multiplier, etc). See config.g in filament folder.
        
        ; setup to print
        G90                             ; absolute moves
        G1 Z20 F2000              	; position for cleaning - set as desired
        G1 X0 Y-170 F10000              ; position for cleaning - set as desired
        
        M291 R"Heating Extruder & Bed" P"Please wait..." T0
        M116                            ; wait for temps to reach set points
        M291 R"Priming Extruder" P"Please wait..." T0
        
        M83                             ; insure extruder relative mode
        G92 E0                          ; reset the extruder logical position
        G1 E10 F60                      ; prime the extruder
        M400                            ; wait to complete
        G92 E0                          ; reset the extruder logical position
        
        M291 R"Clean Nozzle and Bed" P"Click OK to begin printing" S3 T0
        
        G1 E-1.2 F60                    ; retract to control oozing
        M400                            ; wait to complete
        G92 E0                          ; reset the extruder logical position
        
        G1 X0 Y0 F10000			; move probe to center of bed
        G30                             ; probe once to set Z=0 datum, necessary for loading height map
        
        G29 S1                          ; load existing height map, "heightmap.csv" (created via G29 S0)
        

        And here is my filament config.g:

        M291 R"PLA+" P"Configuring..." T0
        M221 S100 D0			; set extrusion multiplier
        G10 S190 R190			; set extruder temps
        M140 S60 R60			; set bed temp
        M291 R"PLA+" P"Configuring - Done" T1
        
        

        What happens is:

        1. Start print
        2. Bed heater starts warming up immediately
        3. Bed temp reaches 60C (hot end remains at zero C commanded and off the entire time).
        4. Bed is leveled and Z datum set
        5. Nozzle moves to front of bed and immediately, "Clean Nozzle and Bed" is displayed. At the same time, the extruder starts running, but of course with the hot end never having been enabled and the temperature remaining at zero, it just clunks away on cold filament.

        So it seems to be flying right past setting extruder temperature or waiting for it to achieve the target. It is not displaying the "configuring" messages in filament config.g file, nor is it displaying "Heating bed and extruder".

        Do the SD /sys/filament/PLA+ files belong somewhere else? Here is where the filament files are:
        31508052-8cad-4531-8698-3a056e9c2adf-image.png

        Scratch-built 350mmx350mm coreXY, linear rails, ballscrews, 3 Z axis, Duet3 6HC, v3.3, Tool Board v1.1, BondTech LGX + Mosquito hot end

        fcwiltundefined 1 Reply Last reply Reply Quote 0
        • fcwiltundefined
          fcwilt @kb58
          last edited by

          @kb58

          Well the filament folder appears to be correct as you are seeing the filament specific files but the filament folder is not contained in the system folder but rather at the same level.

          This is what an FTP connection to my printer displays:

          SD Folders.png

          Please post the first 10-20 lines of the file you are trying to print.

          Thanks.

          Frederick

          Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

          kb58undefined 2 Replies Last reply Reply Quote 0
          • kb58undefined
            kb58 @fcwilt
            last edited by

            @fcwilt 11a0679c-383f-437b-8562-4ef7bc87ff0e-image.png

            Scratch-built 350mmx350mm coreXY, linear rails, ballscrews, 3 Z axis, Duet3 6HC, v3.3, Tool Board v1.1, BondTech LGX + Mosquito hot end

            1 Reply Last reply Reply Quote 0
            • kb58undefined
              kb58 @fcwilt
              last edited by kb58

              @fcwilt How does someone without an FTP connection create a Filament folder at the same level as SYS? I did the automated code load/upgrade, and my file structure has remained the same since. I don't see how, via the DWC, to "back out a level" in order to create a new folder. I realize I can force it to happen by removing the SD card from the printer and making it happen within my laptop, but... really?

              Scratch-built 350mmx350mm coreXY, linear rails, ballscrews, 3 Z axis, Duet3 6HC, v3.3, Tool Board v1.1, BondTech LGX + Mosquito hot end

              fcwiltundefined 1 Reply Last reply Reply Quote 0
              • fcwiltundefined
                fcwilt @kb58
                last edited by

                @kb58 said in How do I enable the hot end heater:

                @fcwilt How does someone without an FTP connection create a Filament folder at the same level as SYS? I did the automated code load/upgrade, and my file structure has remained the same since. I don't see how, via the DWC, to "back out a level" in order to create a new folder. I realize I can force it to happen by removing the SD card from the printer and making it happen within my laptop, but... really?

                The DWC does it for you.

                See the following:

                DWC Filaments Left.png

                You select the Filaments item on the left (see above)

                DWC Filaments Right.png

                Then you select New Filament on the right upper corner (see above)

                It will ask for a name and then create the required folder and files (they are empty) in the correct location.

                Then you should see the new filament name on the left in the list of filaments.

                Selecting the filament should take you to the empty files ready for editing.

                Frederick

                Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                kb58undefined 1 Reply Last reply Reply Quote 0
                • kb58undefined
                  kb58 @fcwilt
                  last edited by kb58

                  @fcwilt Yes that is how it's set up now (had to cut and paste the code in from the laptop, rather than pointing the DWC to where to get it from).

                  Anyway, there's something else going on. I double checked that the filament files are where they should be, but when the print is started, it's as if it's not executing the filament config.g file. No messages and it's not setting extruder temperature. Not sure where the bed temp command of 60C is coming from but suspect that's from the slicer.

                  Scratch-built 350mmx350mm coreXY, linear rails, ballscrews, 3 Z axis, Duet3 6HC, v3.3, Tool Board v1.1, BondTech LGX + Mosquito hot end

                  fcwiltundefined 1 Reply Last reply Reply Quote 0
                  • fcwiltundefined
                    fcwilt @kb58
                    last edited by fcwilt

                    @kb58

                    I don't know why I thought you were using Cura - Prusa is a bit different.

                    This is what I found Prusa generates and the conditions I used in configuring Prusa:

                    ; PrusaSlicer (RepRapflavor - no temps) inserts the following around the call to this file
                    ;M107                           ; fan off (should be M106 S0)
                    ;M98 P"print_begin.g"           ; invokes this file
                    ;G21                            ; set units to millimeters
                    ;G90                            ; absolute XYZ moves
                    ;M83                            ; relative E moves
                    

                    Check your settings in Prusa and see if the generated code matches the above.

                    Frederick

                    Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                    kb58undefined 1 Reply Last reply Reply Quote 0
                    • kb58undefined
                      kb58 @fcwilt
                      last edited by kb58

                      @fcwilt I did at 14:58

                      Scratch-built 350mmx350mm coreXY, linear rails, ballscrews, 3 Z axis, Duet3 6HC, v3.3, Tool Board v1.1, BondTech LGX + Mosquito hot end

                      fcwiltundefined 1 Reply Last reply Reply Quote 0
                      • fcwiltundefined
                        fcwilt @kb58
                        last edited by

                        @kb58 said in How do I enable the hot end heater:

                        @fcwilt I did at 14:58

                        I know - I was working too fast and trying to juggle too many things at once - see my post before this one regards Prusa settings.

                        Frederick

                        Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                        kb58undefined 1 Reply Last reply Reply Quote 0
                        • kb58undefined
                          kb58 @fcwilt
                          last edited by

                          @fcwilt 8f97add0-6f43-4acf-9936-32bed6eff19a-image.png

                          Scratch-built 350mmx350mm coreXY, linear rails, ballscrews, 3 Z axis, Duet3 6HC, v3.3, Tool Board v1.1, BondTech LGX + Mosquito hot end

                          1 Reply Last reply Reply Quote 0
                          • kb58undefined
                            kb58
                            last edited by kb58

                            A portion of "print_begin"
                            ddfa6c28-0a66-437c-b68c-0be105aaab2a-image.png

                            I think the clue is in this area. Even if the M703 on Line 12 isn't doing anything, I can't figure out why the messages on Line 20 and 22 aren't appearing.

                            What's strange is that this all used to work fine before adding content to the filament files... Maybe I need to back up and delete it.

                            Scratch-built 350mmx350mm coreXY, linear rails, ballscrews, 3 Z axis, Duet3 6HC, v3.3, Tool Board v1.1, BondTech LGX + Mosquito hot end

                            fcwiltundefined 1 Reply Last reply Reply Quote 0
                            • fcwiltundefined
                              fcwilt @kb58
                              last edited by

                              @kb58

                              The G32 invokes bed.g

                              Perhaps something is happening in bed.g that is causing the problem.

                              Post bed.g, please.

                              Frederick

                              Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                              kb58undefined 1 Reply Last reply Reply Quote 0
                              • kb58undefined
                                kb58 @fcwilt
                                last edited by kb58

                                @fcwilt

                                ; bed.g
                                ; called to perform automatic bed compensation via G32
                                ;
                                M561				; clear any bed transform
                                G28 				; home all
                                G30 P0 X-139 Y-119 Z-99999 	; probe near left front leadscrew
                                G30 P1 X0 Y150 Z-99999 		; probe near rear center leadscrew
                                G30 P2 X145 Y-119 Z-99999 S3	; probe near right front leadscrew, then perform 3-pt calibration
                                
                                G1 X0 Y0
                                G30
                                G30 s-1
                                
                                ;M291 P"Leveling finished" R"Probing..." S1 T2
                                
                                M291 P"Leveling finished" S1 T2
                                

                                Scratch-built 350mmx350mm coreXY, linear rails, ballscrews, 3 Z axis, Duet3 6HC, v3.3, Tool Board v1.1, BondTech LGX + Mosquito hot end

                                fcwiltundefined 1 Reply Last reply Reply Quote 0
                                • fcwiltundefined
                                  fcwilt @kb58
                                  last edited by

                                  @kb58 said in How do I enable the hot end heater:

                                  @fcwilt

                                  ; bed.g
                                  ; called to perform automatic bed compensation via G32
                                  ;
                                  M561				; clear any bed transform
                                  G28 				; home all
                                  G30 P0 X-139 Y-119 Z-99999 	; probe near left front leadscrew
                                  G30 P1 X0 Y150 Z-99999 		; probe near rear center leadscrew
                                  G30 P2 X145 Y-119 Z-99999 S3	; probe near right front leadscrew, then perform 3-pt calibration
                                  
                                  G1 X0 Y0
                                  G30
                                  G30 s-1
                                  
                                  ;M291 P"Leveling finished" R"Probing..." S1 T2
                                  
                                  M291 P"Leveling finished" S1 T2
                                  

                                  That last M291 doesn't have the R parameter - perhaps that is the problem.

                                  Also why are you doing the G30 S-1? It doesn't hurt but I'm just curious.

                                  Frederick

                                  Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                                  1 Reply Last reply Reply Quote 0
                                  • kb58undefined
                                    kb58
                                    last edited by kb58

                                    Don't see how, given that:
                                    ed7461d6-8f84-4229-97d5-4738c7b1d45a-image.png

                                    So R is just an option title.

                                    About the G30 s-1, it's just for checking on what the printer thinks the probe to bed offset is. Want to make sure it's not drifting.

                                    Scratch-built 350mmx350mm coreXY, linear rails, ballscrews, 3 Z axis, Duet3 6HC, v3.3, Tool Board v1.1, BondTech LGX + Mosquito hot end

                                    kb58undefined fcwiltundefined 2 Replies Last reply Reply Quote 0
                                    • kb58undefined
                                      kb58 @kb58
                                      last edited by kb58

                                      @kb58 Hah, I'm back at the same point when this thread was started. I can make everything work if I manually enable the hot end heater via the DWC. I had expected the filament code to enable the hot end heater and it simply doesn't. I'll have to review that code, or insert some new code to make it happen.

                                      Scratch-built 350mmx350mm coreXY, linear rails, ballscrews, 3 Z axis, Duet3 6HC, v3.3, Tool Board v1.1, BondTech LGX + Mosquito hot end

                                      1 Reply Last reply Reply Quote 0
                                      • fcwiltundefined
                                        fcwilt @kb58
                                        last edited by

                                        @kb58 said in How do I enable the hot end heater:

                                        Don't see how, given that:
                                        ed7461d6-8f84-4229-97d5-4738c7b1d45a-image.png

                                        So R is just an option title.

                                        About the G30 s-1, it's just for checking on what the printer thinks the probe to bed offset is. Want to make sure it's not drifting.

                                        Hmm... You are correct. I thought I read where it was required but it works without it.

                                        OK - add some M291 commands with an S2 parameter and a meaningful message to print_begin.g so you can determine what is being executed and what is not.

                                        For example before the G32 you could have:

                                        M291 P"About to execute G32" S2

                                        Then before the T0 you could have:

                                        M291 P"About to execute T0" S2

                                        Frederick

                                        Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                                        kb58undefined 1 Reply Last reply Reply Quote 0
                                        • kb58undefined
                                          kb58 @fcwilt
                                          last edited by kb58

                                          @fcwilt So to sort of bring this to a close, I found out through dumb luck that I have to click on the filament type in this window.

                                          ed06b619-12de-4b57-b058-265e9adfdfc1-image.png

                                          With that solved, another has to pop up, and it did. Right when it starts to do its bed leveling, it pops up a warning about "Tool not selected", but it is, and if the warning is ignored, everything works as it should anyway. While a nuisance warning, it would be nice to know why it's happening and correct it.

                                          Here's the relevant bit:

                                          ; select tool and configure based on filament selected
                                          T0                              ; select tool 0 so extruder commands work
                                          M703                            ; loads selected filament configuration (bed/extruder temps, extrusion
                                          				; multiplier, etc). See config.g in filament folder.
                                          G32				; home and level bed, then move to bed center and set Z datum
                                          

                                          I don't get it; T0 is selected right before setting up the filament, and the tool-not-selected warning appears right when the G32 command starts. Huh.

                                          Scratch-built 350mmx350mm coreXY, linear rails, ballscrews, 3 Z axis, Duet3 6HC, v3.3, Tool Board v1.1, BondTech LGX + Mosquito hot end

                                          fcwiltundefined 2 Replies Last reply Reply Quote 0
                                          • fcwiltundefined
                                            fcwilt @kb58
                                            last edited by

                                            @kb58

                                            Did you remove these "sanity" checks I had in print_begin.g:

                                            ; check for selected filament
                                            
                                            if move.extruders[0].filament = ""
                                              M291 R"No Filament Selected" P"Cannot Continue" S2 T0
                                              abort
                                            
                                            ; check bed heater active temp setting
                                            
                                            if heat.heaters[0].active = 0 
                                              M291 R"Bed Heater Active Temp = 0" P"Cannot Continue" S2 T0
                                              abort
                                            
                                            ; check extruder heater active temp setting
                                            
                                            if heat.heaters[1].active = 0 
                                              M291 R"Extruder Heater Active Temp = 0" P"Cannot Continue" S2 T0
                                              abort
                                            
                                            

                                            You will notice the first one checks if a filament has been selected.

                                            Frederick

                                            Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

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