[First Batch Shipped Out] FAQs of Dual Extrusion 3D Printing Module for Snapmaker 2.0

This is my first dual color print. Using two colors of Hatchbox PLA. Sliced with PrusaSlicer. I started by making a first attempt to calibrate the E-steps for each extruder. The values were different and different enough to warrant additional work. Check out my toolchange g-code below. All told, I think it is a good first result. I’m going to probably continue to refine the e-steps and flow rate first.




If anyone is interested, here is my current custom G-code in PrusaSlicer. I do think it needs some additional tweaking, so use it at your own risk.
Start G-code:

M82 ;absolute extrusion mode
;Start GCode begin
{if initial_extruder == 0}M92 E672.60081{elsif initial_extruder == 1}M92 E680.07339{endif}
M140 S[first_layer_bed_temperature]   ;Start warming Bed
G28 ; home all axes
G90 ;absolute positioning
G1 X-20 Y-10 F3000
G1 Z0 F1800
M190 S[first_layer_bed_temperature]   ;Wait For Bed Temperature
{if is_extruder_used[0]}M104 S[first_layer_temperature_0] T0 ;Start warming Left Nozzle{endif}
{if is_extruder_used[1]}M104 S[first_layer_temperature_1] T1 ;Start warming Right Nozzle{endif}
; M109 S[first_layer_temperature] ;Wait for Hotend Temperature
{if is_extruder_used[0]}M109 S[first_layer_temperature_0] T0 ;Wait for Left Hotend Temperature{endif}
{if is_extruder_used[1]}M109 S[first_layer_temperature_1] T1 ;Wait for Right Hotend Temperaturee{endif}

; Is T0 Used? [is_extruder_used_0]
; Is T1 Used? [is_extruder_used_1]
{if is_extruder_used[0]} ;This stuff will only get "executed" if left extruder is used
T0
G1 X-25 Y-10 F3000
G92 E0
G1 E20 F200
G92 E0
G1 F2100 E-1{endif}
{if is_extruder_used[1]} ;This stuff will only get "executed" if right extruder is used
T1
G1 X-25 Y-10 F3000
G92 E0
G1 E20 F200
G92 E0
G1 F2100 E-1{endif}
T[initial_extruder] ;Set initial extruder

;LAYER_COUNT:[total_layer_count]

End G-code:

; End GCode begin
; M104 S0 ;extruder heater off
{if is_extruder_used[0]}M104 S0 T0 ;Left Hotend Off{endif}
{if is_extruder_used[1]}M104 S0 T1 ;Right Hotend Off{endif}
M140 S0 ;heated bed heater off
G90 ;absolute positioning
G92 E0
G1 E-2 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure
G28 X0 Y0 Z+10; home
M84 ;steppers off
M107 ;fan off
M82 ;absolute extrusion mode
; MAXZ:[max_layer_z]
; End GCode end

Tool change G-code:

{if next_extruder == 0}M92 E672.60081{elsif next_extruder == 1}M92 E680.07339{endif}

The tool change G-code is the key to making it work, I think. It’s what allows you to have different e-steps for each extruder and manually load them with each extruder change.The first M92 is for the left extruder. The second M92 is for the right extruder. The values I used are for my machine. You need to determine your own values.

For all things calibration, I like this site: https://teachingtechyt.github.io/calibration.html

I know it’s frustrating. I’ve been frustrated too. I still have yet to get breakaway PLA or PVA to work as support material with PS. But, I’m going to continue to work on that. But, at least this shows that it is possible to get pretty good results with the dual extruder.

EDIT: Updated start G-code to my current setup.

6 Likes

I might have to explore this tool change g-code a bit.
Not probably going to solve my direct issue. But could make my prints a little better.

curiosity what are your retract settings?

This looks good.
I like your approach for the start gcode. Have you seen my thread where I’m documenting my first attempts with the DE and Prusaslicer?

It’s interesting that you have different e-step values for the two extruders. Mine have been the same!

Do you really need to heat up both extruders initial when both are used?
I’m thinking of the corner case when you only use the second extruder for later levels.

I’m thinking about a solution to heat up the second extruder only when it is really in use. Furthermore, I do not think I’ll ever do two color prints - I want to use the second extruder with break away filament for support connection points.

Received mine today…but with that feedback as of now I am really curious if I even want to open it or just directly return it.

For such an enormously high price, I expect it to work flawlessly. I do not accept any “put a plastic clip here and there” workaround…hell no.

