M592 activation issue
-
Right now I am trying to calibrate the dynamic nonlinear extrusion (M592).
-> https://forum.duet3d.com/topic/6015/guide-for-finding-the-values-for-m592-non-linear-extrusion/5
The result of the table from the thread is the following command: M592 D0 A-0.11 B0.04 L2
=> Should result in an effective correction of 4% at 11.6 mm/s.
Whereby with L2 any limitation should be switched off.For test purposes, I have tried values up to 0.2 for M592 Bxxx and have the impression that nothing is happening at all.
For testing I use the following command: G91 G1 X-100 E100 F700
However, I cannot see any difference between
G91 G1 X-100 E100 F700 (due to movement with correction) and G91 G1 E100 F700Does G592 need to be activated elsewhere?
M115
FIRMWARE_NAME: RepRapFirmware for Duet 3 MB6HC FIRMWARE_VERSION: 3.4.0rc1 ELECTRONICS: Duet 3 MB6HC v1.01 or later FIRMWARE_DATE: 2022-02-09 10:28:13 -
@romeofox said in M592 activation issue:
However, I cannot see any difference between
How are you comparing? The effect should be quite subtle regardless.
-
@phaedrux said in M592 activation issue:
How are you comparing? The effect should be quite subtle regardless.
I measure the filament feed on the feed side of the extruder by marking the filament with a pencil and steel ruler and extruding 100mm. At speeds below 5mm/s, the feed is exactly 100mm. At 11.7mm/s =700mm/min 4% are missing = only 96mm are fed.
I would have expected 4%/4mm to be easily compensated.
-
What is the volumetric rate that you are trying to push? Non-linear extrusion tries to compensate, but it can't push unmelted plastic.
-
@phaedrux said in M592 activation issue:
ate, but it can't push unmelted plastic.
At 1.75mm filament, that's 28.2mm³ per second with a Dragon High Flow Hotend and ABS+.
The extruder starts to slip through individual teeth between 900 and 1000 mm/min. Therefore, I assume that the 4% should actually still be possible at 700mm/min.
-
As a simple test, does increasing the hotend temp allow for more expected results?
-
I tried today (+30°C) same behavior. From the answers I understand that it should have worked with the command M592 D0 A-0.11 B0.04 L2 alone, right?
-
@romeofox said in M592 activation issue:
I understand that it should have worked with the command M592 D0 A-0.11 B0.04 L2 alone, right?
I can't say that for certain.
If you use this technique for finding your volumetric flow rate, what do you get?
https://duet3d.dozuki.com/Guide/Ender+3+Pro+and+Duet+Maestro+Guide+Part+4:+Calibration/40#s177
-
@romeofox to test that M592 is working I suggest you disconnect the hot end from the extruder so that there is no significant back pressure, and then measure amount extruded vs. speed.
-
@dc42 said in M592 activation issue:
@romeofox to test that M592 is working I suggest you disconnect the hot end from the extruder so that there is no significant back pressure, and then measure amount extruded vs. speed.
Sorry for recycling this thread but I discovered the same behaviour since 3.4.
Our method to calibrate nonlinear extrusion was
- heat up the nozzole to working temperature
- mark filament at 120mm
- extrude with G1 E100 F30 (same as e-step calibration) and mesaure
- repeat steps 2. and 3. for F60,90,120,150,180
- calculate A and B
- set A and B values
- check result with mark 120mm, extrude G91 G1 X100 E100 F30 - F180 measure and compare
- if not ok adapt A and B and re-run steps 6. - 8.
But since 3.4 step 7. is not working anymore - there is no difference in the values measured in step 3. - 4. and 7 - they are just about the same. upto 3.2.2 we had a difference upto 10%. We cannot use 3.3 because it will flood us with errors.
I looked at the code and found that you @dc42 did alot of work in that area (InputShaping).
We use an CoreXY with Duet2 an RRF 3.4. -
@RomeoFox @timschneider I confirm that this is a bug in RRF 3.4. I will fix it in RRF 3.4.1.
Temporary workaround: for Duet 3 multiply the nonlinear extrusion A coefficient by 750000 and the B coefficient by (750000)^2. For Duet 2 use 937500 in place of 750000.
Thanks @timschneider for identifying the change that introduced the bug.