Volumetric extrusion = massive overextrusion!



  • I have a CoreXY-Printer with duet ethernet and use volumetric extrusion because with Cura and g-code flavor setting "marlin (volumetric)" I can use the firmware retraction feature of RRF (3.01-RC3).

    But even though I configured...
    M200 D1.75 ; set all extruder filament diameters to 1.75mm
    ... I get an overextrusion of more than 2 times the wall thickness setting (0.4 - actual thickness: about 1mm)

    My e-steps are configured correctly and now I don't know anymore where to look for the error.

    Here my duet config.g:

    ; Configuration file for Duet WiFi (firmware version 3)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.8 on Sat Mar 14 2020 22:42:45 GMT+0100 (Mitteleuropäische Normalzeit)
    
    ; General preferences
    M111 S1                                                ; Debugging on/off 0/1
    G21                                                    ; Work in millimetres
    G90                                                    ; send absolute coordinates...
    ;M83                                                   ; ...but relative extruder moves, oder? NO: https://duet3d.com/forum/thread.php?id=1190, https://betrue3d.dk/category/duet-wifi/page/2/
    M550 P"Davids Ender-4"                                 ; set printer name
    M667 S1                                                ; select CoreXY mode
    
    ; Network
    M552 P0.0.0.0 S1                                       ; enable network and acquire dynamic address via DHCP
    M586 P0 S1                                             ; enable HTTP
    M586 P1 S0                                             ; disable FTP
    M586 P2 S0                                             ; disable Telnet
    
    ; Drives
    M569 P0 S1                                             ; physical drive 0 goes backwards
    M569 P1 S1                                             ; physical drive 1 goes backwards
    M569 P2 S0                                             ; physical drive 2 goes forwards
    M569 P3 S0                                             ; physical drive 3 goes forwards
    M584 X0 Y1 Z2 E3                                       ; set drive mapping
    M350 X16 Y16 Z16 E16 I1                                ; configure microstepping with interpolation
    M92 X80.24 Y80.24 Z400.00 E96.295                      ; set steps per mm
    M566 X900.00 Y900.00 Z20.00 E600.00                    ; set maximum instantaneous speed changes (mm/min)
    M203 X18000.00 Y18000.00 Z480.00 E1200.00              ; set maximum speeds (mm/min)
    M201 X1000.00 Y1000.00 Z100.00 E250.00                 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z500 E800 I50                           ; set motor currents (mA) and motor idle factor in per cent
    M84 S30                                                ; Set idle timeout
    
    ; Axis Limits
    M208 X-4 Y-7 Z0 S1                                     ; set axis minima
    M208 X215 Y215 Z300 S0                                 ; set axis maxima
    
    ; Endstops
    M574 X1 S1 P"!xstop"                                   ; configure active-high endstop for low end on X via pin xstop
    M574 Y1 S1 P"ystop"                                    ; configure active-high endstop for low end on Y via pin ystop
    M574 Z1 S1 P"zstop"                                     ; configure active-high endstop for low end on Z via pin zstop
    
    ; Z-Probe
    M558 P0 H2 F120 T7200                                  ; disable Z probe but set dive height, probe speed and travel speed
    M557 X15:200 Y15:175 S20                                ; define mesh grid
    
    ; Heaters
    M308 S0 P"bedtemp" Y"thermistor" T100000 B4092         ; configure sensor 0 as thermistor on pin bedtemp
    M950 H0 C"bedheat" T0                                  ; create bed heater output on bedheat and map it to sensor 0
    M143 H0 S120                                           ; set temperature limit for heater 0 to 120C
    M307 H0 B0 S1.00                                       ; disable bang-bang mode for the bed heater and set PWM limit
    M140 H0                                                ; map heated bed to heater 0
    M308 S1 P"e0temp" Y"thermistor" T100000 B4725 C7.06e-8 ; configure sensor 1 as thermistor on pin e0temp
    M950 H1 C"e0heat" T1                                   ; create nozzle heater output on e0heat and map it to sensor 1
    M143 H1 S285                                           ; set temperature limit for heater 1 to 285C
    M307 H1 B0 S1.00                                       ; disable bang-bang mode for heater  and set PWM limit
    
    ; Fans
    M950 F0 C"fan0" Q500                                   ; create fan 0 on pin fan0 and set its frequency
    M106 P0 C"Part-Fan" S0 H-1                             ; set fan 0 name and value. Thermostatic control is turned off
    M950 F1 C"fan1" Q500                                   ; create fan 1 on pin fan1 and set its frequency
    M106 P1 C"Hotend-Fan" S1 H1 T45                        ; set fan 1 name and value. Thermostatic control is turned on
    M950 F2 C"fan2" Q500                                   ; create fan 2 on pin fan2 and set its frequency
    M106 P2 S0 H1 T45                                      ; set fan 2 value. Thermostatic control is turned on
    
    ; Tools
    M563 P0 D0 H1 F0                                       ; define tool 0
    G10 P0 X0 Y0 Z0                                        ; set tool 0 axis offsets
    G10 P0 R0 S0                                           ; set initial tool 0 active and standby temperatures to 0C
    M200 D1.75                                             ; set all extruder filament diameters to 1.75mm
    
    ; Custom settings:
    M572 D0 S0.3
    
    ; Miscellaneous
    T0                                                     ; select first tool
    

    And here my Cura "Start G-code":

    G21 ; metric values, G-code flavor Marlin (Volumetric) for Firmware Retraction...
    G90 ; absolute positioning
    M82 ; set extruder to absolute mode
    G28 ; home all axes
    G1 X0 Y10 Z0.5 F3000 ; get ready to prime
    G92 E0 ; reset extrusion distance
    G1 X160 E20 F600 ; prime nozzle
    

    May anyone can guide me to a solution for this problem.
    Thank you.


  • Moderator

    There's no reason you can't use firmware retraction when selecting reprap flavour in Cura. I do.



  • I've never used volumetric extrusion before, but do you have to set the E steps per mm to be in volumetric units?



  • @Phaedrux said in Volumetric extrusion = massive overextrusion!:

    There's no reason you can't use firmware retraction when selecting reprap flavour in Cura. I do.

    I can't find a setting in cura that outputs G10/G11 when g-code-flavour reprap is set. Could you tell me where to set this option?

    @bot said in Volumetric extrusion = massive overextrusion!:

    I've never used volumetric extrusion before, but do you have to set the E steps per mm to be in volumetric units?

    Can't imagine this is the case...



  • Yeah, that wouldn't make sense because it would negate the need for the filament diameter setting.


  • Moderator

    You'll need the Printer Settings plugin from the Cura plugin marketplace. That will add another menu in the settings bar. That's where you'll find the option for firmware retraction. I should have remembered that earlier. Sorry.


Log in to reply