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

Creating/Editing Macros

Scheduled Pinned Locked Moved
General Discussion
3
10
1.6k
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • undefined
    blandified
    last edited by 13 Feb 2018, 17:28

    Hello!

    Our project is a bioprinter that will be using syringes of bioink/cells instead of extruding plastic.

    It is a dual syringe (extruder) design that has a linear rack mechanism between the two syringes A and B that, when the stepper attached to this mechanism moves one direction, syringe A travels up while syringe B travels down. When the stepper moves the opposite direction, syringe A travels back down and syringe B travels back up.

    The reason for this is to extrude from the syringe that is lower, stop printing when that layer is done, then use the mechanism to lower the other syringe to print and get the first syringe out of the way (each syringe will contain different material that will need to be printed at different times).

    Instead of changing the firmware, I was talking with Tony and he recommended that this could be done with macros.

    1.) Our printer is not built yet, but we need to get a head start on this. How can we begin the legwork of these macros?

    2.) I know this is a newb question but y'all have been so nice and patient. Are the macros done in gcode or C++? I saw somewhere on the forums that macros can be created within the webcontrol application from computer -> ethernet -> Duet board, but I am looking for a bit more information so we can get started.

    Thank you in advance for the help!

    Just as a P.S. - The account I am using is a shared account for my project group. In the future we will try to add our names of each post so you know exactly who you are talking to.

    1 Reply Last reply Reply Quote 0
    • undefined
      T3P3Tony administrators
      last edited by 13 Feb 2018, 19:05

      Hi
      First if you want accounts for each of you in the project grtoup just let me know and I will get them made.

      Macros are witten in Gcode. examples such as homing are bult in system macros. For an example of such a macro look here:
      https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCartesianPrinter#Section_Homing_files

      So really if you can carry out the action you want to carryout using Gcodes one step at a time then you can bundle it up into a macro to happen automatically. Specifically in your case on tool change So have a look at tool change macros:

      https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCartesianPrinter#Section_Tool_change_files

      There are three types of tool change macros: TfreeN.g which runs when the current tool is freed. TPre#.g which runs just before the new tool is activated and Tpost#.g which runs just after it is activated.

      www.duet3d.com

      1 Reply Last reply Reply Quote 0
      • undefined
        blandified
        last edited by 14 Feb 2018, 16:22

        @T3P3Tony:

        Hi
        First if you want accounts for each of you in the project grtoup just let me know and I will get them made.

        Macros are witten in Gcode. examples such as homing are bult in system macros. For an example of such a macro look here:
        https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCartesianPrinter#Section_Homing_files

        So really if you can carry out the action you want to carryout using Gcodes one step at a time then you can bundle it up into a macro to happen automatically. Specifically in your case on tool change So have a look at tool change macros:

        https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCartesianPrinter#Section_Tool_change_files

        There are three types of tool change macros: TfreeN.g which runs when the current tool is freed. TPre#.g which runs just before the new tool is activated and Tpost#.g which runs just after it is activated.

        Tony,
        Thank you for the reply! We will begin working on this.

        1 Reply Last reply Reply Quote 0
        • undefined
          blandified
          last edited by 20 Feb 2018, 19:51

          @T3P3Tony:

          Hi
          First if you want accounts for each of you in the project grtoup just let me know and I will get them made.

          Macros are witten in Gcode. examples such as homing are bult in system macros. For an example of such a macro look here:
          https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCartesianPrinter#Section_Homing_files

          So really if you can carry out the action you want to carryout using Gcodes one step at a time then you can bundle it up into a macro to happen automatically. Specifically in your case on tool change So have a look at tool change macros:

          https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCartesianPrinter#Section_Tool_change_files

          There are three types of tool change macros: TfreeN.g which runs when the current tool is freed. TPre#.g which runs just before the new tool is activated and Tpost#.g which runs just after it is activated.

          Tony,

          On the Duet wiki page, https://www.duet3d.com/ , it says the firmware can handle 2 extruders already. So instead of building these macros from the ground up, where would I go to access the existing code/macro for the dual extruder set up?

          Thanks in advance! Our team is still looking into making these macros ourselves, but wanted to see if we can use any existing templates to make sure ours is good.

          1 Reply Last reply Reply Quote 0
          • undefined
            dc42 administrators
            last edited by 20 Feb 2018, 20:18

            There are some very old macros for 2-nozzle printing near the middle of https://miscsolutions.wordpress.com/2014/07/27/converting-the-reprappro-ormerod-to-dual-colour/,

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            1 Reply Last reply Reply Quote 0
            • undefined
              blandified
              last edited by 20 Feb 2018, 21:46

              @dc42:

              There are some very old macros for 2-nozzle printing near the middle of https://miscsolutions.wordpress.com/2014/07/27/converting-the-reprappro-ormerod-to-dual-colour/,

              Thank you dc42, you've been much help to us!

              On a related note, how do we set up the code to run our macros? For example, the main gcode file of what we want to print is inputted through SD card. And then we need to specify when each extruder is going to be operating…how do we do the function/macro call that will run our macro to switch extruders?

              1 Reply Last reply Reply Quote 0
              • undefined
                dc42 administrators
                last edited by 20 Feb 2018, 22:12

                The tool change macros are run automatically when you use T commands in the GCode file to switch tools.

                Duet WiFi hardware designer and firmware engineer
                Please do not ask me for Duet support via PM or email, use the forum
                http://www.escher3d.com, https://miscsolutions.wordpress.com

                1 Reply Last reply Reply Quote 0
                • undefined
                  blandified
                  last edited by 20 Feb 2018, 22:22

                  @dc42:

                  The tool change macros are run automatically when you use T commands in the GCode file to switch tools.

                  I aam starting to see now! Thanks so much, I will continue working on this. Sorry if all these questions seem rather basic, it seems all the reading material online is pretty scattered and not directly related to the task at hand that we need to complete. We appreciate the help we have received here! Will check back with an update.

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    blandified
                    last edited by 22 Feb 2018, 18:05

                    @dc42:

                    The tool change macros are run automatically when you use T commands in the GCode file to switch tools.

                    So I have been researching the tool change macros and, as I understand it, it switches tools and in doing so it switches all the temp controls to the current tool and sort of forgets about the previous tool.

                    Since we have 2 syringes, 1 filled with cells and the other filled with structural gel, we need to keep both at the specified temperatures even when the syringe is printing or not. To clarify, we have a stepper motor that is pushing the syringe down instead of a filament.

                    Is a tool change what we need? Essentially, as we understand, the gcode should reflect when the other syringe is to be used. Then, when the gcode gets to the part where the other syringe is to be used, we want to pause the print, switch to the other syringe, use the aforementioned slide rack system to rotate the new syringe down (using a stepper in between the 2 syringes), then print that layer and continue to swap/alternate through the whole gcode print file.

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      dc42 administrators
                      last edited by 22 Feb 2018, 18:50

                      It doesn't forget about the previous tool, it sets the previous tool to its standby temperature. In FDM printing, the standby temperature is normally set a little lower than the normal extrusion temperature to control oozing.

                      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
                      3 out of 10
                      • First post
                        3/10
                        Last post
                      Unless otherwise noted, all forum content is licensed under CC-BY-SA