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

    Can't run pressure advance g-code

    Scheduled Pinned Locked Moved Solved
    Tuning and tweaking
    6
    36
    1.9k
    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.
    • gbartschundefined
      gbartsch @tas
      last edited by

      @tas said in Can't run pressure advance g-code:

      If your extruder jerk setting is too low it can limit Pressure Advance ability to function. Maybe that is what is happening.

      Thank you!

      Well that might be the problem as my jerk is lower than default even. My machine is the Cartesian style with heavy X and Y movements so I lowered the jerk to reduce shaking. I'll increase it and run the test.

      M566 X800.00 Y800.00 Z24.00 E300.00     ; set maximum instantaneous speed changes (mm/min)
      

      Custom cartesian dinosaur machine; it's a tank but just works so I just keep tweaking it. / Duet Ethernet 1.02 or later / RepRapFirmware for Duet 2 WiFi/Ethernet: 3.4.5 / SuperSlicer

      tasundefined 1 Reply Last reply Reply Quote 0
      • gbartschundefined
        gbartsch @tas
        last edited by

        @tas said in Can't run pressure advance g-code:

        Do post your config to get it checked before trying to print with the new firmware. There are a few significant changes. If only I had written them down.

        I posted my config.g files in my firmware post (https://forum.duet3d.com/topic/31263/idiot-s-guide-to-upgrading-duet-firmware/10) and am looking at the differences. There are a number of them and I'm gathering that sorting them out will be the trickiest part of upgrading firmware; the other steps seem easy.

        Custom cartesian dinosaur machine; it's a tank but just works so I just keep tweaking it. / Duet Ethernet 1.02 or later / RepRapFirmware for Duet 2 WiFi/Ethernet: 3.4.5 / SuperSlicer

        tasundefined 1 Reply Last reply Reply Quote 0
        • tasundefined
          tas @gbartsch
          last edited by

          @gbartsch I have set my max E jerk to 3000. I also had it at 300 to begin. I have an E3D V6 on a Creality Ender 5 Pro x-carriage with an LGX Lite bowden setup.

          Setting the max to a high value does not force it to use that setting it simply allows it to go that high if the gcode commands require it.

          This should not affect the X and Y. The M566 parameters are per axis so E only affects extruder jerk. It shouldn't make your printer shake.

          It would be great if that change can solve your problem.

          gbartschundefined 1 Reply Last reply Reply Quote 0
          • tasundefined
            tas @gbartsch
            last edited by tas

            @gbartsch Funny! We were posting at the same time. I saw your other post and thought I would add a note about the jerk setting in this one as I think it is more relevant to this topic.

            I did see your config files and will let the experts have a look. It should be very straight forward. Just go through the steps in order as @Phaedrux laid out above.

            It takes a while but it is not difficult because I was able to do it.

            gbartschundefined 1 Reply Last reply Reply Quote 0
            • gbartschundefined
              gbartsch @tas
              last edited by

              @tas said in Can't run pressure advance g-code:

              You do have to do it in the order he suggested.

              His explanation was very clear and if those steps - combined with rebuilding the config.g file - are most of what is involved in upgrading the firmware I'm feeling more confident about it.

              Custom cartesian dinosaur machine; it's a tank but just works so I just keep tweaking it. / Duet Ethernet 1.02 or later / RepRapFirmware for Duet 2 WiFi/Ethernet: 3.4.5 / SuperSlicer

              1 Reply Last reply Reply Quote 0
              • gbartschundefined
                gbartsch @tas
                last edited by

                @tas said in Can't run pressure advance g-code:

                I did see your config files and will let the experts have a look. It should be very straight forward. Just go through the steps in order as @Phaedrux laid out above. It takes a while but it is not difficult because I was able to do it.

                I really appreciate everyone's help. Much of this doesn't seem to bad if people with knowledge guide me along. I'm hoping I can understand the overall schema through this and be able to keep up from here on.

                Custom cartesian dinosaur machine; it's a tank but just works so I just keep tweaking it. / Duet Ethernet 1.02 or later / RepRapFirmware for Duet 2 WiFi/Ethernet: 3.4.5 / SuperSlicer

                1 Reply Last reply Reply Quote 0
                • gbartschundefined
                  gbartsch @tas
                  last edited by

                  @tas said in Can't run pressure advance g-code:

                  I have set my max E jerk to 3000. I also had it at 300 to begin. I have an E3D V6 on a Creality Ender 5 Pro x-carriage with an LGX Lite bowden setup. Setting the max to a high value does not force it to use that setting it simply allows it to go that high if the gcode commands require it. This should not affect the X and Y. The M566 parameters are per axis so E only affects extruder jerk. It shouldn't make your printer shake.

                  I changed my max E jerk to 3000 but there was no change to the print. I'm thinking the best thing to do now is upgrade the firmware and revisit this issue after. I'm quite at a loss here.

                  Custom cartesian dinosaur machine; it's a tank but just works so I just keep tweaking it. / Duet Ethernet 1.02 or later / RepRapFirmware for Duet 2 WiFi/Ethernet: 3.4.5 / SuperSlicer

                  1 Reply Last reply Reply Quote 0
                  • gbartschundefined gbartsch referenced this topic
                  • gbartschundefined
                    gbartsch
                    last edited by

                    Well I give up trying to run the code in my slicer; I can't get it to work in either PrusaSlicer or SuperSlicer.

                    But I could send commands from the console and pressure advance does work when added to my filament g-code so I'm happy. 😄

                    I can say it wasn't working for a long time because the extruder stepper shaft moves differently now than before; I can see the stepper rotation indicator move with slight twitches at the end of each path.

                    Thank you everyone for your suggestions!

                    Custom cartesian dinosaur machine; it's a tank but just works so I just keep tweaking it. / Duet Ethernet 1.02 or later / RepRapFirmware for Duet 2 WiFi/Ethernet: 3.4.5 / SuperSlicer

                    droftartsundefined 1 Reply Last reply Reply Quote 1
                    • droftartsundefined
                      droftarts administrators @gbartsch
                      last edited by

                      @gbartsch The code in your first post is 'meta' Gcode. This was introduced into RRF with RRF 3.01, and has been extended with each new version. It won't work on RRF 2.x. See https://docs.duet3d.com/User_manual/Reference/Gcode_meta_commands

                      I expect a low extruder jerk was stopping it from working when sending the commands directly.

                      If you don't want to update to RRF 3.x, I would recommend updating from 2.04 to the final 2.x version, 2.05.1, just for bug fixes - you won't have to change your config then. Also, you can always revert back to 2.x if you find 3.x too troublesome to get working. Just make sure you do a backup of your 2.x config!

                      Ian

                      Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                      gbartschundefined 1 Reply Last reply Reply Quote 0
                      • gbartschundefined
                        gbartsch @droftarts
                        last edited by

                        @droftarts said in Can't run pressure advance g-code:

                        I expect a low extruder jerk was stopping it from working when sending the commands directly.

                        Thank you.

                        That sounds very likely given pressure advance is working now. In my post here (https://forum.duet3d.com/topic/31263/idiot-s-guide-to-upgrading-duet-firmware/68?_=1675395364890) everyone helped me upgrade to RRF 3.4.5 and everything is working now and I'm the happiest person ever!

                        I'll read up on the 'meta' Gcode. I'm not sure why that isn’t working for me. But pressure advance is being applied to my prints at least.

                        Custom cartesian dinosaur machine; it's a tank but just works so I just keep tweaking it. / Duet Ethernet 1.02 or later / RepRapFirmware for Duet 2 WiFi/Ethernet: 3.4.5 / SuperSlicer

                        droftartsundefined 1 Reply Last reply Reply Quote 0
                        • droftartsundefined
                          droftarts administrators @gbartsch
                          last edited by

                          @gbartsch Sorry, I think I'm mistaken; the code in your first post should run in PrusaSlicer, and on each layer where it matches the condition, PrusaSlicer should put the code in. It is not meta Gcode. So something may have changed in PrusaSlicer that stops the code working. What version of PrusaSlicer are you using? Also, check the Gcode that PrusaSlicer generates, looking for M572 commands.

                          Ian

                          Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                          gbartschundefined 1 Reply Last reply Reply Quote 0
                          • gbartschundefined
                            gbartsch @droftarts
                            last edited by

                            @droftarts said in Can't run pressure advance g-code:

                            What version of PrusaSlicer are you using? Also, check the Gcode that PrusaSlicer generates, looking for M572 commands.

                            I'm using PrusaSlicer 2.5.0 and SuperSlicer 2.4. The M572 commands are indeed in the G-code. I'm running a print again with the code dutifully in place but crickets; nothing.

                            Custom cartesian dinosaur machine; it's a tank but just works so I just keep tweaking it. / Duet Ethernet 1.02 or later / RepRapFirmware for Duet 2 WiFi/Ethernet: 3.4.5 / SuperSlicer

                            droftartsundefined 1 Reply Last reply Reply Quote 0
                            • droftartsundefined
                              droftarts administrators @gbartsch
                              last edited by droftarts

                              @gbartsch It's the D parameter in the M572 command. You don't have four extruders, do you? Because you have set it to D3. Which would be after D0, D1 and D2. I think you have put the driver number (ie where X=0 Y=1 Z=2 and E=3). The D parameter refers to the extruder number, so D0 is the first extruder.

                              Edit: I see this was pointed out earlier by @tas. Check you are using Gcode with D0 rather than D3.

                              Ian

                              Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

                              gbartschundefined 1 Reply Last reply Reply Quote 0
                              • gbartschundefined
                                gbartsch @droftarts
                                last edited by

                                @droftarts said in Can't run pressure advance g-code:

                                Check you are using Gcode with D0 rather than D3.

                                Thanks. I have been using D0 after @tas clarified that.

                                At this point I've changed so many variables and settings, and used different slicers, etc., that I don't know what wasn't working, BUT now that code runs through the slicer and is working.

                                I ran a coarse test and then narrowed the range down for a second test with finer ranges and now have a pressure advance value that's working well with PET-G. I'll run the test again with PLA and I'm really eager to see how all my machine's new settings with work with Ninjaflex. I really can't believe how much pressure advance is helping already.

                                I have a direct drive extruder (homemade with 78mm from the center of the drive gear to the nozzle tip) but seem to require quite a high pressure advance of S0.650 (2.85mm PET-G). Here's a picture (sorry for the poor quality).

                                pa.jpeg

                                Even though I don't know why it wasn't working, it is now, so I can say the issue is solved. Thanks a lot to everyone who helped with this!

                                Custom cartesian dinosaur machine; it's a tank but just works so I just keep tweaking it. / Duet Ethernet 1.02 or later / RepRapFirmware for Duet 2 WiFi/Ethernet: 3.4.5 / SuperSlicer

                                1 Reply Last reply Reply Quote 1
                                • Phaedruxundefined Phaedrux marked this topic as a question
                                • Phaedruxundefined Phaedrux has marked this topic as solved
                                • First post
                                  Last post
                                Unless otherwise noted, all forum content is licensed under CC-BY-SA