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

    Duet WiFi firmware new feature priorities

    Scheduled Pinned Locked Moved
    Firmware wishlist
    54
    167
    40.5k
    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.
    • mhackneyundefined
      mhackney
      last edited by

      Wow, that's a long and great list!

      1 C Predictive temperature control
      2 O Support for restore points
      3 L Faster file upload speed
      4 M Babystepping - if implanted with a usable UI
      5 B Multi-threaded web server,

      and some comments:

      re: config_override.g - smoothieware uses this and it did nothing but drive me crazy! I frequently had unexpected results that turned out to be override settings. If you do go down this path, making it editable in DWC like the config.g is would go a long way to help.

      SSH would be ideal over telnet but telnet is fine for me. I only run on my internal network so security is not a huge concern. But I can see it being important in an educational and industrial situation.

      ROBUST DWC connections - I know huge progress has been made on this this year but it can still improve.

      My 3D Printing blog: http://www.sublimelayers.com
      Coming this summer: "3D Printing Strategies - the art of perfecting your designs and prints"

      1 Reply Last reply Reply Quote 0
      • mhackneyundefined
        mhackney
        last edited by

        Here's a new request: an option to perform both the auto calibration (G30 Sx) AND return the results the way S-1 does.

        My 3D Printing blog: http://www.sublimelayers.com
        Coming this summer: "3D Printing Strategies - the art of perfecting your designs and prints"

        1 Reply Last reply Reply Quote 0
        • franknitty69undefined
          franknitty69
          last edited by

          1 - predictive temp control
          2 - grid based bed comp
          3 - restore points
          4 - dynamically varying microstepping
          5 - Support for three independently-controlled Z motors

          1 Reply Last reply Reply Quote 0
          • CodonExeundefined
            CodonExe
            last edited by

            My vote is:

            1. C. Predictive temperature control
            2. J. Dynamically-varying microstepping
            3. I. Faster microstepping
            4. M. Babystepping
            5. E. Support for an external SD card socket

            Rostock Max V2, Duet Wifi, IR Probe, PanelDue 7" LCD, Heated Enclosure, Firestop cans, Thermally Fused 12v E3D V6, Berd Air, Floating Thermally fused 24v Bed, Aluminum heat spreader, PEI, Dual 12v PSUs in series.

            1 Reply Last reply Reply Quote 0
            • deckingmanundefined
              deckingman
              last edited by

              Just thought of a "anything else".

              Some sort of running total of print time to date. A sort of "hour meter", or "mileometer". It would be useful for setting up maintenance schedules\reminders. Like "lubricate guides" every x number of hours or "change belts" every y hundred hours". I guess this is more a web interface thing, as it would need to be running total of when the printer is actually printing rather than power on time. Just a thought…....

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

              1 Reply Last reply Reply Quote 0
              • botundefined
                bot
                last edited by

                Oh yes, the hourmeter would be a very very nice feature. It could be nice to know individual axes' travel distances, as well as print hours, total powered up hours (for motors) etc.

                *not actually a robot

                1 Reply Last reply Reply Quote 0
                • RichRap3Dundefined
                  RichRap3D
                  last edited by

                  Very nice list, choices, choices…

                  My vote would be -

                    • F. Support for multiple independent X carriages.
                    • A. Higher stepper motor current (above 2A)
                    • P. Control over which access point
                    • N. Support for driving RC servos - But do the HW on the expansion header (shield) with a +5V reg + I/O etc.
                    • R. Support to compensate for axis hysteresis

                  In my first week of using DuetWifi I would have voted for E. Support for an external SD card socket, but now it's almost not even something I would think about, and it's annoying that other 3D printers are still using a slow external card…

                  Best Regards,

                  Rich.

                  1 Reply Last reply Reply Quote 0
                  • Pumluxundefined
                    Pumlux
                    last edited by

                    I think this is my preference of order.

                    C. Predictive temperature control.
                    H. Grid-based bed compensation,
                    J. Dynamically-varying microstepping
                    O. Support for restore points.
                    G. Support for three independently-controlled Z motors

                    I read DC42 start post that way, the other topics will
                    not be dropped, just come later.

                    One suggestion from my side ( I believe the topic
                    was already discussed in some thread(s) on the RepRap forum)

                    What about having a dedicated button (pin) for pausing
                    the print (similar the pause Web Button) ?

                    Sometimes I have see someting strange during the print
                    and would like to pause. The Webbutton is to slow to reach
                    and a power off (like an emergency stop button)
                    ruins the print.

                    Using a own build of a Mendel Max , Duet Wifi, Bed 8 mm Aluminium PEI 500 x 280 x 400 230 V 850 W, original E3D Chimera hotend with bowden length 700 mm, since short time with a BL-Touch, Steppers : mostly Nema 17 and one Nema 23 for Y-axis

                    1 Reply Last reply Reply Quote 0
                    • botundefined
                      bot
                      last edited by

                      The PanelDue offers exactly this pause button. I personally would never run a duet printer without a paneldue. It's a much more reliable and fast means of controlling the printer than the web interface. Keep in mind, the pause command does wait for the last gcode command to finish executing (or maybe even the whole queue).

                      *not actually a robot

                      1 Reply Last reply Reply Quote 0
                      • BMMalundefined
                        BMMal
                        last edited by

                        I just pre-ordered a board. One feature I want to request (if it doesn't exist already) is an extruder advance (aka JKN, Linear Advance, etc) to help compensate for hysteresis in bowden systems. My machine has some very long bowden tubes and enabling this (unfinished) feature in Marlin's RC Bug fix branch made a noticeable difference on corners and top infill quality.

                        Duet Ethernet - Most likely the most recent Edge firmware
                        Duet X5
                        7" Panel Due V2
                        Cartesian, 4 Nozzles with Flex3Drives, Heated Chamber, Simple Switch Filament Sensing

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

                          @BMMal:

                          I just pre-ordered a board. One feature I want to request (if it doesn't exist already) is an extruder advance (aka JKN, Linear Advance, etc) to help compensate for hysteresis in bowden systems. My machine has some very long bowden tubes and enabling this (unfinished) feature in Marlin's RC Bug fix branch made a noticeable difference on corners and top infill quality.

                          Good news for you. RepRapFirmware has supported extruder pressure advance for around 18 months. See
                          http://reprap.org/wiki/Gcodes#M572:_Set_or_report_extruder_pressure_advance

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

                            @dc42:

                            @BMMal:

                            I just pre-ordered a board. One feature I want to request (if it doesn't exist already) is an extruder advance (aka JKN, Linear Advance, etc) to help compensate for hysteresis in bowden systems. My machine has some very long bowden tubes and enabling this (unfinished) feature in Marlin's RC Bug fix branch made a noticeable difference on corners and top infill quality.

                            Good news for you. RepRapFirmware has supported extruder pressure advance for around 18 months. See
                            http://reprap.org/wiki/Gcodes#M572:_Set_or_report_extruder_pressure_advance

                            Excellent news! And it's per extruder, even better! Can't wait to get my hands on it!

                            Duet Ethernet - Most likely the most recent Edge firmware
                            Duet X5
                            7" Panel Due V2
                            Cartesian, 4 Nozzles with Flex3Drives, Heated Chamber, Simple Switch Filament Sensing

                            1 Reply Last reply Reply Quote 0
                            • PRZundefined
                              PRZ
                              last edited by

                              My own list for a printer:
                              1/ H grid-compensation
                              2/ C temp control with auto-tune
                              3/ D Simple panel
                              There was on forum someone asking for an odometer (recording filament consumption) and printing hour counter. That shall not be high priority, but that may be a nice to have.
                              The Duet WiFi having higher current capability, it can be possible to handle a CNC, but there is need to implement a few more G-Code

                              • M0/M1 stop/start for tool change
                              • M3/M5 start/stop spindle
                              • M8/M9 Coolant on/off
                              • M10/M11 : Vacuum (for part maintaining) - lower priority
                              • Sn : spindle speed
                                Heaters output can be used to command SSR or to make a PWM for spindle speed control.
                                A 'standard' mapping shall be decided, e.g. E0 heater -> spindle on/off E1 heater -> coolant on/off , Bed heater -> Vacuum pump, Fan0 for spindle speed control.

                              Shapeoko is listing the G-code it is using here http://www.shapeoko.com/wiki/index.php/G-Code

                              1 Reply Last reply Reply Quote 0
                              • Aussiephilundefined
                                Aussiephil
                                last edited by

                                @PRZ:

                                There was on forum someone asking for an odometer (recording filament consumption) and printing hour counter. That shall not be high priority, but that may be a nice to have.

                                Hey that was me :), sort of forgotten about it but yes it would be good to have but low on the list 🙂

                                Second the CNC stuff….. that will be my next big project.

                                Cheers
                                Phil

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

                                  It's time to summarize which firmware features you want most. I allocated 5 points to your first choices, 4 points to your second choices usw. and added them up.

                                  By far the most wanted feature is predictive temperature control with auto tuning (51 points). After that comes dynamic microstep generation (30), grid-based bed compensation (27), restore points (24), faster microstepping (23), and higher motor current (21) and babystepping (18).

                                  I already implemented faster microstep generation and released it in firmware 1.14.

                                  Dynamic microstepping and higher motor current are related, because they both involve the SPI interface ti the stepper drivers. So I plan to implement them together. This leads me to the following provisional plan:

                                  #1 Predictive temperature control with auto calibration

                                  #2 Higher motor current and dynamic microstepping

                                  #3 Grid-based bed compensation

                                  #4 Restore points

                                  We also expect to have OEM customers for the Duet WiFi so I will be taking their views into account too.

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

                                    Really have to ask, but what on earth is 'predictive temperature control' are you talking about Feed forward or heuristic control?… both I would consider to be a poor replacement for PID.

                                    The problem with PID control is tuning and most people who talk about tuning of PID rarely explain that the tuning methodology changes with the form of the PID algorithms (and there are many forms)

                                    How about replacing the existing PID algorithm with an auto tune algorithm?

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

                                      It's feedforward control. Why would you consider it to be a poor replacement for PID? PID is OK at correcting for small changes in the status quo, but it's fairly useless at achieving the target temperature in the first place.

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

                                        What exactly about it are you trying to improve? I don't think I've ever been unable to tune a PID adequately enough for it to have no ill-effect on prints.

                                        One thing that would be nice for an alternate to PID, is for it to be able to set temperatures for times in the future. For example, have an idle heater heated up at the precise moment it is needed, rather than having to wait. It would account for the heatup (and cooldown) times and time the signals appropriately to have the heater ready or not when it is needed or not. This would be useful in the case of a stationary idle extruder.

                                        *not actually a robot

                                        1 Reply Last reply Reply Quote 0
                                        • Great_Tharkundefined
                                          Great_Thark
                                          last edited by

                                          b c j o h in no particular order

                                          1 Reply Last reply Reply Quote 0
                                          • RCarlyleundefined
                                            RCarlyle
                                            last edited by

                                            Feed-forward temp control (or more accurately "model-based" control) doesn't really get the average user anything (except maybe 10-20 second faster stabilized preheat time) but it is very valuable for two extreme usage cases:
                                            1) Very high-speed printing. Large changes in filament melt power (and I do mean LARGE, like with a Volcano changing from slow perimeters to fast infill)) cause massive temp fluctuation that can trigger firmware heater safety cutoffs and affect print quality.
                                            2) Very light-weight hot ends. When the temp sensing time lag and/or heater power are large relative to the heat capacity of the hot end, feedback control algorithms like PID can become mathematically incapable of outputting a stable temperature with acceptable settling time. Basically if your process gain or sensor time constant is too large, PID is a bad control scheme.

                                            The PID autotune technique used by all the other 3d printer firmwares (specifically, the relay method with old-school Ziegler Nichols parameters in Marlin, Repetier, Smoothie, etc) really is NOT very effective. It outputs mediocre tuning values. The fact that hot ends heat up much faster than they cool down violates the mathematical assumptions going into the relay autotuning method. You can improve the auto-tune algorithm with some tweaks, which Redeem has recently implemented, but at a certain point you have to ask why you're using increasingly complex implementations of PID – a super-generic control scheme that is ideal for un-modeled processes with unknown disturbance inputs -- rather than making a bespoke control algorithm that takes advantage of the well-known physics we're dealing with here.

                                            3D printer hot end control is a VERY good candidate for a feed-forward model. Almost all heat flux can be accounted for with three terms: heater power, heat losses due to temp difference between the hot end and ambient, and heat leaving the hot end in the melted filament. All of these can be auto-calibrated without too much difficulty. Then you add in a minimal PID-style "I" feedback loop to correct any residual model error, and bob's your uncle -- super stable temp control for a wider range of hardware and print conditions.

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