• Tags
  • Documentation
  • Order
  • Register
  • Login
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.
  • undefined
    dc42 administrators
    last edited by dc42 11 May 2020, 09:27

    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

    undefined undefined undefined 3 Replies Last reply 11 May 2020, 13:06 Reply Quote 6
    • undefined
      gtj0 @dc42
      last edited by 11 May 2020, 13:06

      @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?

      undefined 1 Reply Last reply 11 May 2020, 13:44 Reply Quote 0
      • undefined
        dc42 administrators @gtj0
        last edited by dc42 5 Nov 2020, 13:47 11 May 2020, 13:44

        @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
        • undefined
          garyd9
          last edited by 11 May 2020, 13:51

          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."

          undefined 1 Reply Last reply 11 May 2020, 14:14 Reply Quote 1
          • undefined
            bot @garyd9
            last edited by bot 5 Nov 2020, 14:15 11 May 2020, 14:14

            @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

            undefined 1 Reply Last reply 11 May 2020, 15:24 Reply Quote 0
            • undefined
              arhi @bot
              last edited by 11 May 2020, 15:24

              This post is deleted!
              1 Reply Last reply Reply Quote 0
              • undefined
                zapta
                last edited by 11 May 2020, 15:29

                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.

                undefined 1 Reply Last reply 11 May 2020, 17:14 Reply Quote 0
                • undefined
                  dc42 administrators @zapta
                  last edited by 11 May 2020, 17:14

                  @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

                  undefined 1 Reply Last reply 14 May 2020, 01:11 Reply Quote 0
                  • undefined
                    CCS86
                    last edited by 13 May 2020, 13:20

                    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
                    • undefined
                      dc42 administrators
                      last edited by 13 May 2020, 13:42

                      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

                      undefined undefined 2 Replies Last reply 13 May 2020, 15:27 Reply Quote 0
                      • undefined
                        Nuramori
                        last edited by 13 May 2020, 14:13

                        This post is deleted!
                        1 Reply Last reply Reply Quote 0
                        • undefined
                          bot @dc42
                          last edited by bot 13 May 2020, 15:27

                          @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
                          • undefined
                            Bipotronic
                            last edited by 13 May 2020, 18:36

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

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              zapta @dc42
                              last edited by 14 May 2020, 01:11

                              @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
                              • undefined
                                dc42 administrators
                                last edited by 14 May 2020, 09:43

                                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

                                undefined 2 Replies Last reply 14 May 2020, 15:06 Reply Quote 0
                                • undefined
                                  zapta @dc42
                                  last edited by 14 May 2020, 15:06

                                  @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
                                  • undefined
                                    CCS86 @dc42
                                    last edited by 15 May 2020, 04:15

                                    @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
                                    • undefined
                                      zapta @dc42
                                      last edited by 16 May 2020, 05:37

                                      @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
                                      • undefined
                                        copystring
                                        last edited by 17 May 2020, 10:30

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

                                        undefined 1 Reply Last reply 17 May 2020, 11:37 Reply Quote 1
                                        • undefined
                                          SpoonUnit
                                          last edited by 17 May 2020, 10:59

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