Can't run pressure advance g-code
-
@gbartsch No reason to update firmware if you're still happy with how it's running. But if you do decide to give it a try, start a new thread and we'll be happy to help you along.
If the script isn't doing it for you I would try the living tuning method. Plop a cube down in the slicer and stretch it out in one axis so you have a long flat rectangle with rectilinear infill. Then start the print and manually send the gcode command to enable PA and send a new value to increase it and see how it changes.
Unless you have a very long bowden setup even a small amount of PA is better than no PA. Somewhere in the 0.02 to 0.04 range is probably going to be usable on a direct drive or short bowden.
-
@Phaedrux Thanks a lot! I'd really appreciate help with upgrading the firmware. I'll look into the procedure and then likely make a post with some questions.
I printed this shape at 60mm/sec and manually sent codes from M572 D0 S0.025 to M572 D0 S0.085. I don't see any difference in the seam.
-
@gbartsch said in Can't run pressure advance g-code:
I'll look into the procedure
this is what I usually tell people.
If you still have access to DWC. Upload these zip files, one at a time in the system tab. Don't extract them first. Reboot after each. Use M115 in the gcode console to verify the firmware has been applied.
https://github.com/Duet3D/RepRapFirmware/releases/download/2.05.1/Duet2Firmware-2.05.1.zip
https://github.com/Duet3D/RepRapFirmware/releases/download/3.0/Duet2and3Firmware-3.0.zip
https://github.com/Duet3D/RepRapFirmware/releases/download/3.3/Duet2and3Firmware-3.3.zip
https://github.com/Duet3D/RepRapFirmware/releases/download/3.4.5/Duet2and3Firmware-3.4.5.zipThat will get your firmware and DWC up to date.
You can see the change logs here:
https://github.com/Duet3D/RepRapFirmware/wiki/Changelog-RRF-3.xFor your config, might be a good idea to run through the configurator tool and generate a fresh set for RRF3.
https://configtool.reprapfirmware.org/StartBackup your existing config files in the sys folder in case you want to switch back to RRF2. It’s easy to switch back and forth, just upload the zip file for the version you want and then upload your config files.
These documents will come in handy during the conversion.
https://duet3d.dozuki.com/Wiki/RepRapFirmware_3_overview
https://docs.duet3d.com/en/User_manual/RepRapFirmware/Migration_RRF2_to_RRF3
https://docs.duet3d.com/en/User_manual/Reference/Gcodes -
@Phaedrux Thanks! I'll read the sources you suggest.
So this is incremental upgrade method is used because the firmware is so old? But you don't recommend I do that?
I should use the configurator and skip the above steps?
I'm wondering if I could use a file compare tool (I use Beyond Compare) to look inside new versus old files? That might help with finding settings that need to move over?
I have a disability so will have to wait for someone to help me remove/re-insert the MicroSD card so I can backup my current config.
-
Uploading the zip files is usually a pretty quick and easy way to get up to date if you already have a working board. The fallback would be to use bossa to flash the firmware directly, but then you also have to manually place the correct files and update the DWC files manually. The zip file upload just takes care of everything for you.
You would still need to use the config tool to generate a new config file set that would work with RRF3. You would need to know the details of your printer setup before hand to make it easier. If you uploaded your current files it would be possible to provide you with a basic config set.
You don't need to remove the SD card to create a backup of the config files on the card since you can download them from DWC, but having a full copy of the card contents is always a good idea anyway.
-
@Phaedrux Ah! OK, this is starting to make a little sense. Now I am getting intrigued and would like to upgrade the firmware so my machine would the have the newest version of firmware and DWC and learn to how to do it.
Because this is off-topic from the pressure advance question should I do as you suggested and start a new thread? I really appreciate you being willing to help me. I'm sure if I can learn, anyone could and such a thread might be useful to others.
-
Sure you can start a new thread. Include your config.g and homing files. Go through the config tool and try and create a new config set and include that as well and we can compare to see how far off it is.
-
@Phaedrux Thank you! I will get started soon.
-
@gbartsch My turn to apologize for being tardy.
Your sample prints definitely have no pressure advance happening at all.
If your extruder jerk setting is too low it can limit Pressure Advance ability to function. Maybe that is what is happening.
Check the 'Side effects of Pressure Advance' section at the bottom of the page.
Pressure Advance was working for 2.04 as far as I can remember but I still think it is worth upgrading as @Phaedrux suggested. You do have to do it in the order he suggested.
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.
-
@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)
-
@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.
-
@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.
-
@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.
-
@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.
-
@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.
-
@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.
-
-
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!
-
@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
-
@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.
-
@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