Reduced quality prints from Marlin to Duet 2 Wifi
-
For PID tuning you will either need to use m500 to save the results to config-override and then add m501 to the end of config.g to load those values, or you will need to copy them from config-override into config for them to persist between reboots.
-
You may want to compare your thermistor values to those suggested by E3D to ensure they are correct for the semitek. Your temps could be quite a bit off from what you had in Marlin.
-
Common reasons for poor print quality when changing to a Duet are:
- Printing at different temperatures than before. This can be because a you have set the wrong thermistor in your config.g file, or you were using the wrong thermistor table in Marlin. Either way, the temperature setting that worked well before no longer works well, because the actual temperatures are different.
- Not tuning the bed heater. If you don't tune the bed heater, RRF defaults to using bang-bang control for the bed heat instead of PID. This can give rise to artefacts, typically layers not lining up well.
- Not using the same acceleration, maximum speed or jerk settings in RRF that you used in Marlin. The Marlin settings you were using may be as compiled into the firmware or as written to EEPROM.
- Not using the same motor settings (motor current, and driver mode if applicable).
Gaps in wall suggest that the extruder may be skipping steps. This could be because the extrusion temperature is lower than before, or the extruder motor current is lower.
-
@dc42 said in Reduced quality prints from Marlin to Duet 2 Wifi:
Common reasons for poor print quality when changing to a Duet are:
- Printing at different temperatures than before. This can be because a you have set the wrong thermistor in your config.g file, or you were using the wrong thermistor table in Marlin. Either way, the temperature setting that worked well before no longer works well, because the actual temperatures are different.
- Not tuning the bed heater. If you don't tune the bed heater, RRF defaults to using bang-bang control for the bed heat instead of PID. This can give rise to artefacts, typically layers not lining up well.
- Not using the same acceleration, maximum speed or jerk settings in RRF that you used in Marlin. The Marlin settings you were using may be as compiled into the firmware or as written to EEPROM.
- Not using the same motor settings (motor current, and driver mode if applicable).
Gaps in wall suggest that the extruder may be skipping steps. This could be because the extrusion temperature is lower than before, or the extruder motor current is lower.
Thank you @dc42. I've run an M303 tune to my usual temperatures, saving with a M500. I've set the thermister values as recommended by E3D and they report true in config.g.
Bed heating is still on bang-bang, I didn't consider PID as a setting, but they prints adhere very well, perhaps too well. I'll try out other settings.
I've increased the extruder amperage from 0.8A to 1.2A, which is what my X and Y are set to, to see if it helps. Currently I've seen a considerable improvement in past prints, however it's still not great in some areas. I just printed a plant pot and it's night and day compared to my past prints, but you can see despite the perfect looking top layer, there is a gap between the walls and infill on various other parts. I'm currently printing a Benchy to see if I can improve.
Here's some shots of the plant pot, printed in Iron Grey 3D Filaprint PLA, 205/55 temps at 60mm/s.
Front
Rear
Inside walls are rough, showing stringing.
Base
-
Did you add M501 at the end of your config.g?
You need that to load the settings saved with M500You could also try to decrease your jerk settings a little. Jerk in Marlin works different than in RepRapFirmware.
Your values are
M566 X1200.00 Y1200.00 Z24.00 E300.00 ; Set maximum instantaneous speed changes (mm/min)
M201 X500.00 Y500.00 Z100.00 E5000.00 ; Set accelerations (mm/s^2)I would try to use more cautios paramters and bump them up after successful prints.
M566 X600.00 Y600.00 Z24.00 E300.00 ; Set maximum instantaneous speed changes (mm/min)
M201 X500.00 Y500.00 Z50.00 E3000.00 ; Set accelerations (mm/s^2)More like this. Give it a try.
-
@fl630 said in Reduced quality prints from Marlin to Duet 2 Wifi:
Bed heating is still on bang-bang, I didn't consider PID as a setting, but they prints adhere very well, perhaps too well. I'll try out other settings.
I suggest you tune the bed heater so that you can use PID. the images you posted suggest that the layers don't line up very well.
-
Extruder jerk is too low...that should be 1000+ range at least. On my Taz6 which I converted to the Duet and a bondtech extruder these are my values. The taz has a heavy moving bed so I set my x and y fairly conservative.
M566 X500.00 Y500.00 Z150.00 E1500.00 ; Set maximum instantaneous speed changes (mm/min)
M203 X8400.00 Y8400.00 Z250.00 E10000.00 ; Set maximum speeds (mm/min)
M201 X1000.00 Y1000.00 Z250.00 E1500.00 ; Set accelerations (mm/s^2)I would also work on testing out pressure advance looking at your prints. I have a feeling that getting the bed in PID mode as dc42 recommended along with getting the extruder jerk and pressure advance going you will see big improvements.
As stated, just doing M500 like in marlin doesn't put the tuning values into use.....you have to either manually enter them into your config.g or put the M501 in your config.g so they are loaded from the config-overrride.g file which is created when you do an M500.
-
Thanks all. I reduced jerk settings on X and Y and the latest benchy has come out the best yet. Ringing around its hull has reduced, not quite perfect, but considering where I was before I started this thread it's chalk and cheese. @JamesM I'll try the increase on the E motor, I've set it to 1500 and will try it out. I'm using a bowden setup though if that makes any difference.
I've set up the PID tuned heated bed, using the code M307 H0 B0 S1.0, which the reprap configuration gives me (the only difference I can see with my current config.g). The thermistor values however I'm not sure what to set. The Creality thermistor is a "100K ohm NTC 3950FB Thermistor". Would you just use the standard M305 P0 T100000 B4138 R4700 values? Or does the "3950FB" relate to the B in the above code?
Thanks again for all of your help, I'm starting to enjoy my printer again!
-
I have those 3950 thermistors on my taz6 for both the bed and the stock hexagon hotend when I use it and the values I use for them are what you listed...
M305 P0 T100000 B4138 R4700
With the bowden it will take a bit to dial in the pressure advance but it's definitely worth it. It's been a long time since my Ender 3 had a bowden setup so I don't remember the values I used to use. I've got a direct drive Bondtech clone with an E3D V6 on mine and direct drive I'm using values between .06 - .08 depending on the type of filament. I think it may have been .6 to .9 range when it was bowden.
When using pressure advance if you have a low extruder jerk, your print will slow down a lot when coming to the end of a line especially with a bowden setup.
-
@JamesM I'm back on this after being away on work away from my printer.
I've enabled pressure advance with 0.1 according to the Duet website, however found this bit of code https://pastebin.com/1jD64HgH
Has anyone tried this calibration? I'm not amazing at reading Gcode, does it sort it all itself?
Thanks!
-
That looks like a modified version of an old calibration test for Marlins linear advance. It draws a series of lines back and forth with varying amounts of pressure advance and you're supposed to find the line that gives the most even start and stop.
I haven't had much luck with it, as all the lines look basically the same, but I don't use much PA to begin with on a direct drive. For a bowden system it may be more apparent. There's also the issue that it's only a single first layer so it's likely to be squished down a bit which isn't a great real world test.
I think a better way to test would be to print a slightly more complex model with some height and varying the PA value every 10 layers or so, then you can get a better idea of the changes as the model progresses. You can either insert the PA command into the gcode file, or issue it manually from the gcode console.
If you have a PAnelDue, something like this can be very handy for live tuning. https://forum.duet3d.com/topic/6181/tuning-macros-menus-accel-jerk-retraction-pressure-advance
There's also this script for trying to find a good PA value.
https://forum.duet3d.com/topic/6698/pressure-advance-calibration