Same here…

I‘ll give it a chance


Here are my current retraction settings, but they need some tweaking. I’ll make another post to explain my issue with PVA.

I’m happy to help if you have any questions.

1 Like

Thanks for the link! I’ll definitely check out that thread.

Do you really need to heat up both extruders initial when both are used?

They don’t both heat up because it goes off of the first_layer_temperature. So, I leave it to PrusaSlicer to decide what that temp should be for the first layer.

I’ll make another post with my use of supports.

I actually bought the dual extruder for the same reason as you (supports). But, when I was going through calibration, I found it helpful to have the same material in both sides. That way, I could not only calibrate them, I could compare them and see if one is off compared to the other. That said, I do plan to also make multicolor prints, but I’m going to use a Pallette 3 for that. I have yet to tackle the project of setting it up.

I think you should keep it. Not everyone is having problems like you are reading about here. I have had zero problems with the nozzle dislodging and do not use the clip. But, I do think that having your printer properly calibrated makes a difference. For example, if you are pumping too much filament through and the heating block can’t keep up, I could see that pressure putting undue stress on the nozzle spring.

If you look above at the mushroom print, that was literally my first print using the dual extruder. The steps I took at a high level with the DX:

  1. Had to go through the initial setup using the controller. I was not expecting it to be perfect and I was right.
  2. Calculated the necessary e-steps for each extruder. Took an average of the two and stored that in EEPROM.
  3. Added tool change g-code in PrusaSlicer so that it will use the correct e-steps for each extruder.
  4. Although the DX is supposed to be better about auto-leveling, mine still needed tweaking. I first tweaked the Z offset for the left extruder using M206 until I was happy with the first layer. I ended up using a 0.14 Z-offset.
  5. Then I used M218 to tweak the Z offset of the right nozzle. It was pretty good out of the box and only needed a small adjustment.

That’s all I had to do to make that mushroom print.

My take:

3D printing is very complex. There are so many things that affect printing and quality, I imagine that it’s hard to write code that accounts for every single variable–especially keeping in mind that every manufactured object has a range of tolerances. No object (nozzle, module, heatbrake, PID, thermistor, etc.) is perfect. Because of that, I imagine it’s nigh impossible for firmware to account for all of those things. So, I expect that if I want really high-quality prints, there will always be some amount of calibration required.

1 Like

I thought it might be helpful to show others my continued progress with the dual extruder. I wanted to show that not everyone is having nothing but failure. I do not use the clips.

I have been working to get PVA supports. At first, it wasn’t working at all. It wasn’t sticking to the bed and seemed to just be a basic mess. But, I have never worked with PVA before (because I never had a dual extruder before).

Using this: https://teachingtechyt.github.io/calibration.html#flow, I printed a cube in vase mode using the left nozzle in PLA. It printed extremely well. But, when I went to print the same cube with PVA in the right nozzle, there was pretty bad under-extrusion. Once I bumped up the flow rate in PrusaSlicer for PVA, that made the prints usable. I also ended up using some Magigoo on the bed in order to get a little better stick. PVA sticks really well to Magigoo. (I measured my PVA and it was incredibly variable, so I just stuck with a 1.0 multiplier.)

Here are pics from my first print with PVA:



After removing the supports (just needed a bit of a soak in water), this is what I ended up with. I have NEVER had such quality surfaces that have been printed on supports than with this.



That led me to try a more complicated print with a ton of supports. Although I am getting a lot of oozing of PVA, the supports are actually working. I’m already printing at the lowest recommended temp (190º), so I’m concerned about lowering the temp further. I’m going to tweak the config some more to see if I can get even better results. I imagine that the issue is the retraction needs to be increased. But, my current PrusaSlicer profile does work for printing PVA! In this print, the oozing PVA may have had a minimal, but noticeable impact on the PLA surface, so I just need to dial that in some more.




30-minute soak


60-minute soak

Because of the huge amount of PVA, it is going to take hours of soaking, but this is how it looks at present. I think some of the surface imperfections are actually PVA that has yet to dissolve.

Anyway, I’m very encouraged and happy with the results. I am sure I can dial things in even better, but this is what I bought the dual extruder for. And it works. :slight_smile:

1 Like

My dual extruder finally arrived yesterday. It’s been so long since I ordered but I vaguely remember staying up until midnight so that I could be the first to order when the pre-orders opened.
Now it’s been so long I’m trying to muster interest in opening the box.

1 Like

