A Color 3D Benchy!



  • FINALLY!! I have been able to print a color 3D benchy using Repetier Host to assemble the parts and used a prime tower.

    This is a 3 part post..

    I have a diamond hotend, 12 tools defined (0 - 11) with different mixing ratios. For some reason it seems tool 11 (M563 P10 D0:1:2 H1) has disappeared as the color on the prime tower and the model is missing. Perhaps this is a fluke and will try some tests like printing a test cube with T10.

    See pictures.. How do I attach pictures?

    The second part is notice all the stringy filament everywhere? Is this a retraction setting that may fix? I've been tweaking the firmware retraction and although it is retracting more, it does not seem to help with the fragments all over.

    The third part is, notice HOW TALL it is. lol It is very tall and small.


    My tool config, dont think my config here has changed in quite some time but there has been a firmware change with mixing extruders.

    ; Tool definitions
    M563 P0 D0:1:2 H1 ; Define tool 0 - Cyan
    ;G10 P0 S0 R0 ; Set tool 0 operating and standby temperatures
    G10 P0 S200 R0 ; Set tool 0 operating and standby temperatures
    G10 P0 X0 Y0 ; Set tool 0 axis offsets
    M568 P0 S1 ; Enable mixing for tool 0
    M567 P0 E0.90:0.05:0.05 ; Set mixing ratios for tool 0 (90%,5%,5%)
    T0 ; Select Tool 0
    M109 S0 ; Set temp to 0

    M563 P1 D0:1:2 H1 ; Define tool 1 - Magenta
    ;G10 P1 S0 R0 ; Set tool 1 operating and standby temperatures
    G10 P1 S200 R0 ; Set tool 1 operating and standby temperatures
    G10 P1 X0 Y0 ; Set tool 1 axis offsets
    M568 P1 S1 ; Enable mixing for tool 1
    M567 P1 E0.05:0.90:0.05 ; Set mixing ratios for tool 1 (5%,90%,5%)
    T1 ; Select Tool 1
    M109 S0 ; Set temp to 0

    M563 P2 D0:1:2 H1 ; Define tool 2 - Yellow
    ;G10 P2 S0 R0 ; Set tool 2 operating and standby temperatures
    G10 P2 S200 R0 ; Set tool 2 operating and standby temperatures
    G10 P2 X0 Y0 ; Set tool 2 axis offsets
    M568 P2 S1 ; Enable mixing for tool 2
    M567 P2 E0.05:0.05:0.90 ; Set mixing ratios for tool 2 (5%,5%,90%)
    T2 ; Select Tool 2
    M109 S0 ; Set temp to 0

    M563 P3 D0:1:2 H1 ; Define tool 3 - Orange
    G10 P3 X0 Y0 ; Set tool 3 axis offsets
    G10 P3 S200 R0 ; Set tool 3 operating and standby temperatures
    ;G10 P3 R0 S0 ; Set initial tool 3 active and standby temperatures to 0C
    M568 P3 S1 ; Enable mixing for tool 3
    M567 P3 E0.05:0.51:0.44 ; Orange
    T3 ; Select Tool 3
    M109 S0 ; Set temp to 0

    M563 P4 D0:1:2 H1 ; Define tool 4 - Pink
    G10 P4 X0 Y0 ; Set tool 4 axis offsets
    G10 P4 S200 R0 ; Set tool 4 operating and standby temperatures
    ;G10 P4 R0 S0 ; Set initial tool 4 active and standby temperatures to 0C
    M568 P4 S1 ; Enable mixing for tool 4
    M567 P4 E0.08:0.68:0.24 ; Pink
    T4 ; Select Tool 4
    M109 S0 ; Set temp to 0

    M563 P5 D0:1:2 H1 ; Define tool 5 - Yellow-Orange
    G10 P5 X0 Y0 ; Set tool 5 axis offsets
    G10 P5 S200 R0 ; Set tool 5 operating and standby temperatures
    ;G10 P5 R0 S0 ; Set initial tool 5 active and standby temperatures to 0C
    M568 P5 S1 ; Enable mixing for tool 5
    M567 P5 E0.08:0.24:0.68 ; Yellow-Orange
    T5 ; Select Tool 5
    M109 S0 ; Set temp to 0

    M563 P6 D0:1:2 H1 ; Define tool 6 - Purple
    G10 P6 X0 Y0 ; Set tool 6 axis offsets
    G10 P6 S200 R0 ; Set tool 6 operating and standby temperatures
    ;G10 P6 R0 S0 ; Set initial tool 6 active and standby temperatures to 0C
    M568 P6 S1 ; Enable mixing for tool 6
    M567 P6 E0.42:0.53:0.05 ; Purple
    T6 ; Select Tool 6
    M109 S0 ; Set temp to 0

    M563 P7 D0:1:2 H1 ; Define tool 7 -
    G10 P7 X0 Y0 ; Set tool 7 axis offsets
    G10 P7 S200 R0 ; Set tool 7 operating and standby temperatures
    ;G10 P7 R0 S0 ; Set initial tool 7 active and standby temperatures to 0C
    M568 P7 S1 ; Enable mixing for tool 7
    M567 P7 E0.33:0.33:0.34 ;
    T7 ; Select Tool 7
    M109 S0 ; Set temp to 0

    M563 P8 D0:1:2 H1 ; Define tool 8 -
    G10 P8 X0 Y0 ; Set tool 8 axis offsets
    G10 P8 S200 R0 ; Set tool 8 operating and standby temperatures
    ;G10 P8 R0 S0 ; Set initial tool 8 active and standby temperatures to 0C
    M568 P8 S1 ; Enable mixing for tool 8
    M567 P8 E0.24:0.68:0.08 ;
    T8 ; Select Tool 8
    M109 S0 ; Set temp to 0

    M563 P9 D0:1:2 H1 ; Define tool 9 -
    G10 P9 X0 Y0 ; Set tool 9 axis offsets
    G10 P9 S200 R0 ; Set tool 9 operating and standby temperatures
    ;G10 P9 R0 S0 ; Set initial tool 9 active and standby temperatures to 0C
    M568 P9 S1 ; Enable mixing for tool 9
    M567 P9 E0.12:0.45:0.43 ;
    T9 ; Select Tool 9
    M109 S0 ; Set temp to 0

    ; This is the tool that does not seem to print anything..
    M563 P10 D0:1:2 H1 ; Define tool 10 -
    G10 P10 X0 Y0 ; Set tool 10 axis offsets
    G10 P10 S200 R0 ; Set tool 10 operating and standby temperatures
    ;G10 P10 R0 S0 ; Set initial tool 10 active and standby temperatures to 0C
    M568 P10 S1 ; Enable mixing for tool 10
    M567 P10 E0.51:0.05:0.44 ;
    T10 ; Select Tool 10
    M109 S0 ; Set temp to 0

    M563 P11 D0:1:2 H1 ; Define tool 11 -
    G11 P11 X0 Y0 ; Set tool 11 axis offsets
    G10 P11 S200 R0 ; Set tool 11 operating and standby temperatures
    ;G11 P11 R0 S0 ; Set initial tool 11 active and standby temperatures to 0C
    M568 P11 S1 ; Enable mixing for tool 11
    M567 P11 E0.27:0.10:0.63 ;
    T11 ; Select Tool 11
    M109 S0 ; Set temp to 0



  • Hi Eddie,

    Ref tool 10. Nothing in you config is jumping out at me. Suggest you check the gcode file to see if the T10 codes are present in the file. Also check that there is nothing in the start gcode that is altering the active temperature for that tool. I usually set active and standby temperatures to 0 in config, then put the active and standby temperatures that I want to use for the tools in the start gcode (and set the both the same). It makes life easier if you start sing different filaments like PETG instead of PLA.

    Ref stringing - yes it's retraction. What length are your bowden tubes, and what values do you have in M207?

    Ref the height - dunno. It's a Delta which I know nothing about.

    Ian



  • Hi Ian,
    Guess I should have just emailed you. 🙂
    T10 is OK, in fact I printed a 20mm square from all tools, 1 at a time. Odd I get different colors if I go from 0 - 11 or 11 - 0.

    The missing T10 must be lacking in the gcode.

    re-stringing, the tubes are pretty darned long, but that's how they came from reprap.me. My M207 (firmware retraction) is
    M207 S4.0 F4000

    I've gone up to 6.0 with no change. Of course, that was on the fly, not in config.g .. I assumed you can change m207 on the fly?

    Height, yeah, it is me.


  • administrators

    Yes you can change the M207 parameters on the fly - just like almost everything else.



  • @Eddiie:

    Hi Ian,
    Guess I should have just emailed you. 🙂
    T10 is OK, in fact I printed a 20mm square from all tools, 1 at a time. Odd I get different colors if I go from 0 - 11 or 11 - 0.

    The missing T10 must be lacking in the gcode.

    re-stringing, the tubes are pretty darned long, but that's how they came from reprap.me. My M207 (firmware retraction) is
    M207 S4.0 F4000

    I've gone up to 6.0 with no change. Of course, that was on the fly, not in config.g .. I assumed you can change m207 on the fly?

    Height, yeah, it is me.

    Hi Eddie,

    I'm happy to help via email if I can but if you post here, it might help others who run into the same problems in the future.

    Ref stringing/retraction. My advice would be to shorten the tubes as much a you can. In general, the longer the tube, the more retraction you need. That's why my insane printer has the extruders mounted close to the hot end and driven on their own carriage.

    Something else I've recently discovered that has been bugging me for a while is that sometimes it seems I need more retraction than other times. I think I now know why. I narrowed it down to the fact that I didn't get stringing at the start of a print, but as the print progressed, stinging started to appear. I'm 99% sure that the reason is that the unused filaments get ground down by the constant retract - unretrcat. This reduces the filament diameter so for the same number of steps, each retract moves less and less filament. You start off with say 5mm for all 5 filaments but after a while, the constant back and forth movement over the hobbed bolt grinds down the unused ones and they only move say 3mm. That is what I think is happening. So, I'm playing around with extruder tension and trying to use the lowest that I can get away with. PETG seems more affected by this than PLA. I've actually had PETG get ground almost right through and then it won't feed at all.

    For my setup, with Bowden tubes of around 160mm (from extruder outlet to top of heat sink) I know that 3mm of retraction works normally but I have it set to 5mm to try and compensate for the grinding down of the unused filaments. It depends a lot on the model you are trying to print. Those with lots of retracts will suffer more than those without.

    HTH

    Ian


  • administrators

    Maybe mixing hot ends are a good application for a belt-driven extruder? The sort that uses a belt to push the filament instead of a hobbed insert.



  • I'd like to try belt extruders.

    Ian,
    How can filament get ground down if the mixing ratio always has a 1 for the non-active extruder(s), to keep the filament moving?

    What happened with your mixing without a prime/wipe tower, changing mixing ratios ahead of time? I mean did you get a script written to make that happen or was there more to it? Stringing only seems to happen when the head moves from one object to another (mode and prime tower for example), the head uses the same path over and over, eventually repeated entry and exiting of the same point (pathing), the artifacts add up and get the results shown in the original post. If the head never leaves the object, there is no stringing. Your script would help here by eliminating the prime/wipe tower.

    .Now I screwed something up and I can't print at all. The head sits about 5mm above the print bed all of a sudden.



  • @dc42:

    Maybe mixing hot ends are a good application for a belt-driven extruder? The sort that uses a belt to push the filament instead of a hobbed insert.

    You must be psychic - been having exactly the same thoughts.



  • @Eddie, sorry for beeing a little off topic but when reading the topics you opened i realized that the pictures you have taken are a little shaky, so details are hard to make out.
    Have you ever tried to fixate your camera when doing the photos? I usually put my phone on a some cardboard box or something similar so that the camera cannot move much.
    This gives sharper pictures that make it easier to see what is going on. Also bringing in some extra light helps, but usually it is enough to put the phone on something to get better usable results.



  • @Eddiie:

    I'd like to try belt extruders.

    Ian,
    How can filament get ground down if the mixing ratio always has a 1 for the non-active extruder(s), to keep the filament moving?

    What happened with your mixing without a prime/wipe tower, changing mixing ratios ahead of time? I mean did you get a script written to make that happen or was there more to it? Stringing only seems to happen when the head moves from one object to another (mode and prime tower for example), the head uses the same path over and over, eventually repeated entry and exiting of the same point (pathing), the artifacts add up and get the results shown in the original post. If the head never leaves the object, there is no stringing. Your script would help here by eliminating the prime/wipe tower.

    .Now I screwed something up and I can't print at all. The head sits about 5mm above the print bed all of a sudden.

    Eddie. Filament can still get ground down when you print small areas. Say for example you use a 3 colour hot end and have a mixing ratio of 0.98:0.01:01. Now let's assume that you need to extrude 10mm of filament to complete a small area before moving on the the next small area. The main filament will move 9.8mm but the other two will move only 0.1mm each. So if you need to retract say 5mm, 4.9mm of the filament will already have been moved once and only 0.1mm will be "fresh". If that process gets repeated say 10 times, then a 4mm section of filament will have been retracted and un-retracted 10 times. As I explained, you can alleviate it somewhat by using the minimum extruder tension that you can get away with so that the hobbed bolt doesn't bite so deeply. This is also another reason why I prefer to use a bigger nozzle - it's easier to push filament through so you need less extruder tension.

    I'm still using my script although it does have bugs. I tend to go through the modified gcode file and manually edit the obvious errors. I just haven't had chance to look at it for a long while. I've passed it on to an old chum who has his own business writing code, but he only tends to use something called C sharp. I've told him that there is no money in it, so is he wants to do something, it'll have to be for the kudos alone. I think he plans to make it a stand alone application or some such, but he has a very busy life so it could be weeks, months or years before he gets around to it.

    Yes stringing does only occur on non-print moves. That's kind of why retraction was invented. What happens is that at the end of a print move, there is blob of filament, more or less as thick as the nozzle, and as high as whatever you layer height is, attached to the nozzle but stuck to the printed part. So when you then move the nozzle, it gets stretched out into a fine thread. I don't know if you've ever used epoxy adhesive or some of those glues that come in a tube, but if you have, you'll know what I mean. Actually, the situation is a bit worse than that because the filament can tend to ooze on it's own, even when the extruder stops pushing. So what retraction aims to do is to "suck" that filament back up inside the nozzle before we do our non-print move, then un-retract it (push it back down) when we are ready to print again.

    The script would help with eliminating the need for wipe/prime towers but these might actually be helping by keeping the "unused" filament moving.

    As a general, rule the longer the Bowden tubes, the more retraction you need. But, if you go too high with retraction, you can reach the point where you draw so much molten filament back that it can go past the heat break where it will start to solidify and cause a blockage. Now you know why I've gone to such extremes to keep the Bowden tubes short on my big machine. 🙂

    Fun isn't it? I think you have to have a bit of a masochistic streak to use a mixing hot end.

    Ian


  • administrators

    I hope I will have time to add the look-ahead colour mix change to the firmware soon, but first I have to switch the firmware over to using a RTOS.


Locked
 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.