I’m also looking for how to have it detect different color/filament mid-layer and insert a pause. I saw there was some way to edit code, but curious if there’s any other solution. Thanks!
I apologize, as I just noticed this message.
I DMed you.
would you mind sharing with me too? i’ve been trying to print a led matrix and i need a white layer first then everythinh black
I’m also very interested in how to do it. Thank you in advance.
I would be interested in that Method too. I need to Print some Lightboxes for my Kids, and they all have 6 or more Collors, and my AMS has only 4.
I am using an A1, is that a Problem?
I am sorry, I don’t own an A1 and I’m not sure how much different the G-Code would be to make that work for your setup.
I’d love to know how you’ve done this…
Which printer do you own?
Thanks for coming back to me!
I’ve got an X1C
@Lexi could you share your method with me too?
Can you tell me? Im trying to add some text of different color on the first layer
Sorry for the delay, I haven’t been around here much lately.
Hey Lexi, could you DM me the instructions pretty please?
Ehi Lexi can you DM the method please? I’d like to print two colours in a layer🥳 thank you
Like everyone else I would like to know the method you have come up with for the color changes without AMS, or even better switching from an AMS color to the outside spool with another type of filament. Please DM me your method, and thanks in advance for being a great community member.
Hi @Lexi,
Sorry to be a bother but I am very curious about this as well. At some point, I would love to print some TPU 95A from the rear directly into a PETG part (from the AMS) for a pool outlet.
May I add my name to the list of requestors for learning about the work-around you developed?
With many thanks for your consideration and great contributions,
Yours,
Eno
For anyone hoping Lexi wants to share…
I’ve used this for quite a while. Its not my code- but credit to whomever!
Pretty sure you should also leave ‘single extruder multimaterial…’ unchecked- however I’ve forgotten. Experiment
; change filament without AMS g-code
{if toolchange_count > 1}
M204 S9000 ; set starting acceleration
G17 ; set CNC workspace plane
G2 Z{max_layer_z + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift
G1 Z{max_layer_z + 3.0} F1200 ; vertical lift; move to poop chute
G1 X70 F21000
G1 Y245
G1 Y265 F3000
M400; turn off fans P1 and P2
M106 P1 S0
M106 P2 S0; wipe?
G1 X90 F3000
G1 Y255 F4000
G1 X100 F5000
G1 X120 F15000; move to position to prep for cutting filament
G1 X20 Y50 F21000
G1 Y-3
; always use highest temperature to flush
M400
M109 S[nozzle_temperature_range_high]; cut filament
G1 E-5 F200
G1 X5 F300
G1 X20 F12000; move to poop chute
G1 X70 F12000
G1 Y245
G1 Y265 F3000; push a little filament out and then retract out
G1 E10 F200
G1 E-10 F200
G1 E-20 F500; pause for user to load and press resume
M400 U1; don’t know when next_extruder is >=255, so this may always activate?
{if next_extruder < 255}
M400G92 E0
{if flush_length_1 > 1}
; FLUSH_START
{if flush_length_1 > 23.7}
G1 E23.7 F{old_filament_e_feedrate} ; do not need pulsatile flushing for start part
G1 E{(flush_length_1 - 23.7) * 0.02} F50
G1 E{(flush_length_1 - 23.7) * 0.23} F{old_filament_e_feedrate}
G1 E{(flush_length_1 - 23.7) * 0.02} F50
G1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}
G1 E{(flush_length_1 - 23.7) * 0.02} F50
G1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}
G1 E{(flush_length_1 - 23.7) * 0.02} F50
G1 E{(flush_length_1 - 23.7) * 0.23} F{new_filament_e_feedrate}
{else}
G1 E{flush_length_1} F{old_filament_e_feedrate}
{endif}
; FLUSH_END
G1 E-[old_retract_length_toolchange] F1800
G1 E[old_retract_length_toolchange] F300
{endif}{if flush_length_2 > 1}
; FLUSH_START
G1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_2 * 0.02} F50
G1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_2 * 0.02} F50
G1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_2 * 0.02} F50
G1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_2 * 0.02} F50
G1 E{flush_length_2 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_2 * 0.02} F50
; FLUSH_END
G1 E-[new_retract_length_toolchange] F1800
G1 E[new_retract_length_toolchange] F300
{endif}{if flush_length_3 > 1}
; FLUSH_START
G1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_3 * 0.02} F50
G1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_3 * 0.02} F50
G1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_3 * 0.02} F50
G1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_3 * 0.02} F50
G1 E{flush_length_3 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_3 * 0.02} F50
; FLUSH_END
G1 E-[new_retract_length_toolchange] F1800
G1 E[new_retract_length_toolchange] F300
{endif}{if flush_length_4 > 1}
; FLUSH_START
G1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_4 * 0.02} F50
G1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_4 * 0.02} F50
G1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_4 * 0.02} F50
G1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_4 * 0.02} F50
G1 E{flush_length_4 * 0.18} F{new_filament_e_feedrate}
G1 E{flush_length_4 * 0.02} F50
; FLUSH_END
{endif}
; FLUSH_START
M400
M109 S[new_filament_temp]
G1 E2 F{new_filament_e_feedrate} ;Compensate for filament spillage during waiting temperature
; FLUSH_END
M400
G92 E0
G1 E-[new_retract_length_toolchange] F1800
M106 P1 S255
M400
G1 X80 F15000
G1 X60 F15000
G1 X80 F15000
G1 X60 F15000; shake to put down garbageG1 X70 F5000
G1 X90 F3000
G1 Y255 F4000
G1 X100 F5000
G1 Y265 F5000
G1 X70 F10000
G1 X100 F5000
G1 X70 F10000
G1 X100 F5000
G1 X165 F15000; wipe and shake
G1 Y256 ; move Y to aside, prevent collision
M400
G1 Z[z_after_toolchange] F3000
{if layer_z <= (initial_layer_print_height + 0.001)}
M204 S[initial_layer_acceleration]
{else}
M204 S[default_acceleration]
{endif}
{else}
G1 X[x_after_toolchange] Y[y_after_toolchange] Z[z_after_toolchange] F12000
{endif}{endif}
; as there is no AMS, these next three lines only serve to hide T[next_extruder]
; if this was not included, the T[next_extruder] command is input after this
; code and will cause the system to hang as the toolchange command searches
; for the AMS
M620 S[next_extruder]A
T[next_extruder]
M621 S[next_extruder]A
Blockquote
…sigh…
We can’t have nice things…
Hello, actually if you want to change out a filament mid print there is another way. When my red pla was almost out I didn’t want to wait for the last little bit to run through. I want to go ahead and add new pla. I paused it. I disconnected the tube from the back of the printer that goes to the AMS. I cut it there as well. I pulled out the remainder from the AMS. Now the printer thinks it’s using the rear spool. I moved the AMS and removed top glass. I pulled back the tube from the printer head and cut it there aswell. I removed all pla so there is only a tiny bit in the actual print head. I put the tube back in print head and ran the spool from the rear down the tube like I normally wood. I replaced the top glass and started print again. I guided the pla a little until the print head grabbed the pla in the gears ans that’s it, all done. It finished the print from the rear spool. Sounds like a lot but took me 3mins to do.
You could have simply cut the filament at the feed tube. Taken out the old spool, put the new in it’s place and fed back into the feed tube and watched for a min or two, once it got past the internal hub, and walked away.
Doesn’t sound like much…