Duet3D Logo

    Duet3D

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Documentation
    • Order

    Filament-change.g

    Filament Monitor
    4
    13
    2402
    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.
    • gavatron3000
      gavatron3000 last edited by

      Hey just curious if anyone else has had issues with getting filament-change.g to work? I've got the macro in the /sys/ folder but it won't use it. I'm sure I've missed setting something up. I'm on v2.03b3

      dc42 1 Reply Last reply Reply Quote 0
      • brunofporto
        brunofporto last edited by brunofporto

        @gavatron3000 said in Filament-change.g:

        filament-change.g

        I never tried it because of the pause.g is working ok for both cases for me. But the gcode description page says that:

        "This command behaves like M226 except that if macro file filament-change.g exists in /sys on the SD card, it is run in preference to pause.g. Supported in firmware 2.02 and later."

        So, I think that, if you have an empty filament-change.g it will do nothing (by executing it when the M600 is executed) instead of using the pause.g

        1 Reply Last reply Reply Quote 0
        • gavatron3000
          gavatron3000 last edited by

          Yes exactly, but I've got gcode in my filament-change.g macro and it still just pauses

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

            Just curious what the contents of pause.g and filament-change.g are.

            Z-Bot CoreXY Build | Thingiverse Profile

            1 Reply Last reply Reply Quote 0
            • gavatron3000
              gavatron3000 last edited by

              Pause.g
              pause.g
              ; called when a print from SD card is paused
              ;
              ; generated by RepRapFirmware Configuration Tool on Mon Feb 19 2018 19:56:04 GMT+1100 (AEDT)
              M83 ; relative extruder moves
              G1 E-5 F2000 ; retract 5mm of filament
              G91 ; relative positioning
              G1 Z10 F360 ; lift Z by 5mm
              G90 ; absolute positioning
              G1 X0 Y0 F6000 ; go to X=0 Y=0

              Filament-change.g
              T-1 ; deselect tool to unload filament
              G90 ; absolute moves
              G1 U75 F2000 ; move selector out of the way
              G1 V900 F5000 ; drive filament out the front of MMU2
              G1 W78 F10000 ; move W axis to safe position
              M291 P"remove old filament, load new filament and press OK" R"Filament has run out" S2 ; display message to change filament Filament has run out
              T R1 ; select previous tool
              M24 ; resume print

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

                @gavatron3000 said in Filament-change.g:

                Hey just curious if anyone else has had issues with getting filament-change.g to work? I've got the macro in the /sys/ folder but it won't use it. I'm sure I've missed setting something up. I'm on v2.03b3

                Is this when you send M600, or when a filament monitor detects a problem and pauses the print?

                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
                • gavatron3000
                  gavatron3000 last edited by

                  to be honest ive never manually sent a M600, im refering to when a filament out situation is detected during a print

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

                    I don't think that running filament-change.g automatically on a filament error would suit most people, because many filament errors are not caused by running out of filament. Perhaps we should run a new file such as filament-error.g instead? That file could use M291 to ask the user whether he/she wants to change the filament or not.

                    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 4
                    • gavatron3000
                      gavatron3000 last edited by

                      Ok so I've misinterpreted the behaviour of the filament-change.g.
                      So when the filament runs out a pause.g is called then when I intervene I'm meant to run M600? Woops I didn't realise

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

                        @gavatron3000 No, i don't think that's quite it either.

                        Originally, to do a filament change on the Duet you would use M226 inserted into your print gcode to pause the print with pause.g at a specific layer and you would manually change the filament.

                        Marlin was using M600 which let you specify a few more options specific to filament changes.

                        So when M600 was implemented in RRF it was meant to work similar to pause.g but would let you specify what you wanted to happen in filament-change.g. Which would keep your M226 pause.g seperate and more generic, and M600 filament-change.g specific to how you wanted to change filament.

                        Filament runout detection is totally separate from either of these, though in practice you could execute behaviour of either.

                        Z-Bot CoreXY Build | Thingiverse Profile

                        1 Reply Last reply Reply Quote 0
                        • gavatron3000
                          gavatron3000 last edited by

                          Hmmmm. So whats the trigger for it to function thats the bit I'm missing or haven't understood

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

                            You'd place M600 in your gcode file. Usually at a layer change to do a color swap.

                            Z-Bot CoreXY Build | Thingiverse Profile

                            1 Reply Last reply Reply Quote 0
                            • gavatron3000
                              gavatron3000 last edited by

                              Ok no worries

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