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

    Poor print quality with RRF3 - especially 3.2.2.

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    23
    159
    12.4k
    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 @oliof
      last edited by

      @oliof said in Poor print quality with RRF3 - especially 3.2.2.:

      @o_lampe still looking to see whether PA routine is skipped if value is set to 0.0 or not. I am not that familiar with the RRF code yet, as I have mainly messed around in contained places (Kinematics) so far.

      RRF does not distinguish between PA never having been set, and being set to 0.0.

      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
      • deckingmanundefined
        deckingman @dc42
        last edited by

        @dc42 said in Poor print quality with RRF3 - especially 3.2.2.:

        Three questions for you:

        1. Is the amount of X shift in the photo you posted consistent with the amount of shift being the length of the box it was printing? Or so you think it may have been more?

        2. Have you already shared that GCode file, and if so, where?

        3. You said that you were unable to download the console and you had to copy-and-paste it. Do you mean that you tried to click on the list icon at the top right of the console (to get the "Download as text" option), but it didn't respond?

        #1 The print is actually a box plus lid. The lid is only 3mm thick (tall) and an unremarkable rectangle, so I haven't included any pics of that before. But at the point of failure, the machine had long finished the lid and was printing just the box. That box is a tad over 70mm wide in X. From the witness mark on the bed, I can see that the right hand edge of that box is about 110mm from the right hand edge of the build plate. So for the head to crash into the frame and try to repeatedly beat the hell out of it, means that there would have to have been a shift of >110 mm - significantly larger than the width of the part it was printing.

        #2. No I hadn't shared the file. I have now uploaded it to the folder on Google drive that I last linked too (the one that has the console dump file). In fact, I've uploaded the original version as sliced plus the version which has UVAB moves added. The latter is distinguishable by the "UVAB" suffix which is added to the end of the file name - that's the one I've been using but unless you can simulate a CoreXYUVAB, it won't be much use (hence the inclusion of the original).

        Note. You'll need to remove the call to the "pre-print" macro. You'll then have to heat the bed and nozzle and send a "T0" before attempting to print or simulate that file (as well as home the printer). I could post the "pre-print" macro but it calls other macros to set the tool temperatures, home the printer, purge and wipe the nozzle etc, so it all gets complicated and it'll just be easier to manually heat the bed and hot end.

        #3. That's correct. In all other instances, I've simply selected the "download as text" option but after pressing "pause", that didn't work. Firefox shows me when a file is being downloaded but that didn't happen - there was no indication on Firefox that at download was happening. And no additional files appeared in the list of downloads (only those console.text files that were downloaded prior to the crash).

        I can't remember if I pressed cancel before or after attempting to download the console text. I think, I pressed pause, tried to download, then pressed cancel and tried to download again, but I can't be 100% sure of that. I've uploaded both the pause.g and cancel.g files to the same place. I can't see anything in either of those that would have prevented downloads from working but you might spot something I've missed.

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

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

          For anyone watching this thread, and for those who have contributed, I just want to say that the Duet team and I have opened up the communication medium that we used at the very start (when Gen 3 was still at the pre-production stage), in order to work together to resolve these issues. That's nothing personal - just that these forums are maybe not the best way to post messages rapidly back and forth between us.

          I thought it important to state that fact, in case anyone got the impression that I had been abandoned by the Duet team - that isn't the case and we are working together to try and get to the bottom of wtf is happening.

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

          Luke'sLaboratoryundefined 1 Reply Last reply Reply Quote 8
          • jens55undefined
            jens55
            last edited by

            Thank you for letting us know.

            1 Reply Last reply Reply Quote 0
            • Luke'sLaboratoryundefined
              Luke'sLaboratory @deckingman
              last edited by

              @deckingman

              Keep at it and let us know what you find out.

              I'm likely affected by many of the issues that you're discussing - also have a large machine with many extruders and i'd love to continue using it 🙂

              @dc42 keep it up as well! I'm happy and willing to give some tests as well, but I won't have the time to dedicate to all of the detailed troubleshooting that deckingman is doing.

              Luke

              Luke
              http://lukeslab.online

              1 Reply Last reply Reply Quote 0
              • hackinistratorundefined
                hackinistrator @deckingman
                last edited by hackinistrator

                @dc42
                why are there different driver reports for main board and 3hc . for example main board does not show steps /mm and step req / done .

                @deckingman sorry to see your machine damaged , at least its nothing serious . did you consider using some king of fail safe between the carriages ? for example connect a wire that is shorter then rest of the stuff that will disconnect earlier in case of misalignment and stop the machine .

                i looked at your gcode , xy and ab positions should be the same right ?
                are you using different step/mm for xy and ab ?

                i cannot see any relation between the xy driver position and ab position on the main board . maybe this can explain something .

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

                  @hackinistrator Forget about the AB gantry. That's a force cancelling/load balancing gantry that is completely separate to the XY and UV gantries. It simply carries a container with lumps of lead. It's just another CoreXY mechanism that sits at the very top of the machine and is in no way connected to the hot end or the extruders. The motor directions are reversed so it does the exact opposite of the XY gantry to stop the printer rocking around when I throw my heavy hot end around at high speed. It does nothing for print quality and the only reason it's still there is that I can't be bothered to remove it.

                  The XY gantry carries the hot end. The UV gantry carries the 6 extruders and two of the expansion boards. The extruders are connected to the hot end with short Bowden tubes. All the wires for the heater, fans, temp sensor, end stop etc for the hot end are connected to the expansion boards that are fitted to the UV gantry above. The UV gantry is the one that "follows" the XY gantry with an "envelope" that is +- 20mm of the XY position.

                  I've never before seen a wild excursion of the XY gantry that was not mimicked by the UV gantry. Nor did I foresee that possibility.

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

                  fcwiltundefined hackinistratorundefined 2 Replies Last reply Reply Quote 0
                  • fcwiltundefined
                    fcwilt @deckingman
                    last edited by

                    @deckingman said in Poor print quality with RRF3 - especially 3.2.2.:

                    That's a force cancelling/load balancing gantry that is completely separate to the XY and UV gantries. It simply carries a container with lumps of lead. It's just another CoreXY mechanism that sits at the very top of the machine and is in no way connected to the hot end or the extruders. The motor directions are reversed so it does the exact opposite of the XY gantry to stop the printer rocking around when I throw my heavy hot end around at high speed.

                    That is most interesting. Where did you hear about that idea or was it something you devised on your own?

                    Thanks.

                    Frederick

                    Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                    deckingmanundefined 2 Replies Last reply Reply Quote 0
                    • hackinistratorundefined
                      hackinistrator @deckingman
                      last edited by

                      Forget about the AB gantry. That's a force cancelling/load balancing gantry that is completely separate to the XY and UV gantries.

                      i think in your case its important .
                      x is related to a , and y is related to b .

                      so i would expect these relations to stay the same during print . your reports shows otherwise (at least i think so)

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

                        @fcwilt It was my own idea - another world first that has since been copied. I did a write up of it on my blog. I'm using my phone right now so can't easily provide a link but there is a link to my blog in my signature.

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

                        fcwiltundefined 1 Reply Last reply Reply Quote 1
                        • deckingmanundefined
                          deckingman @hackinistrator
                          last edited by

                          @hackinistrator I can't say that I noticed, but yes A should always be the same as X and B should always be the same as Y. The X and Y motors are on expansion board 3 and the A and B motors are on the main board. That might be a clue.....

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

                          1 Reply Last reply Reply Quote 0
                          • o_lampeundefined
                            o_lampe
                            last edited by

                            @deckingman
                            about the XYUVAB axis':
                            I read in the Wiki that you have to use definitions of the extra axis in a certain order. E.g. you can't define V-axis without having a U-axis. If you still do, the FW automatically defines a virtual axis.
                            I believe, that you have to define UVW before using ABC or you have an unknown W-axis in your system, which might do spooky things.
                            Your printer is running for a long time with this axis', but maybe a newer FW treats theses ghosts different?

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

                              @o_lampe said in Poor print quality with RRF3 - especially 3.2.2.:

                              @deckingman
                              about the XYUVAB axis':
                              I read in the Wiki that you have to use definitions of the extra axis in a certain order. E.g. you can't define V-axis without having a U-axis. If you still do, the FW automatically defines a virtual axis.
                              I believe, that you have to define UVW before using ABC or you have an unknown W-axis in your system, which might do spooky things.
                              Your printer is running for a long time with this axis', but maybe a newer FW treats theses ghosts different?

                              I have this
                              M584 X3.2 Y3.1 Z3.0 U0.0 V0.1 A0.2 B0.3 E1.0:1.1:1.2:2.0:2.1:2.2 R0 P7;
                              and
                              M669 K8 A0:0:0:0:0:1:1 B0:0:0:0:0:1:-1;

                              I'm fairly sure using those matrix values should sort out any ghost axes but I'll leave it to @dc42 - he's best placed to know.

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

                              hackinistratorundefined o_lampeundefined 2 Replies Last reply Reply Quote 0
                              • deckingmanundefined
                                deckingman @fcwilt
                                last edited by

                                @fcwilt Here is a link to the first post I did with the load balancing gantry
                                https://somei3deas.wordpress.com/2018/10/04/dynamic-force-cancellationload-balancing/. Not that it was later discovered that this has no effect on print quality. That is to say, even when the entire printer rocked from side to side, the actual print was fine. So eliminating the rocking was largely a solution to a problem that doesn't exist.

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

                                1 Reply Last reply Reply Quote 1
                                • fcwiltundefined
                                  fcwilt @deckingman
                                  last edited by

                                  @deckingman said in Poor print quality with RRF3 - especially 3.2.2.:

                                  @fcwilt It was my own idea - another world first that has since been copied. I did a write up of it on my blog. I'm using my phone right now so can't easily provide a link but there is a link to my blog in my signature.

                                  Thanks. That was quite educational.

                                  But I think I've found the source of ALL of your printer problems.

                                  It is not big enough. 😉

                                  Frederick

                                  Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

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

                                    @fcwilt The trouble is, I can't make it much taller because I'm not tall enough. I have to stand on a step to see they very top of it as it is now. I did mention to my wife that if we did away with the freezer in the garage, I could make it wider. But for some reason, she prefers to have that second freezer. Strange creatures women - always have the wrong priorities 🙂

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

                                    1 Reply Last reply Reply Quote 2
                                    • hackinistratorundefined
                                      hackinistrator @deckingman
                                      last edited by hackinistrator

                                      @deckingman said in Poor print quality with RRF3 - especially 3.2.2.:

                                      @o_lampe said in Poor print quality with RRF3 - especially 3.2.2.:

                                      @deckingman
                                      about the XYUVAB axis':
                                      I read in the Wiki that you have to use definitions of the extra axis in a certain order. E.g. you can't define V-axis without having a U-axis. If you still do, the FW automatically defines a virtual axis.
                                      I believe, that you have to define UVW before using ABC or you have an unknown W-axis in your system, which might do spooky things.
                                      Your printer is running for a long time with this axis', but maybe a newer FW treats theses ghosts different?

                                      I have this
                                      M584 X3.2 Y3.1 Z3.0 U0.0 V0.1 A0.2 B0.3 E1.0:1.1:1.2:2.0:2.1:2.2 R0 P7;
                                      and
                                      M669 K8 A0:0:0:0:0:1:1 B0:0:0:0:0:1:-1;

                                      I'm fairly sure using those matrix values should sort out any ghost axes but I'll leave it to @dc42 - he's best placed to know.

                                      did you copy and paste m669 from your config.g , are you sure its not a mistake?

                                      in m584 a and b defined as driver 2 and 3 .
                                      in m669 you are setting a and b to move with drives 5 and 6 ? there is no drive 6 on main board .
                                      i dont know whats going on here .

                                      also in m584 you define x as driver 2 on 3hc(b3) and y as driver 1 ? any reason for that ? usually x comes before y .

                                      this is your motor location per you dump files :
                                      3hc #3
                                      Driver 0: position -1182960 z axis
                                      Driver 1: position 3200 y axis
                                      Driver 2: position -145076 x axis

                                      main board
                                      Driver 0: position 31360 u axis
                                      Driver 1: position 6604 v axis
                                      Driver 2: position 16320 a axis
                                      Driver 3: position 31840 b axis
                                      Driver 4: position 4756 ?
                                      Driver 5: position 31360 ?

                                      when you paused the print , a and b (if they are configured right , not sure anymore) should be :
                                      a around 200mm from its end stop
                                      b around 400mm from its end stop
                                      is this logical ?
                                      i dont know how much steps/mm your xy has . if its same as ab (80steps/mm) your x should be around 1.8meters from end stop . i dont thik your printer is that big 🙄
                                      so maybe you're using different steps/mm for xy , but anyways i think their relation to ab is way off .
                                      can you send M669 command and post the report ?

                                      edit :
                                      almost forgot , drives 5,6 on main board not defined , but i still see changing position on them , whats going on ?

                                      deckingmanundefined o_lampeundefined 2 Replies Last reply Reply Quote 0
                                      • deckingmanundefined
                                        deckingman @hackinistrator
                                        last edited by deckingman

                                        @hackinistrator Dunno. Driver position (as reported by M122) is fairly new so I've never looked at it before. Maybe there is something odd about the way they are reported - maybe something different for expansion boards and the main board?

                                        Don't forget this is CoreXY kinematics, not Cartesian. So both motors contribute to movement. That's why I prefer to call them Alpha and Beta but for configuration purposes, they have to be called X and Y (or U and V or A and B). Also, the A and B motor directions are reversed. Oh and the axes lengths are a bit longer than the XY.

                                        I can confirm that they all use the same belt and pulley pitch and all motors are 0.9 degree, so the steps per mm are the same for all axes (80). I can also confirm that it all works as it should.

                                        No idea why Drivers 4 and 5 report anything - as you say, they aren't configured and physically, don't have any motors connected. You'll have to ask @dc42.

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

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

                                          On the expansion boards, the driver positions are the net number of microsteps moved since the board was powered up or reset. Therefore, for a drive used to move an axis, the position is where the axis is now compared to where it was at power up. However, if after homing it you move the axis to a particular position and record the corresponding driver position, then when you next move the axis back to that position, the driver position should read the same.

                                          For the main board, if drivers 4 and 5 have never been configured, I would expect the positions to read back as zero.

                                          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
                                          • o_lampeundefined
                                            o_lampe @hackinistrator
                                            last edited by

                                            @hackinistrator said in Poor print quality with RRF3 - especially 3.2.2.:

                                            main board
                                            Driver 0: position 31360 u axis
                                            ...
                                            Driver 5: position 31360 ?

                                            Both the same! Coincidence or another ghost axis in the machine?

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