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

    Firmware wishlist and priorities for Duet WiFi and Duet Ethernet

    Scheduled Pinned Locked Moved
    Firmware wishlist
    113
    236
    50.8k
    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.
    • Phaedruxundefined
      Phaedrux Moderator @fotomas
      last edited by

      @fotomas This already exists in the form of M0 and stop.g

      ; stop.g
      ; called when M0 (Stop) is run (e.g. when a print from SD card is cancelled)
      ; Also called by slicer end gcode by M0

      https://duet3d.dozuki.com/Wiki/Macros#Section_Pause_stop_and_power_fail

      https://duet3d.dozuki.com/Wiki/GCode#Section_M0_Stop_or_Unconditional_stop

      In my stop.g file I do all the end of print things like moving the head away from the print, maxing the part fan, turning off the heaters, etc. Then i the slicer end gcode I just have M0. That way whichever slicer I'm using stog.g gets used and I only have to make changes in one place. I do the same with start.g which gets run before a print starts.

      Z-Bot CoreXY Build | Thingiverse Profile

      1 Reply Last reply Reply Quote 1
      • David Greenundefined
        David Green
        last edited by David Green

        No. 2 5 14. I would like to keep the G32 auto bed level as a fast check on anything moving when removing a stuck print. I have a CoreXY and it can slip the 2 motors out of position.

        1 Reply Last reply Reply Quote 0
        • mwintermundefined
          mwinterm
          last edited by

          7, 10, 12, 14, 18,

          would be my my wish list. However didn't put 4, 8, 19, 20 on my list as a think that is already working:

          4 -> assigning 2 motors to one axis, separating them for homing and re-assembling them again with M584
          8 -> M906 ..... I30 for current reduction
          19 -> M80/M81 to turn ATX off
          20 -> someting like M106 P2 T45:65 H100:101:102 .....

          Regarding better CNC support (12) my specific priorities would be:

          1. Safe tool-offsets and WCS so that they are still in place after restarting (similar to bed compensation)
          2. Modify M584 for tool measurement as I already proposed (implemented in my personal branch)
          3. Extend G30 with an S-3 option to allow for WCS probing (implemented in my personal branch)
          4. Allow macros to ask for input like position, tool-number, WCS-number....
          5. More frequent update of the position in the PanelDue / Webinterface (something like 10 HZ update frequency)
          6. Support for conditions, loops and parameters in Gcode
          7. Support canned cycles like G73-G89 in the form that they can be defined in e.g. G73.g ... files like for homing, cancel, resuming....
          1 Reply Last reply Reply Quote 0
          • deckingmanundefined
            deckingman
            last edited by

            Ability to assign end stops to axes (especially useful for machines with "more than the norm" number of axes). Or more precisely the ability to assign end stops other than the default assignments.

            Talking to Tony some time back when I was trying to get CoreXYUVnn (where nn could be AW) working, I'm fairly sure this is on the road map but it doesn't appear in this thread so I thought I'd mention it here so it doesn't get overlooked.

            Ian
            https://somei3deas.wordpress.com/
            https://www.youtube.com/@deckingman

            1 Reply Last reply Reply Quote 1
            • 3DOesteundefined
              3DOeste
              last edited by

              I don't know if it would be possible, but I would like to have Fanuc compatible gcode when in CNC mode. That would enable to use the vast majorities of CAM softwares available since all of them have a Fanuc post processor.

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

                I thought Fanuc machines were rotary CNC machines - am I wrong?

                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

                3DOesteundefined 1 Reply Last reply Reply Quote 0
                • 3DOesteundefined
                  3DOeste @dc42
                  last edited by

                  @dc42 Fanuc is the standard in high quality CNC machine controllers, the are others, but Fanuc is the most used one.
                  They make controllers for mills and lathes, and also for all kinds of CNC machines (robots, press, EDM, wire EDM, etc...)

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

                    @3doeste, can you list the most important Fanuc GCode commands that RRF doesn't yet support?

                    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

                    3DOesteundefined 1 Reply Last reply Reply Quote 0
                    • 3DOesteundefined
                      3DOeste @dc42
                      last edited by

                      @dc42 I think the major difference is how G0 and G1 commands are used, since on industrial controllers you only used G0 and G1 once, and all the following blocks asume the last parameter until a G0 or G1 command is issue again. That allows for less data transfer (wich industrial controllers are the worst in this matter, specially older ones) and to separately tune rapid feed rates and cutting feed rates on the fly.
                      Canned cicles are useful but you can write all the cicle from the CAM itself, so no problem there.

                      I attached a simple offset flat strategy, without arcs, so you can see how a Fanuc post looks like. In this case it has the block numbers, but they can be removed to decrease data transfer rates .

                      0_1544481928987_Fanuc-test.gcode

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

                        @3doeste said in Firmware wishlist and priorities for Duet WiFi and Duet Ethernet:

                        I think the major difference is how G0 and G1 commands are used, since on industrial controllers you only used G0 and G1 once, and all the following blocks asume the last parameter until a G0 or G1 command is issue again.

                        What you are saying is that you can just repeat the X and/or Y coordinates without repeating the G0 or G1 command. I'll add that to the firmware wishlist.

                        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

                        3DOesteundefined 1 Reply Last reply Reply Quote 0
                        • 3DOesteundefined
                          3DOeste @dc42
                          last edited by

                          @dc42 That's right! After a G0 or G1, all the following coordinates use the last parameter, you can even change the feed without changing the G1 or G0 status (well, on industrial CNCs the G0 has no feed value, since it's given by the machine, and all you do is lower it by 50%, 25%, and to feed values).

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

                            @gavatron3000 said in Firmware wishlist and priorities for Duet WiFi and Duet Ethernet:

                            My wishlist:
                            Move axis till endstop or input reached. If not made by "X"mm then pause
                            Also be able to invert the endstop or input depending on desired condition

                            Forgot to add this request is to help with making the MMU2 work as intended with respect to detecting loading and unloading issues. This way I run it with the duet electronics and not use the prusa Arduino.
                            Cheers
                            Gav

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

                              @3doeste said in Firmware wishlist and priorities for Duet WiFi and Duet Ethernet:

                              @dc42 I think the major difference is how G0 and G1 commands are used, since on industrial controllers you only used G0 and G1 once, and all the following blocks asume the last parameter until a G0 or G1 command is issue again.

                              That is now supported in firmware 2.02RC7.

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

                                With the RTOS port I assume it's now easier to add additional background tasks to the firmware. When a print starts, could the firmware also start running a simulation in the background, and when complete that simulation time could be fed back to DWC/PanelDue for an additional (and presumably more accurate) print time estimate?

                                patakopecekundefined 1 Reply Last reply Reply Quote 1
                                • patakopecekundefined
                                  patakopecek @daveidmx
                                  last edited by

                                  @daveidmx good idea, but the duet could run out of resources

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

                                    @patakopecek said in Firmware wishlist and priorities for Duet WiFi and Duet Ethernet:

                                    @daveidmx good idea, but the duet could run out of resources

                                    That's the likely problem. The Duet 2 doesn't have enough RAM to run two instances of the Move subsystem. So we'd have to run the simulation while the Duet is sitting idle. Then we would have to either abandon the simulation if you send any commands to the Duet, or save enough state to be able to resume it later.

                                    When a simulation completes, the simulated time is stored at the end of the file. PanelDue displays that time when you select the file.

                                    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
                                    • A Former User?
                                      A Former User
                                      last edited by

                                      @dc42

                                      late to the party:

                                      6-10

                                      1 Reply Last reply Reply Quote 0
                                      • snufkinundefined
                                        snufkin
                                        last edited by

                                        My vote is:

                                        1. True bed levelling using 2, 3 or possibly 4 independently-driven Z motors and a Z probe.
                                        2. Automatic advance of changes in the colour mix when using a mixing hot end. See deckingman's blog.
                                        3. Support for PanelOne 20x4 text displays, or possibly 12864 mono graphics displays.
                                        4. Ability to update PanelDue firmware via the web interface.
                                        5. Ability to control an electronics cooling fan thermostatically based on CPU temperature and driver overheat warning.

                                        Thanks for all you do for the community!

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

                                          @snufkin said in Firmware wishlist and priorities for Duet WiFi and Duet Ethernet:

                                          My vote is:

                                          1. True bed levelling using 2, 3 or possibly 4 independently-driven Z motors and a Z probe.

                                          This one exists now. https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors

                                          1. Automatic advance of changes in the colour mix when using a mixing hot end. See deckingman's blog.
                                          2. Support for PanelOne 20x4 text displays, or possibly 12864 mono graphics displays.

                                          The Duet Maestro supports 12864 displays. The other Duets lack the hardware needed. But there are other alternatives to the PanelDue now as well. Cheap tablets as a web interface or even a customized simplified interface. https://forum.duet3d.com/topic/9257/dueui-1-1-0-is-released

                                          1. Ability to update PanelDue firmware via the web interface.

                                          Still on the wishlist.

                                          1. Ability to control an electronics cooling fan thermostatically based on CPU temperature and driver overheat warning.

                                          This is now possible as well. https://duet3d.dozuki.com/Wiki/Mounting_and_cooling_the_board#Section_Cooling

                                          Thanks for all you do for the community!

                                          Z-Bot CoreXY Build | Thingiverse Profile

                                          A Former User? 1 Reply Last reply Reply Quote 0
                                          • littlehobbyshopundefined
                                            littlehobbyshop
                                            last edited by

                                            @dc42 I think this post needs deleting and updating

                                            BLV MGN Cube w/Hemera, K8200, Sunlu S8

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