Dual color print problems

  • Hello, I recently upgraded my machine to the Prometheus dual extrusion system. I'm currently stuck. I cannot get dual extrusion to work properly. The machine worked properly when using only one filament. When attempting dual extrusion test prints, the machine will stop and stay in one spot when the filament is supposed to switch. The machine will then retract the filament and extrude the other filament slightly only to retract it again. It will stay in the same spot and do this until I manually stop the print. I am using Cura to slice. I know this is vague, but I'm not sure what details would be helpful for me to provide.

    I appreciate any help.

  • @ian-tech So a few things would help. Can you post your config file? Also, it sounds like gcode is not being generated properly since it sounds like the duet is ignoring more of the gcode and just initiating a tool change routine. Dual color printing is tricky and most of the time the problem is related to messing up the temperature with the nozzle (ie the nozzle extruding isn't the one thats hot).

    one simple test will be to extrude something from both nozzles (or single nozzle if its like the cyclops). make sure the temperature adjusts as you would expect and the correct extruder is running.

  • Here is my config.g:

    ; Configuration file for Duet WiFi (firmware version 1.17)
    ; executed by the firmware on start-up
    ; generated by RepRapFirmware Configuration Tool on Fri Apr 28 2017 16:37:23 GMT-0500 (Central Daylight Time)

    ; General preferences
    M111 S0 ; Debugging off
    G21 ; Work in millimetres
    G90 ; Send absolute coordinates...
    M82 ; ...but relative extruder moves
    M555 P2 ; Set firmware compatibility to look like Marlin

    ;Tool settings
    M563 P0 D4 H1
    ;Dual z axis
    M584 X0 Y1 Z2:3 U3 E4:5

    M667 S1 ; Select CoreXY mode
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X275 Y285 Z245 S0 ; Set axis maxima

    ; Endstops
    M574 X1 Y1 Z2 U2 S0 ; Define active low and unused microswitches
    M558 P5 X0 Y0 Z1 H5 F120 T6000 ; Set Z Probe to type Switch or Digital output where Z probe connector is used. Used for z only.
    G31 P50 X0 Y-20 Z2.12 ; Set Z probe trigger value, offset and trigger height
    M557 X15:260 Y15:270 S30 ; Define mesh grid

    ; Drives
    M569 P0 S1 ; Drive 0 goes forwards
    M569 P1 S1 ; Drive 1 goes forwards
    M569 P2 S0 ; Drive 2 goes backwards
    M569 P3 S0 ; Drive 3 goes backwards
    M569 P4 S0 ; Drive 4 goes backwards
    M569 P5 S1 ; Drive 5 goes forwards
    M350 X16 Y16 Z16 U16 E16:16 I1 ; Configure microstepping with interpolation
    M92 X160 Y160 Z800 U800 E500:500 ; Set steps per mm
    M566 X900 Y900 Z12 U12 E900:900 ; Set maximum instantaneous speed changes (mm/min)
    M203 X6000 Y6000 Z600 U600 E3600:3600 ; Set maximum speeds (mm/min)
    M201 X500 Y500 Z250 U250 E250:250 ; Set accelerations (mm/s^2)
    M906 X800 Y800 Z800 U800 E1200:1200 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ; Heaters
    M307 H0
    M307 H7 A-1 C-1 D-1
    M143 H0 S100; Set heated bed temperature to 100
    M143 H1 S260 ; Set maximum hotend heater temperature to 260C
    M305 P1 T100000 B4725 C7.060000e-8 R4700 ; Set thermistor + ADC parameters for heater 1
    M305 P0 T100000 B4408 C7.269774e-8 R4700 ; set heated bed thermistor

    ; Tools
    M563 P0 D0 H1 ; 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
    M563 P1 D1 H1 ; Define tool 1
    G10 P1 X0 Y0 Z0 ; Set tool 1 axis offsets
    G10 P1 R0 S0 ; Set initial tool 1 active and standby temperature to 0C

    ; Network
    M550 PIanCorexy ; Set machine name
    M551 PIcorexy ; Set password ;
    M552 S1 ; Enable network and acquire dynamic address via DHCP

    ; Fans
    M106 P0 S0.3 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P1 S1 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off
    M106 P2 S1 I0 F500 H-1 ; Set fan 2 value, PWM signal inversion and frequency. Thermostatic control is turned off

    ;Zprobe bltouch

    ; Custom settings are not configured

    I can also tell you that the system I use only has one hot end. Also it appears to extrude fine with each extruder when not in a print.

  • administrators

    Do you have any commands in the tool change files tfree0.g, tpre0.g, tpost0.g and the same for tool 1?

    It would also help to see the code that Cura has generated around a place where a tool change occurs.

  • I looked at the files with the 0 the end of name, and they are all empty. I'm not aware of any for tool 1. Also FYI the dual extrusion system uses only one hot end/nozzle.

    Here is the Cura tool change code:
    G92 E0
    G91 ; relative positioning
    G1 E18 F540 ; 9mm/s purge
    G1 E-20 F3000 ; 50mm/s retract
    G4 P2500 ; 2.5s cooling period
    G1 E-140 F3000 ; 50mm/s long retract
    G92 E0
    G91 ; relative positioning
    G1 E100 F3000 ; 50mm/s feed
    G1 E50 F1500 ; 25mm/s feed
    G1 E5 F300 ; 5mm/s feed
    M109 S205
    M104 T0 S180

  • administrators

    @ian-tech said in Dual color print problems:

    M109 S205
    M104 T0 S180

    There is a problem right there. Cura is commanding the currently-selected tool (which is Tool 1) to 205C and then commanding Tool 0 to 180C. But you have only one heater. You need to configure Cura not to reduce the temperature of the inactive tool.

  • @dc42 So I fixed it so now tool 0 is set to the same temperature, but still no dice.

  • administrators

    @ian-tech is cura still waiting commanding and waiting for the temperature changes?

  • @ian-tech

    As you only have one heater, try putting this in your start gcode

    G10 P0 S205 R205
    G10 P1 S205 R205 (or whatever temperature you want to print at). That'll set the active and standby temperatures the same so you can instantly switch between tools.

    Then make sure that Cura does nothing other than select a tool by putting in a "Tn" command (where "n" will be either 0 or 1). Oh, and make sure that there is nothing in your tool change files - at least for now.