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

    RepRapFirmware 3.2 planned improvements

    Scheduled Pinned Locked Moved
    General Discussion
    28
    99
    6.3k
    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.
    • dc42undefined
      dc42 administrators
      last edited by dc42

      Now that we are close to releasing RRF 3.1.0 stable, plans for RRF 3.02 have been made and work on it has started. The provisional work list for RRF 3.2 is available to view at https://docs.google.com/spreadsheets/d/1qTa7pxtYbOnsZ1SVg39kQBaqsO8sOtgpGFzUTi_b91c/edit?usp=sharing. Please note, these plans are subject to change.

      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

      gtj0undefined droftartsundefined arhiundefined 3 Replies Last reply Reply Quote 6
      • gtj0undefined
        gtj0 @dc42
        last edited by

        @dc42 Great list! Thanks for publishing!

        Z probes: discontinue speed reduction when analog probe gets near, instead support 2-speed probing in M558

        So the value at which speed decreases will be configurable via M558?

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

          @gtj0 said in RepRapFirmware 3.02 planned improvements:

          So the value at which speed decreases will be configurable via M558?

          The idea is to allow fast-then-slow probing with G30, without having to use M558 to change the probing speed. I haven't decided on the exact mechanism yet.

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

            Several months ago, it was discussed (and demonstrated) that RRF on a duet2 was no longer able to handle higher speed movements. Even 150mm/sec movements on a delta machine could cause hiccups on a duet2 board. Around that time, you did do some optimizations, but said you'd re-visit it after 3.01 went out the door (and/or redo timing tests?)

            "I'm not saying that you are wrong - I'm just trying to fit it into my real world simulated experience."

            botundefined 1 Reply Last reply Reply Quote 1
            • botundefined
              bot @garyd9
              last edited by bot

              @garyd9 On that list is to improve step pulse generation, and re-introduce multi-stepping. This should help achieve faster speeds on prints which are not limited by the gcode queue, but by step pulse generation.

              *not actually a robot

              arhiundefined 1 Reply Last reply Reply Quote 0
              • arhiundefined
                arhi @bot
                last edited by

                This post is deleted!
                1 Reply Last reply Reply Quote 0
                • zaptaundefined
                  zapta
                  last edited by

                  Any plans to support slicer's (e.g. Prusaslicer) time markers for more accurate time-left display?

                  Or is it already implemented on RRF? I am still on 2.x.

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

                    @zapta said in RepRapFirmware 3.02 planned improvements:

                    Any plans to support slicer's (e.g. Prusaslicer) time markers for more accurate time-left display?

                    Do you mean the M73 command?

                    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

                    zaptaundefined 1 Reply Last reply Reply Quote 0
                    • CCS86undefined
                      CCS86
                      last edited by

                      Any chance of revisiting this topic?

                      https://forum.duet3d.com/topic/4802/6th-order-jerk-controlled-motion-planning

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

                        It's on the list for implementation, but IMO it's pointless as long as jerk or junction deviation is needed at corners. The first-order motion components need to be made continuous before or at the same time as worrying about third and high order components.

                        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

                        botundefined CCS86undefined 2 Replies Last reply Reply Quote 0
                        • Nuramoriundefined
                          Nuramori
                          last edited by

                          This post is deleted!
                          1 Reply Last reply Reply Quote 0
                          • botundefined
                            bot @dc42
                            last edited by bot

                            @dc42 Is there anything that a slicer could output to make improved motion planning easier for the firmware?

                            I've been playing around with IceSL, which requires a LUA script to process the sliced model and generate gcode output. And therefore, we have an opportunity to use the raw, non-truncated, slice geometry data before it is turned to gcode and calculate anything we wish and format it alongside the gcode in any way we wish.

                            Unfortunately, the underlying slicer does not generate curves. But, we can calculate angles, segment lengths, extrusion rates, etc. in the slicer and offload that from the FW.

                            I'm currently making a RRF-specific printer profile for IceSL, which is basically just implementing all the features duet users expect, and producing gcode compatible with RRF.

                            Long story short, we have the possibility now to do high-precision pre-processing of the gcode at the same time that we slice it.

                            *not actually a robot

                            1 Reply Last reply Reply Quote 1
                            • Bipotronicundefined
                              Bipotronic
                              last edited by

                              Implementation of Variables of GCode Meta Comments would be useful. Or is this function already implemented?

                              1 Reply Last reply Reply Quote 0
                              • zaptaundefined
                                zapta @dc42
                                last edited by

                                @dc42 said in RepRapFirmware 3.02 planned improvements:

                                Do you mean the M73 command?

                                Yes, M73. This is what I got from in a 22minutes (estimated) gcode file:

                                M73 P0 R22
                                M73 P0 R22
                                M73 P4 R21
                                M73 P9 R20
                                M73 P13 R19
                                M73 P18 R18
                                M73 P22 R17
                                M73 P27 R16
                                M73 P31 R15
                                M73 P36 R14
                                M73 P40 R13
                                M73 P45 R12
                                M73 P49 R11
                                M73 P54 R10
                                M73 P58 R9
                                M73 P63 R8
                                M73 P67 R7
                                M73 P72 R6
                                M73 P76 R5
                                M73 P81 R4
                                M73 P85 R3
                                M73 P90 R2
                                M73 P94 R1
                                M73 P99 R0
                                M73 P100 R0
                                

                                In the early phases of the print probably the remaining time R is more useful for the estimation and in later phase probably the percentage P and actual time so far will give a better estimation.

                                The markers seem to be in (estimated) 1 minute intervals.

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

                                  I've added M73 to the list for consideration.

                                  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

                                  zaptaundefined 2 Replies Last reply Reply Quote 0
                                  • zaptaundefined
                                    zapta @dc42
                                    last edited by

                                    @dc42 said in RepRapFirmware 3.02 planned improvements:

                                    I've added M73 to the list for consideration.

                                    Thanks.

                                    1 Reply Last reply Reply Quote 0
                                    • CCS86undefined
                                      CCS86 @dc42
                                      last edited by

                                      @dc42 said in RepRapFirmware 3.02 planned improvements:

                                      It's on the list for implementation, but IMO it's pointless as long as jerk or junction deviation is needed at corners. The first-order motion components need to be made continuous before or at the same time as worrying about third and high order components.

                                      What is causing that dependance?

                                      1 Reply Last reply Reply Quote 0
                                      • zaptaundefined
                                        zapta @dc42
                                        last edited by

                                        @dc42, FYI, I run a small experiment correlating the M73 markers with actual prints (replaced them with G10 and M140 that propagated the values to standby fields in the json). Results look very good, both for linearity and absolute time values.

                                        My slicer has default setting, without any calibration for the max speed, acceleration and jerk of my printer.

                                        You can probably run tests much faster using simulator mode.

                                        8dc1b42b-0963-4e2a-b0d7-d4b0cb1c656d-image.png

                                        5d9ac3fb-8df1-431a-89e6-2d215f0f9439-image.png

                                        1 Reply Last reply Reply Quote 0
                                        • copystringundefined
                                          copystring
                                          last edited by

                                          Please add inverted M80/M81 for meanwell PSUs.
                                          I know. I'm inpatient. Is it a lot of work to implement this?

                                          dc42undefined 1 Reply Last reply Reply Quote 1
                                          • SpoonUnitundefined
                                            SpoonUnit
                                            last edited by

                                            Could the option be added to set the min limit for behaviours similar to that controlled my M190. A default of 41 seems fine, but ultimately arbitrary, and having the option to hand control of this value to the operator would be nice. M143 sets max limits, perhaps it could be overloaded to support specifying min limits also?

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