Just started my first larger print with the DX - and first layer without much tweaking is already soooo much better than anything I could coax from the SX… If they iron out the teething issues, I guess this will be a very capable print head!

I’m now on firmware 1.15.21, and it still has the bug that after Z-calibration it starts ~0.3 mm too high into the print. In my current print left extruder needed -0.4 mm, right one -0.35 mm manual Z offset to get it right…

1 Like

Just adding my two cents: I actually really like the dual extruder module. Like @Hauke says, it has potential to be very capable. I’m running the “high speed vibration compensation” beta firmware and I was able to get good results very quickly using PrusaSlicer.

As always with Snapmaker, there are some software quirks that make it not quite plug-and-play, which is a shame given the price, but overall I have to say I really like the module.

2 Likes

I didn’t know if the high speed vibration compensation firmware supported the dual extruder. You’ve been using it without problems?

Yes, same speeds as the single extruder and no problems at all. I modified my single extruder with a 5015 fan specifically for the higher speeds, but I feel like the dual extruder matches that cooling performance out of the box.

1 Like

Ok so I finally unboxed it and spent the major part of yesterday setting it up because I had to manually calibrate it for my glass bed.
I must say, as usual (this is such a love-hate relationship at this point!) as usual Snapmaker goes beyond delayed but when it finally arrives it is worth it. It is very well made and works like a charm. I’m making my first print now.

2 Likes



Yea, I’ve had some really good success this weekend since it arrived. I did. need to bump my waste cylinder mm3 up to 25 for the big guy. I’m at 20mm3 now for a helmet and that seems to be working. I had the cylinder popping off the taller it got.

2 Likes

can you share you settings and slicer? your prints look really good.

1 Like

Luban 4.7 and ‘normal’ with no supports and medium speed and thin structure.

@Mads0100 Really ? Just out of the box with default settings ? I think it would be REALLY helpful to us all if you could spend 5 mins, to expose some of the settings (retraction, temps etc) and materials (even the manufacturer) used. What did you do prior to that for calibration ? Curious, what STLs did you use ? Still need to get my head into DX printing, and merging files…anything there would be super helpful too.
The astronaut and the gimble look fantastic btw - I am stunned by the quality. Nice work

@shudman

Yea, I used to use Cura and Prusaslicer for specific needs but I found the profiles weren’t being updated with the many changes over the last few years and I don’t have the time to nitpick the settings like some of the advanced users around here do.

Retraction is whatever the default in the snapmaker materials… I chose the ‘snapmaker red pla’ for my Polynomics PLa PLus (200/65/1mm retraction @ 35mm/s if I remember correctly, 150c resting temps). The other extruder is set to the snapmaker breakaway PLA support material (220/65/1mm retraction @ 35mm/s if I remember correctly, 150c resting temp). The one change I made with the ‘space man’ was to increase the wipe tower from 12mm cubed to 25mm cubed. I had my tower fall over on the calibration file (the squares) and it also fell over with the minecraft cube. My later prints I’ve done I reduced that to 20mm cubed and it seems to be thicker/holding better. However, I also manually did the z-offset (using the option in the calibration tab on the hand controller) using the calibration card. I couldn’t get the calibration card to ‘bend’ like the single extruder, so I’d put it down to where it felt tight but still moving and then backed it off 0.05mm so it slid easier. After this I didn’t have tower issues.

For calibration, I followed the online prompts during initial calibration. I let it do it’s thing. The only portion I wasn’t happy with was the squares… I’d loaded the break away PLA and the temps weren’t good for it (plus my z-offset wasn’t good and I couldn’t figure it out on the fly). They printed OK minus the tower would fall over. So, I called it good and skipped that step.

STLs were from Thingiverse:
Phil (aka space man)

Minecraft Brick night light:

In Luban 4.7, there is a bottom at the top called ‘align’. I just used that and made sure to assign each model to an extruder using the menu’s at the bottom left of the screen.

For reference; I do have the linear guide mod in my enclosure. That was based on an old guide from here/facebook. I think that helps with the tall objects like Phil.

I’ve also printed two more things using the breakaway PLA as actual supports. I was surprised to find they’re as easy as it sounds and the material mostly comes off with a finger nail and the finish is good for the actual model. I posted them on facebook… I’ll try and add those later.

Anyways, I dunno if I got lucky since there has been about 5 firmware upgrades since it came out plus numerous updates to Luban. But, yea.

Hope that helps, feel free to PM me. I’m on the facebook group more than I am here.

1 Like