Musings and Experiments on the Art and Science of 3D Printing

Featured Post

After a five-year detour leading the global software team for Desktop Metal, I'm back with a new name ( A Hack of All Trades ), a new mi...

Followers

Browsing "Older Posts"

Browsing Category "Calibration"

Tip: QuickPrint model

By SublimeLayers → Thursday, April 12, 2018
Here's a simple model that prints quickly and can be used to check and calibrate a number for factors. 

QuickPrint test part - 20mm x 20mm x 5mm tall so it prints quickly to check:
  • X-Y scaling - particularly for delta printers to verify delta arm length
  • Z scaling - although only 5mm tall, you can use it for a quick Z calibration test
  • perimeter print quality - with two radiuses and two sharp corners you can check a variety of perimeter issues as well as print speed, acceleration and "jerk"
  • first layer quality - simply stop the print after the first layer is complete, cool and peal to measure first layer thickness. This measurement should equal your first layer height set in your slicer
  • top layer quality - slice with 3 top shell layers to check the quality of the printed part

Slicing recommendations: 
  • 2 perimeters
  • 2-3 shells top and bottom
  • 25% infill is good for a quick test print
Get it here: QuickPrint

See Musing: How to print accurate parts for more detail on printer calibration and printing accurate parts. Also, search on "calibration" for more related posts.

Video: Delta Printer Calibration Diagnostics

By SublimeLayers → Monday, April 9, 2018
Here's a tutorial showing how I approach diagnosing delta calibration issues using a bed probing macro. You might learn a little bit about how RepRapFirmware does it's delta calibration too.

Musing: How to print accurate parts

By SublimeLayers → Saturday, March 3, 2018

Introduction

The purpose of this post is to help you understand:
  1. what accuracy, precision and resolution actually mean
  2. what factors influence printed part dimensional accuracy and precision
  3. how to calibrate Cartesian and delta printers to achieve high dimensional accuracy
  4. how to use RepRapFirmware's M579 Scale Cartesian Axes command to compensate for X-Y dimensional issues on a delta printer
As you read this, keep in mind I am a Duet controller and RepRapFirmware (RRF) convert and have been since the dc42 release with David Crocker's superb delta auto-calibration least-squares fit for the important delta calibration parameters. I use Duets (all models from the original 0.6 to the 0.8.5 and now the Duet 2 Wifi and Ethernet controllers) on all of my machines, currently 6 deltas, 1 CoreXY and 1 Cartesian printer. But I've built and sold or helped many others build their delta, CoreXY and Cartesian printers with Duets and RRF. Although some of what I describe is unique to RRF (the LSF auto-calibration and M579) the overall process for calibrating your printer to get dimensionally accurate parts still applies.

A Little Reality Check

Before we embark, have realistic expectations about what to expect from Fused Filament Fabrication (FFF) 3D printing! Think about the process – the printer is melting plastic filament and pushing it through a tiny orifice to create a thin layer – a really thin layer - of plastic as it moves. These thin layers are stacked one on top of another to create a 3D part. What could possibly go wrong?

All part-making technologies from blow and injection molding plastics to high-end CNC machining metals have limitations, tradeoffs and part design constraints. Let's look at injection molding a little closer since it uses similar materials to our FFF printers. Molten plastic changes dimension and shape as it is cooled – typically it shrinks. High precision injection molding takes this into consideration and molds are designed and painstakingly machined (i.e. $$$) to accommodate this shrinkage. But the actual part accuracy is highly dependent on the plastic formulation and purity, melt temperature, environment (humidity, ambient temperature, etc), molding pressure, mold residence time, mold temperature, and many other parameters including the part geometry itself. It is very complex and varying any one of these parameters can significantly affect the dimensions (accuracy) of the molded parts. Consider that these are million dollar machines in clean room, controlled environments using highly purified feedstock plastic and churning out thousands of identical parts. What chance do we have with a $1000 home-built 3D printer, printing inexpensive plastic filament in a home environment (i.e. big fluctuations in temperature and humidity) printing one part and then moving on to the next?

Consider that injection molded part tolerances for typical 75mm to 150mm cubic parts (in other words, the size of parts we typically 3D print) on dedicated commercial injection molding machines with highly engineered molds ($$) is around 0.23mm to 0.30mm for standard commercial moldings and 0.15 mm to 0.20mm for fine precision modlings (at much greater cost) in ABS. Think about that for a moment. Even in highly precise molding shops, the upper limit is only about an order of magnitude better (.015mm to .020mm).

You should not expect ± 0.01mm precision from your 3D printer. By the way, that's 0.0004" - a precision that even high-end CNC milling centers must work hard to maintain. If you've built or purchased a very geometrically accurate 3D printer and are meticulous and consistent in your approach to printing, you can attain ±0.05mm precision with experience and practice from a 0.4mm nozzle. But results within ±0.10mm precision are more typical and certainly PDG (pretty darned good) for most structural and ornamental prints.

Accuracy, Precision and Resolution - Oh My

Have you ever wondered what "accuracy" and "precision" and "resolution" mean? These confuse many people. I cringe every time I read a post that talks about "accuracy" when they actually mean "precision". Let me give simple definitions for each and then a drawing that should put it all into perspective:

accuracy – is a description of repeatable errors (how close the size of the actual printed item is to the true size)

precision – is a description of random errors (if you print that item multiple times, how much does it vary for each print or, in other words, how repeatable it is)

resolution – is the smallest increment you can measure (applied to your printer it is the smallest increment it can move precisely and/or the smallest feature it can print)

Resolution is related to precision but is NOT the same thing and often mistaken for precision. Resolution dictates the upper limit of precision. So, if your printer is not able to resolve movements of 0.05mm then your printed precision can never be better than that.

Another complication arises with resolution and that is attributed to the resolution of the STL model you are printing. If the model was tesselated with a low polygon count such that the resulting sliced line segments are longer than your printer's mechanical resolution, your prints will likely not be accurate. This is a subtle issue that most 3D printing enthusiasts don't realize – now you are armed with that knowledge.

Now take a look at the figure below. A target and bullseye is the classic way to show accuracy and precision. I've added a third dimension, resolution, to the picture.

The top row shows the difference between accuracy and precision at low resolution – the grid used to measure the position of each red star is very large. The stars in the bullseye can't be distinguished from each other since they are all in the same grid square – the resolution of measurement for the top row of targets.

The bottom row shows the same accuracy and precision as the top row but at high resolution. Here you can see the grid is much finer so you can distinguish the difference between stars even if they are all in the bullseye.
Click image for larger view
Think about this... high accuracy and high precision is, of course, best and the goal. But what can we say about low accuracy and high precision? In this case, a simple fudge factor could be used to compensate for the low accuracy. Once you know what this fudge factor – or compensation – is, you can apply it to each star and the results would be high accuracy and high precision! This is not true for the two cases on the right. There is no simple fudge factor that can fix low precision. So given the choice, always choose high precision over high accuracy. Accuracy is easy to adjust, precision is not.

Look at the definitions above again – precision is random, accuracy is repeatable. Hopefully this makes more sense now. Let's see how all this applies to your printed parts, that's why you are reading this right?

What Affects Printed Part Accuracy?

Realize that dimensionally accuracy and precision is dependent on a lot of factors including:
  1. the mechanical resolution and precision of the printer itself
    1. with Cartesian printers, the resolution for Z is usually different than the resolution in X and Y
    2. with delta printers, the resolution for X, Y and Z is the same but the resolution decreases from the center of the bed to the perimeter
  2. the mechanical resolution and precision of the extruder
  3. nozzle orifice diameter – and don't forget about the accuracy of the diameter
  4. the type of plastic filament 
  5. the extrusion temperature AND extrusion flow rate (which is determined by print speed)
  6. the quality of the STL file (low polygon counts are course, high polygon counts are more precise)
  7. how you slice the STL file (one perimeter is suboptimal, perimeter print order, infill density)
That's a lot to take into consideration and there are other factors too – but they have a lesser impact so I'll ignore them for this discussion.

A Strategy for Accurate Parts

You've just built or purchased a 3D printer and want to print some replacements for some broken parts on one of your kid's toys. These parts need to fit properly on the toy – they can't be too large or too small. Let's assume you have a 3D model of the parts. Let's also assume you know a little bit about slicing and have watched all of my YouTube videos and read all of my blog posts on the topic. Here's how to proceed – in order...
  1. calibrate your extruder
  2. calibrate your printer (more below)
  3. create an STL file from your model
  4. slice your STL file (see my numerous videos and posts)
  5. print three or more test cubes (a 25mm "calibration cube")
  6. measure the printed test cubes
  7. adjust the printer's firmware calibration to fix any problems
  8. repeat steps 5-7 to verify
  9. use firmware compensation (if available) to fix minor discrepancies
From the measurements you should get an idea of how accurate and precise you can print this simple test part. If these are within the requirements for the replacement toy part, you are ready to go! But if your accuracy is off (say the X and Y are always larger than expected) or precision is poor, then you have some work to do.

A note about precision: determining precision is deceptively difficult. Measuring printed parts is almost an art in-and-of itself due to the variability in the sidewalls caused by the printed layers. Measuring a part's height (Z) is more precise because the bottom layer is quite flat (depending on your print surface) and the top layer is likewise flat and measurement with a simple caliper averages any unevenness. Measuring a part's length and width is a greater challenge since the layers make it difficult to find a flat surface to register against. Also, printer artifacts like blobs and strings appear on these layers, again complicating measurement. Measuring length or width in one place on the part might yield a different value than measuring even a millimeter higher or lower. In general, I like to measure across the layers as shown in the photo below. I take three measurements – one near the front, one in the center and one near the back - and average them. Make sure not to be thrown off by a burr on the first layer. Assuming that your printer has the mechanical resolution to obtain it and you are willing to work to achieve it, a precision of ±0.05mm is achievable.

Cartesian Printer Calibration

Cartesian printers are generally easier to calibrate to get good dimensional accuracy than delta printers due to their linear motion mechanics and independence of the three axes. Once you've printed and measured your parts, adjustments to improve X, Y or Z accuracy is done with the axes' steps/mm parameter in firmware. For instance, let's assume you printed a 25mm calibration cube and your average Y measurement came out to 25.10mm. Your firmware currently has 800 steps/mm configured for Y. The formula to adjust the steps/mm is:

adjusted steps/mm = steps/mm * (true size / measured size)

For our example, this becomes:

adjusted steps/mm = 800s steps/mm * (25.0/25.1) = 796.8 steps/mm

Update your firmware and re-print the test cube and Y should be much closer to 25.0mm. Each of the three Cartesian axes are independent and can be calibrated individually in this way.

Delta Printer Calibration

Calibrating a delta printer is a much bigger challenge due to the math involved in the kinematics (it is based on trigonometry) and the inter-dependance of the three delta axes. I'm not going to go into detailed delta kinematics discussion here but I will touch on the basics you'll need to calibrate your printer.

The first thing to recognize is that the delta firmware calculates the position of the nozzle from the Cartesian coordinates fed to it in g-code. The g-code for a delta printer is – and should be – almost indistinguishable from the g-code used to print on a Cartesian printer (if the home position on the Cartesian is defined as the center of the print bed, otherwise the X-Y offset to home needs to be considered). The delta firmware calculates positions of the carriages that run up and down on the three towers. All movement in the X, Y or Z Cartesian space requires moving all three tower carriages. Confusingly, these towers are sometimes labeled X, Y and Z – but understand that they are not X, Y, Z Cartesian coordinates. It would have been nice if alpha, beta and gamma or some other label were used to reference the three towers on a delta printer.

Delta calibration depends on a lot of attributes but I'll focus on the main ones here. Some of the others really should be addressed in the mechanical build (i.e. tower lean and tower location errors, arm length variation, etc). The effects of these can be minimized with sophisticated firmware features like delta auto-calibration (RepRapFirmware) and grid compensation or the M579 compensation discussed later. The main parameters are:
  • delta radius
  • diagonal rod length (arm length)
  • the three tower steps/mm
See minow.blogspot.com for the classic delta calibration guide. Note, that I left off homed height - that affects the first layer height and not the absolute X, Y, Z positioning.

The approach to calibrating a delta printer is:
  1. Adjust the steps/mm for all three towers to get the correct Z movement. This can be calculated based on the stepper motor step angle, driver microstepping, number of pulley tooth count and belt pitch. For pure movements in Z, all three carriages move the same amount. This is exactly like a Cartesian printer. The Prusa steps per mm calculator for belt systems can be used to calculate this.
  2. Measure or estimate the delta radius and arm length. It is best to actually measure these or use the manufacturer's recommendations. At the very least, roughly measure them. Plug these starting values for delta radius and arm length into the config.g (RepRapFirmware) M665 command. You can take a rough measurement for home height (the distance from the homed nozzle tip to the bed in mm) and enter that too. 
  3. Bring the bed up to print temperature. I also prefer to bring the hot end up to temperature too. Allow to stabilize for at least 5 minutes once they have reached the target temperature.
  4. Make sure to delete the config-override.g file if there is one. Then run delta calibration (G32) three or more times. Each time you run it, it will print the calibration results and the deviation of the calculated fit. You want to run enough times for the deviation to converge. You can see this in the G-code Console in the Web interface. The final converged deviation should be below  0.04 for best results. If it is higher, it is best to track down the issue and fix it. If you are using FSR probing, 99% of the time the problem is the bed is constrained, resulting in more force than necessary to trigger the FSR.
  5. Run M500, which will persist the calibration results to a config-override.g file.
  6. Print three 25 mm test cubes and measure their height. This will give you some information on how precise your printer's Z motion is. If there is a lot of variability in the heights, you should try to determine the cause and fix it. Usually it is a mechanical "slop" issue – loose belts, loose pulleys, or stepper motors not mounted firmly. 
  7. If the height (Z) is off, adjust the tower steps/mm to correct the printed height. This is the same as the calculation described above in the Cartesian Printer Calibration section. Edit the M92 command in config.g using this new value – all three towers (X, Y, Z) should be the same.
  8. Repeat steps 6 and 7 until your measured height is within the range ±0.05mm of the true value. This is a very good precision for FFF printers and requires some work to achieve. You should be happy with ±0.10mm of true value for most non-critical work. 0.10 mm is only four one-thousands of an inch – or roughly twice the diameter of a human hair.
  9. Now measure the test cube's length (X) and width (Y). These should be the same (within your printer's precision, again between ±0.05 to ±0.10). The firmware diagonal rod length determines the X-Y scaling of the printed part. This is the L parameter in the M665 command. Use the measured X value to proceed, if X and Y are different, we'll address that next. You calculate the corrected value like this: corrected L = original L * (measured X / true X)
  10. Print another test cube and measure X and Y. If X is not within your printer's precision (between ±0.05 to ±0.10) repeat steps 9 and 10 until it is.
  11. Now turn your attention to Y. Ideally, X and Y will be nearly equal (within tolerance). If not, the best approach is to identify and correct the geometrical error that is causing the discrepancy. Culprits include tower rotation, tower lean, arm length variations, and non-circular delta "radius". If you can't fix the geometrical issue and the variation is not large (say less than 5%), you can use the RRF's M579 command to compensate for the variation. You should only use M579 as a last resort and I highly recommend calibrating Z properly and calibrating either X or Y properly, leaving M579 to compensate the other axis (Y if you calibrated X).

Conclusion

The most important thing you can do to print the most accurate parts possible is to make sure your printer's geometry is as close to perfect as you can get it. Time spent finding and fixing geometry issues – and this applies to both Cartesian and delta printers – is time well spent and will yield much more consistent results. The next most important thing you can do is have realistic expectations on part accuracy. After reading this post, you should have a clear idea on what that means. The third most important thing you can do is carefully calibrate your printer. And lastly, try to be as consistent as possible – including using the same filament (even color), slicing attributes, and room temperature and humidity.

For my work, I prefer to print 100mm x 100mm x 50mm test objects. This larger size reduces measurement errors and exercises more of the printer mechanics. Of course they take much longer to print but for exacting work, that shouldn't be an issue.

If you have an application where dimensional accuracy is critical and you've done all of the above and your printer prints accurate and precise calibration cubes, I'd recommend looking at the polygon count in the STL, consider how part geometry could be affecting things (thin walls for example) and if all else fails, consider tweaking the scaling of one or more dimensions in the model to compensate for the variation. Another option if you designed the part, is to design for "tolerance tolerant" –------------------ meaning consider how FFF printing tolerances can affect your parts and design accordingly. Some examples are designing parts that are an integral number of layers in Z height and an integral number of extrusion widths for thin walled features.

I wrote this post in a stream of consciousness to help a few of my supporters on my Slack channel. Please let me know if there are any errors or points that are confusing and I will update this post as needed.



Musings on Under-extrusion - More to think about

By SublimeLayers → Tuesday, December 12, 2017
My blog post yesterday detailing results of the under-extrusion experiment seems to be getting some attention - it had the highest number of views in the first 24 hours of any post I've made to date. In this follow-up post I'm going to show - at a very high level - how the voids are distributed and how large they are.

In practice, the geometry of the deposited extrudate is very complex and dependent on a lot of factors including:

  • extrusion width vs orifice diameter
  • extrusion height to width ratio
  • material viscosity
  • for the first layer, adhesion properties of the bed surface
  • and  a lot of others

In the under-extrusion experiment and my standard print conditions, I use an extrusion width equal to the diameter of the orifice so the analysis here assumes that. If your extrusion width is larger or smaller than the nozzle orifice diameter, things get more complicated, fast.

I've been doing these experiments and studies for several years. I've also dissected a lot of parts and have attempted to cut the parts in cross section so I can scrutinize the deposited filament under magnification. I've never been able to get clear photos but I am working on it. You'll have to take my observations at face value - or conduct your own experiments to confirm my assertions.

Making the cross-section drawings below is a time-consuming process so I focused on three cases:

  1. full extrusion
  2. 10% under-extruded
  3. 20% under-extruded

Based on part observations, I modeled the deposited filament cross-section as a round cornered rectangle. In reality, they are a more complicated geometry and the first layer geometry is different than upper layers due to the constraint imposed by they bed (it is perfectly flat, unlike printing on an existing extruded layer). As a simplification, I performed my analysis and calculation on cross-section area and not on extrusion volume. In practice, filament deposition happens when the nozzle moves in the X-Y plane and that introduces shear forces that further affect the cross-sectional geometry. But, I assert, there is a lot to be learned from this simple two-dimensional analysis.

I began by calculating the area for the three cases as shown here:

Next, I assumed that in all three cases the extrudate width and height will be the same - in this case 0.4mm (W) and 0.2mm (H). So, the task was to calculate the corner radius that results in the target cross-sectional area. I'll leave the math as an excercise for you, dear reader, but if you are interested please post in the comments and I'll fill in the details. Here are the calculated corner radii in mms.

The final step was to create scaled drawings of the extrudate cross-sections using these corner radii. I used this cross-section to create a simple "print model" cross-section that is two perimeters wide and two layers high as shown here:
Take a close look at these cross-sections. Even at the extreme 20% under-extruded case, the void is surprisingly small and, more interestingly, are precisely distributed at the intersection of extrudate corners in the part.

Note that in reality, even the corners of the 100% case are rounded over so one has to ask where that extra filament went. Does it result in a slight width increase of the extrudate or does the slicer attempt to compensate by slightly under-extruding? I've done the back-calculations for g-code created by KISSlicer, Cura, Slic3r and Simplify3D to see how they actually handle it. This will be the subject of a future post.

Keep in mind that this deposition is happening at a very small scale, fairly quickly, and requires movement of the nozzle in the X-Y plane. As the molten filament is deposited, it can flow (i.e. distort) until it solidifies due to cooling. This can result in various distortions from the hypothetical simple case shown above. But guess what, looking at parts under reasonable magnification, it really does appear remarkably consistent with this simple case (for PLA extruded under reasonable conditions).

I'll leave you with one last drawing showing the 100% and 80% cases side-by-side at relative scale. If you look at your nozzle closely, you'll observe that the orifice is centered in a flat field. This field drags over the deposited filament and contributes to pressing it down into the bed or layer below. I don't have experimental evidence for the shape of the 80% under-extruded case shown on the right side of the drawing. I derived it - a simple trapezoid - by observing squeezing toothpaste against a counter top to simulate extrusion.

Musings on Under-extrusion - prepare to rethink your understanding

By SublimeLayers → Monday, December 11, 2017
UPDATE: my friend Tony Akens asked if I had weighed the parts to verify the commensurate reduction in mass. Of course I did! I've updated the tables to show that data.

I've asserted for a few years that under-extrusion (with the caveats listed below) is not as catastrophic as many make it out to be. I am asked to analyze lots of bad parts for my opinion on why they look bad, have gappy perimeters, first layers, and top surfaces, and other issues attributed to bad extrusion or filament diameter. I can usually (but not always) make good recommendations and they usually have nothing to do with under-extrusion. This post should dispell some of the myths and misunderstanding - or at least get you to do a few experiments of your own so you understand how your printer and filament behaves.

Before I get into those experimental details and results, first a little refresher on how FFF 3D printing extrusion works...

Extrusion Primer

From the dawn of the RepRap movement, filament extrusion calculations have been based on the length of raw filament feeding into the extruder. It is not the length of filament that is coming out of the nozzle nor is it the volume of filament coming out of the nozzle (although volumetric extrusion would be ideal and is coming). A properly calibrated extruder will feed exactly a 100mm length of filament when instructed to do so.

Stop and think about that for a moment...

The extruder doesn't care if the filament is 1.75mm D or 1.60mm D or even 2.5mm D (as long as it is constructed to handle this larger filament), it will push exactly 100mm of each of these if instructed to do so in the g-code. FYI, extrusion g-code looks like this:
G1 E100 F60
  • G1 is the "move" command
  • E is the amount to move (or push) filament through the extruder - 100mm in this case
  • F is the feed (speed) per minute - 60 mm/min in this case, which is 1mm/second
The amount of filament the extruder moves is calibrated - the "E-step calibration" - and I've talked about it at length in one of my videos. Everything I'm going to present below is critically dependent on a properly calibrated extruder, so watch the video and calibrate yours now.

While I'm discussing extruders and E-step calibration it is important to understand the impact on the number of E-steps per mm on your print quality. So let's do some calculations to help your understanding.

The circumference of a circle is calculated as:
Circumference = π * Diameter

Applying this formula to the extruder, it will tell us the length of filament that will wrap once around the drive gear as shown below. This will be the length of filament that will move in one full rotation of the stepper motor (of a direct stepper with no gear train).
Now, if we know how many steps it takes to rotate the drive gear a full turn (360°), we can calculate the steps per mm. Common stepper motors are 200 steps/rotation (although higher resolution 400 steps/rotation are affordable and gaining popularity). These are usually driven with 16 microsteps, giving 3200 steps/revolution. A discussion of microsteps is beyond this post but if there is interest, I'm happy to do a post on microstepping too.

Let's assume that the drive gear is 10mm diameter. Its circumference calculates to 31.42mm. So, 3200steps/rotation divided by 31.42 mm/rotation gives 101.85 steps/mm. This tells us that it takes 101.85 steps to move 1mm of filament through the extruder and into the hot end. Simple, eh?

The conventional wisdom dictates that extruders in the range of 400-800 steps/mm are preferable. There is good reason for this and you can perform the math to understand the effect of steps/mm on extrusion precision. I am not aware of any experimental evidence for this though and it would be challenging to design such an experiment and more challenging to analyze the results. So the best we have is anecdotal evidence from folks like me who have spent 1000s of hours printing with low and high-resolution extruders.

With that behind us, let's take a closer look inside the extruder as shown below. Simple extruders use an idler bearing to push against the filament opposite the drive gear as shown. This is to make sure the drive gear grips the filament so the filament moves when the cog rotates. Most extruders provide a tension adjustment for setting the pressure the idler bearing exerts on the filament.

If you apply too much idler pressure, you can distort the plastic filament as shown in the drawing below. Hard filaments like PLA distort less than soft filaments like TPU. PETG and ABS are in between. But, unless the filament (or drive gear) slips (or the stepper skips steps), the extruder will deliver whatever it is asked to extrude. 

Excessive idler pressure can permanently damage the filament (those teeth marks you may have seen or felt on your filament) and this damage can cause all sorts of inexplicable print problems when these grooves catch on surfaces and edges inside the extruder and hot end. I recall diagnosing extrusion issues related to these ridges catching on the edges of a Bowden tube 4 or 5 years ago and dug out this old photo:

Not only can this damaged filament snag on things, it increases the effective filament diameter, which can create excess friction in Bowden tubes. It is best to use the least amount of idler pressure as required to minimize this damage.

Sidebar: I prefer Bondtech extruders because they use two drive gears - one on each side of the filament. This allows a much lower pressure setting to get high extrusion forces, resulting in less damage to the filament and better extrusion consistency. I have blogged about Bondtech here, so search or find the Bondtech tagged posts to learn more.

Under-extrusion Print Test

Ok, let's get to the heart of this post! Over the last few months, I've had a spike in the number of print issues blamed on under-extrusion. I've patiently tried to explain that the photographed results were likely not the result of filament diameter variations or other extrusion-related issues. So this weekend I decided to conduct a controlled experiment to finally put this to bed.

Experimental Design

For this test, I used a stock Ultibots D300VS with its Micro Extruder and an E3D V6 hot end. The extruder was carefully calibrated as described in the video I linked above. This resulted in an E-step value of 780 steps/mm. This printer runs a Duet WiFi and RepRapFirmware.

For the test part, I used a 30mm cube with two vertical edges rounded - this is my standard test cube as it provides more information than a typical cube with sharp corners. I sliced the part with KISSlicer 1.6.2 as:
  • 195°C extrusion temp
  • 55°C bed temp
  • PEI bed surface
  • Filament: 1.75mm D PLA (no name brand)
  • Destring: 1mm at 20 mm/s 
  • Extrusion width: .4mm 
  • Layer thickness: .2mm 
  • Fixed layers 
  • Infill: 33% straight 
  • 3.5 loops and 3 shells 
  • Loop1>Perim 
  • Seam Join-Loop 
  • 360° Jitter 
  • Speeds: 
    • Perim: 30 mm/s 
    • Loops: 45 mm/s 
    • Solid: 50 mm/s 
    • Sparse: 50mm/s
The goal was to print this part at 100% as a baseline and then at 5%, 10%, 15% and 20% under-extruded to compare. Photos of the first layer and completed part were taken of each test and dimensional measurements of the width, depth and height made for each test part.

To achieve the under-extrusion, I simply calculated and set the E-step value in the firmware (config.g in RepRapFirmware using M92). I verified the new E-step value was indeed set before each test print as well as did a quick and dirty 100mm extrusion test to validate that the reduced length of filament was indeed delivered.

Each experiment is color-coded to make it easy to digest the data:
  1. red is normal, 100%
  2. orange is 5% under
  3. yellow is 10% under
  4. green is 15% under
  5. blue is 20% under

Analysis

Let's start with the table showing the under-extrusion part measurements and observations:

As you can see here, the X and Y dimensions of the part decreased slightly with increasing under-extrusion but the Z (height) was remarkably consistent. The part mass reduced as expected, we'll see if it tracks the expected reduction in the next table. I then calculated the measurement errors as shown here:

Yes, the mass of the parts tracks the expected loss due to the under-extrusion. So we know for sure that the parts were indeed being under-extruded.

Even at significant - 20% - under-extrusion, the part dimensions are quite good.

Now let's look at the photos of these parts.




Finally, I wanted to see if I could calculate an effective filament diameter - that is, what diameter of filament would result in the same decrease in extrusion volume in the print if it were extruded at 100%. Here are the calculations:

The important column is the Calculated diameter - it shows what the corresponding filament diameter would be to produce the associated under-extrusion. Surprising huh? So if we accept that under-extrusion up to about 10% produces reasonable parts, then your filament could vary from 1.75mm to 1.66 mm in diameter and also yield respectable looking parts.

Conclusions

What may be surprising and counter-intuitive to many, it is clear that under this set of conditions, filament and part geometry that significant under-extrusion up to 10% under was basically insignificant. The first and top layers were filled completely with no gaps, the walls (perimeters) were also tight and looked excellent. Dimensionally, the parts are all within realistic expectations for FFF 3D prints. I carefully observed the infill as these parts printed and the infill also looked indistinguishable over this range of under-extrusion.

At 15% under-extruded, I really didn't see any visual difference but under magnification, both the first and top layers show striations due to the edges of the extruded paths not quite bonding as closely to each other.

At 20% under-extruded, there were visible gaps in the internal perimeters as well as visible striations on the first and top surfaces. But surprisingly, even these 20% UNDER-EXTRUDED parts looked quite respectable.

Family Portrait

I did not perform strength tests for any of these parts. One could argue that reducing the amount of plastic should result in weaker parts. I agree. The 20% under-extruded part showed pronounced gaps between perimeters, surely that would be weaker than tightly bonded perimeters. But how strong is strong enough?

The bottom line is, FFF 3D printing is surprisingly robust to non-trivial under-extrusion in the range up to 10% under-extruded, and possibly higher depending on your requirements. This is why I have been saying for years that I don't advocate tweaking e-steps, slicer flow adjust or any other slicer extrusion fudge factor for reasonable filament diameters.

Arguably, if you have a demanding part that requires the best precision you can muster, then perhaps setting the measured filament diameter in your slicer (and validating your extruder calibration) might make sense - but please don't use fudge factors like flow adjust.

At some point, you are just chasing zeros. This is plastic, after all, that is melted, squirted out of a ridiculously small orifice and deposited in layers to make a 3-dimensional object! Don't expect CNC machined metal precision. Realize that 0.01mm is only four ten-thousandths of an inch (0.00039)!

Next Steps

The calibration cube was an "ideal" part, it would be interesting to run this same experiment with real-world parts (anything but Benchys please). I would expect similar results based on my experience.

It would also be interesting to repeat this with other filaments, especially ABS, PETG and TPU.


Musings on Blobbing and Stringing - Part 2

By SublimeLayers → Tuesday, October 31, 2017
This is the second and final part of Musings on Blobbing and Stringing. In the first part, I posed the question "Why does blobbing and stringing happen?" In this part, I'll attack "Ok, so what do we do about it?" head on.

Before we get started, I gently (but firmly) ask that you do these three things:

  1. Read Part 1!
  2. Follow the advice in Part 1 and c a l i b r a t e    y o u r    e x t r u d e r
  3. Have realistic expectations.

The first item on the list is easy, go do it now. The second item is much less painful using the tool I designed and show how to use in the video. Yeah, it does take a little time but most things worth learning and doing do. Printing with an uncalibrated extruder is like driving a car with a faulty speedometer through a school zone – and you know what that gets you (a speeding ticket).

The third item on the list is critical. Believe it or not, there is no magic formula, no silver bullet, no Gregorian chant that will ensure that all of your prints will be blob and string free. Fused Filament Fabrication (FFF) 3D printing is complex with many interdependent variables. You may have noticed that I emboldened, underlined AND italicized the term "interdependent". This is really important to realize - really important.

So much folklore in the various 3D printing forums and groups makes the blatant, irrational and totally incorrect assumption that a 3D printing problem – particularly blobbing and stringing problems – can be solved by changing one or even two, three or four things. Nothing could be further from the truth, and expecting a simple solution will only set you up for frustration and failure. But take heart, armed with the knowledge in Part 1 and the tested and proven strategies presented here in Part 2, you do have a fighting chance!

Let's take a look at some pre-requisites and why they are important

  1. Your printer must be mechanically sound and calibrated. Think about it, if your printer motion mechanics are sloppy (even a little bit) the nozzle will likely overshoot rapid direction changes, such as those at a corner, and leave what appears to be a blob. Movement in the Z axis can squish layers and create odd blob artifacts. These sorts of artifacts are easy to spot and identify to an experienced eye and can be easily resolved.
  2. Your extruder must be calibrated. Where have I read that before? Oh yeah, in Part 1 and in the list above! If the extruder is instructed to deliver 10mm of filament but actually delivers 11mm, it is over-extruding by 10%. Sometimes you may not even notice a 10% over extrusion. But at some point, printing a model with thin walls or small diameter through holes – or any other of a host of geometric features – that 10% WILL create problems with blobbing/oozing. More on geometry below.
  3. You need to understand and, ideally, calibrate the melt temperature of your filament. You can't – and shouldn't – rely on the filament manufacturer's "recommended" extrusion temperature. Some get it right, most don't and in all cases, it also depends on your specific extruder, temperature monitoring accuracy, and many other variables. This one is also complex due to the wide variety of materials we have available to print. What works for one filament can actually make things much worse for another. TPU is a good example, extruding TPU at even a slightly elevated temperature results in spits and spats and horrible looking parts. Whereas a 5° increase in PLA extrusion temperature might actually eliminate a stringing problem. Confused? So is most everyone else. The point is, realize that not all filaments (by these I mean major classes of filaments like PLA vs ABS vs PETG etc) behave the same with respect to extrusion temperature, print speed/flow rate, and many other variables.
  4. Finally, the model geometry can, and often does, have a profound influence on print quality. Some geometries are simply going to be more difficult to print. Take the calibration pyramid model shown below. This model is a torture test for string elimination. I do plan to write a post on evaluating the printability of models but let's take a little side trip here to help your understanding in this context on blobbing and stringing.

    Analysis: The four corner posts on this model have very small cross-sectional areas. That should tell us that these layers most likely won't cool sufficiently before the next layer is applied and that will most likely result in them slumping or warping. So, what do we do? Most would simply blast the print with cooling air from their part cooling fan. But in this case, the part was printed in PLA and that cooling air also cools the filament at the tip of the nozzle so it strings – horribly – when the nozzle moves from one post to the next. That's what PLA does at the lower end of its melt zone, it strings horribly. The solution, in this case, was to slow down! Minimal part cooling air was used for this print. Slowing down gave the layers sufficient time to cool and there was no stringing from post to post to boot. Slowing down might be non-intuitive at first but it is one of the most useful tools in your tool chest.

Now we get to the good part "Ok, so what do we do about it?"

As you read this section, keep item #3 in my list in mind: Have realistic expectations. It is not possible for me to prescribe a set of slicer parameters that will work for your printer, extruder, filament, and model. What I can do is get you thinking about what strategies can be used to minimize print quality issues so you can do a few sample prints to test them. Believe it or not, once you've done this process a handful of times, you begin to internalize it and learn to slice and print most any part confidently with minimal issues the first time. But you have to be willing to 1) think about what you are doing, 2) think about why you are doing it and 3) be willing to do a test print or two (or three) to gain experience - I call these the three step process.

Keep in mind that the following blobbing and stringing mitigation strategies are highly interdependent. While implementing one of them might result in a big improvement, adding another could wreak all havoc. That's why it is important to follow the three step process.

Blobbing and Stringing Mitigation Strategies

#1 Minimize Nozzle Moves

The first thing to realize is that blobbing and stringing occur when the nozzle has to move from one part of the print to another. If the printer could simply print a continuous bead of filament, there would be no opportunity for blobbing and stringing (assuming the pre-requisites have been met). So that should be the first clue. When slicing a model, try to minimize the number of moves or hops the nozzle must make. This is especially true when printing perimeters – if your slicer allows you to print the perimeters (or loops) in one smooth, continuous bead, do it. This is why "vase mode" is so effective, it prints one continuous spiral of filament, in one perimeter, from the base to the top of the print. Not all slicers have a vase mode though.

The physical layout of multiple parts on the print bed also has an impact. Consider three parts. Is it better to place them in a line or roughly in a triangle? The answer to that depends on how your slicer handles inter-part moves like this. If it always prints a layer in 1-2-3 order, then a triangular layout eliminates moving the nozzle across the middle part in a linear layout. Little things like this can make a difference, so pay attention and think about what you are doing.
Many slicers have features to eliminate short fill segments. If your surface finish isn't critical, this option can minimize the number of nozzle moves. 

#2 Print Perimeters Inside Out 

If your part geometry and dimensional accuracy requirements allow it, print perimeters "inside out". This ensures that any extra blob will be deposited inside the outer, most visible, perimeter where it does no harm. Most slicers have options to do this. KISSlicer 1.6 has a new feature called Join-Loop that prints the outer perimeter and the inner loop in one continuous bead, thereby eliminating extraneous nozzle moves. Although I use KISSlicer in my YouTube tutorial Getting Loopy - All About Perimeters and Loops the general principles apply to any slicer.

#3 Slow Down

As you learned (or should have) in Part 1, excess extrusion back pressure is a primary culprit to blobbing and stringing. At high print speeds, the extruder is working harder to push filament and that results in more back pressure when extrusion stops. Slowing down minimizes this back pressure. If you have a challenging geometry and/or filament, many times simply decreasing print speed will magically eliminate the problem.

#4 Watch that Fan

Don't assume that more part cooling air is better. As I mentioned in the analysis under model geometry above, too much air can be detrimental. In fact, if you slow down our print (#3) less cooling air should be required and you are minimizing back pressure issues. This is just a simple example of interdependence. In general, I use the least amount of part cooling air directed with laser precision (not blasted from a big fan or two or three) precisely where it is needed. You can learn more about that in this post: The Tusk Fan Shroud.

#5 Use Wipe

Wipe is a slicer feature implemented specifically to help mitigate stringing and blobbing and most slicers support it. It is simple in concept and does exactly what it sounds like – it wipes the nozzle on the previously printed extrusion path in an effort to clean off any excess filament due to back pressure oozing. Here's a simple diagram to show how it works:
Generally, you specify the wipe distance in mm. Wipe is a docile blobbing and stringing mitigation feature and there is very little harm in using it routinely. My default slicing profiles all add between .5 to 1mm of wipe, depending on the filament. The one exception is sticky filaments like PETG, wiping PETG can actually create stringing problems so it might be worth disabling wipe in this case.

#6 Retract, but be careful

Of all the blobbing and stringing mitigation features known to modern man (and slicer), this one – retract – is the most used and abused. Retract is the sledgehammer feature for blob and string mitigation. Most slicers call it retract, KISSlicer calls it destring. Understanding retract is so important that I've written extensively about it, including this most popular post on my blog: Some musings on retracts. I highly recommend reading that post, it might open your eyes to how and when to use retracts.

In a nutshell, what retract does is suck or pull the filament back up into the hot end at the end of a printed path – right before the nozzle lifts to move to a new place – in an attempt to decrease backpressure inside the hot end. How far and how fast to retract (and advance on the other side) is highly dependant on the type of filament, type of extrusion system and hot end, extrusion temperature and even other slicing parameters like infill type and density (believe it or not). Suffice to say "more retract is not better". In fact, too much retract or retracting or advancing too fast can create other more complex problems that are much harder to diagnose.
As you can see in this illustration, molten filament that was in the heat block ready to make its exit is quickly pulled back up inside the hot end. If you pull this filament up too far it can enter the heat break or heatsink and solidify. That's called a plug and it basically ruins your print and day.

The other thing to be mindful of (and this is discussed in the post I linked to) is that melted plastics are not well-behaved fluids. A well-behaved fluid is called a Newtonian fluid and water is a classic example. An example of a non-Newtonian fluid is Silly Putty™. If you pull on opposite ends of a clump of Silly Putty slowly, it will stretch and draw a long thread (string!). If you pull quickly, the Silly Putty will snap cleanly like a cracker.


Molten PLA, ABS, PETG, TPU, Nylon, Polycarbonate and other 3D printable filaments are anything but Newtonian fluids. Strange things happen when these molten filaments are pushed through small orifices like the printer's nozzle and they aren't always well behaved when you heat them up or cool them down. It isn't necessary to understand the science of non-Newtonian fluids, just be aware that your filament may not behave the way you think (or would like) it to behave. When you read "increase your retract distance and speed" on a forum somewhere, PLEASE stop and think about it before blindly trying it. Because the system is so complex and interdependent, making a non-sensical change like increasing retract distance might sort of work for the part you are printing now but at some point, I guarantee, it will come back to bite you later.

#7 Hop

Hop, or Z-lift as its called in some slicers, is a feature that attempts to snap the filament cleanly off the nozzle tip at the end of a printed path. Simply, the printer stops extruding and quickly raises the nozzle a specified distance (usually in mm). Z-lift can be effective at managing blobbing and stringing or it can make them nightmarishly worse. Think about the Silly Putty example above. If your molten filament behaves like Silly Putty, then a short quick hop would cleanly snap it, preventing a blob or string. But what if your filament behaves the opposite of Silly Putty? Then the hop would actually draw out a long fiber that will be transferred all over your part.

So, how can you know which way your filament will behave? The simple answer is by careful observation of controlled tests. Not very gratifying, I know and I apologize for that. Your printer's rapid movement speeds, the extrusion temperature, filament type, and many other parameters affect the effectiveness of hop. And to complicate things, hop, retract and wipe can (and usually are) combined together, resulting in inexplicable interactions.

Some printers simply can't hop fast enough to have much positive effect and might actually draw out a long filament instead of snapping cleanly. Most Cartesian printers with a screw-driven Z axis fit into this category. Delta printers, on the other hand, can hop very rapidly.

The other thing that Z hop does is lift the nozzle for clearance as it is moved to a different place on your print. Generally, a very small amount of lift, say one layer height, is enough clearance.

At the risk of being dictatorial, here are some recommendations based on years of experience printing LOTS of parts in all of these filaments on both Cartesian and delta printers:

  1. If your printer has a slow Z axis, don't use hop (except for clearance as described above).
  2. Don't use hop (or use very little, like .25mm) with stringy filaments like PETG, Nylon and TPU.
  3. ABS and PLA generally benefit from a short rapid hop of 4mm or so. I do this on my delta printers with good results.
  4. Filaments filled with materials like carbon fiber, wood flour, metal powders, etc generally don't string a lot and hop can be used with them.
  5. Combine a little hop with retract. This is somewhat dependant on how your slicer prioritizes these actions and they all do it a little differently. Ideally, you want to perform the hop and retract simultaneously.

#8 Polish your nozzle

I've written about this in the past but surprisingly few people do it. But stop and think about it for a moment – if your nozzle tip is rough and dirty, wouldn't you expect the extruding filament to stick to it? So at the end of a printed path, that sticking filament is going to draw into a long string. Polishing your nozzle is such a simple thing but can have a big impact on print quality.

#9 Preload - a feature unique to KISSlicer 1.6

I put this one last simply because it is unique to KISSlicer 1.6. But, from a blobbing and stringing mitigation perspective, Preload is remarkable – especially for very elastic filaments and extrusion systems (i.e. a Bowden tube). I'm in the final stages of editing a YouTube tutorial on Preload so watch for that.

Preload numerically models how the printer extrudes filament and dynamically adapts the head (print) speed and extrusion pressure during the print. In other words, Preload manages backpressure so that at the end of a printed segment, there is no appreciable back pressure to contribute to blobbing and stringing.

Conclusion

I hope this post has given you a better understanding of the complexities of 3D printing as it relates to blobbing and stringing on your prints. Through understanding comes the ability to manage or control the process to get the results you want. The good news is, if you read this post, I am confident you will do fine and your prints will improve markedly! It's the folks looking for quick fixes and unwilling to take the time to learn and understand that will continue to struggle.

One last pearl of wisdom...

When I confront a situation – a difficult model geometry, an oddly behaving filament, or other anomalies – that just seems to defy my attempts to get a nice print, I start from ground zero. By this I mean, I disable hop, wipe, retract. I make sure my extruder is properly calibrated. I tune the extrusion temperature and flow rate for the filament and I do a simple test print. Then I start at the top of the list and think about each item and what I've observed so far.

It was Albert Einsten who said, “The definition of insanity is doing the same thing over and over again, but expecting different results.”

Musings on Blobbing and Stringing - Part 1

By SublimeLayers → Wednesday, October 25, 2017
Today's musing is the first of two parts dealing with those blobs and strings that degrade the appearance of your prints. Once you understand what causes them, you have a fighting chance to significantly reduce or, gasp, completely eliminate them. I kid you not, if you take the time to understand why these unsightly artifacts form on your prints, you can learn to eliminate them. So let's dive in...

In this part, we'll consider the question; "Why does blobbing and stringing happen?"
In Part 2, we'll consider, "Ok, so what do we do about it?"



The simple answer to the question in this part is "excess pressure in the hot end". This is often referred to as back pressure. Think about it for a second, the extruder is merrily pushing filament into the hot end, where it is melted and pushed out the tiny hole in the nozzle. Now, the extruder stops - perhaps to move to another part of the print or to start a new layer. In a perfect world, when the extruder stops, the molten filament would stop flowing and the world would be good. But it isn't a perfect world for four reasons (there are others but let's deal with the big culprits, shall we):

  1. filament elasticity and viscoelasticity
  2. back pressure
  3. the nozzle is "open"
  4. gravity
Let's look at these and, most importantly, how they interact with each other. Numbers in "( )" refer to the items in the list above.

During a print, pressure is generated by the extruder as it forces solid (cold) filament into the hot end's heat block, where the filament melts. This molten filament is viscoelastic (1). That is, it acts both like a spring and can compress as well as like a viscous fluid (1) that can flow. Keep in mind that some filaments, like TPU and PETG, are themselves elastic (1) and can also compress like a spring And, just to be inclusive, Bowden tubes (short and long) create spring-like compression of the filament running through them. To say this succinctly; like a spring, the filament and molten filament is compressed by the extruder pressure because it is elastic.

The pressure exerted on the molten filament is the force that pushes it out through the nozzle to form a layer of your print. When the extruder stops extruding, this pressure does not immediately drop to zero. There is some residual pressure in the hot end and that is what we call back pressure (2). If this back pressure is great enough (and it often is, otherwise I would not need to write this post), the compressed molten filament will look for an escape - and it finds one out the nozzle opening (3). And, for some very low viscosity molten filaments, they can actually pour out of the nozzle due to gravity (4).

If it were possible to close off the nozzle opening (quickly) and reduce the back pressure (ideally) inside the hot end, there would be no oozing or stringing when the nozzle moves from one part of the print to another. But, that technology is not available in the RepRap world quite yet (but smart people are working on it). So, what are we, dear reader, to do?

We recite incantations to the 3D printing deities, we jump through hoops, we create urban myths, we develop magic elixirs, and we often just cross our fingers and hope for the best.

Or... we carefully consider the issues described above and thoughtfully learn how to mitigate the problems using the tools available to us - the primary tool is, of course, the slicer. However, there are others. Let me touch on a scant few of these others first, just to get your mental juices flowing before I dive into slicer strategies in Part 2.

  1. Calibrate your extruder - if your extruder is over extruding you are generating more pressure than is required and that ultimately increases the back pressure in the system. So, let me repeat, c a l i b r a t e  y o u r  e x t r u d e r. See my Extruder E-Step Calibration video for a simple tool and technique to do it.
  2. Make sure your extruder is functioning properly and the drive gear is clean of filament shard and engaging properly with the filament. Also make sure the tension is set properly - too low and the filament slips, too high and you compress (diametrically) the filament and create other problems.
  3. If you are using a system with a Bowden tube (delta printer for example) make sure the tube is as short as possible. Also, and ONLY if you have an extruder that does not damage the filament surface like a Bondtech QR or BGM, use 1.8 mm ID PTFE tubing. The new Capricorn XS tubing (the black stuff) that is lower friction with a 1.9mm ID looks promising too and I'm testing it now. Overlong Bowdens, lots of slop inside the tube, and friction all increase the spring force - which as we now know, can lead to excess back pressure.
  4. Calibrate your hot end temperature - I didn't mention this above, but most molten filaments become more fluid with increasing temperature. So, if you think you are extruding at 195°C but your hot end is actually heating to 220°C, the melt will be more fluid, leading to blobbing and stringing issues.
  5. Minimize the distance between the extruder and the nozzle tip. Sometimes you have no control over this but if you do, then minimize it. One of the reasons the E3D-Online's Titan Aero extruder/hot end is so good (i.e. produces parts with minimal blobs or strings with very little work) is due to the very short distance from the extruder's drive gear to the nozzle tip. 

So, your homework before I post Part 2 is to think about what you've learned here. Try to visualize what the filament is doing as it passes into and out of your hot end. Why does it want to blob or string? What might you do, knowing the limitations and the inner workings of the system, to combat these problems. And don't forget to c a l i b r a t e  y o u r  e x t r u d e r. Enlightenment will follow...

and as always, please follow my blog and subscribe to my YouTube channel so you don't miss it!

Link to Part 2


Installing a Bondtech QR extruder on my Rostock MAX V3

By SublimeLayers → Sunday, October 30, 2016
It's no secret that I'm a big fan of the Bondtech QR extruder. The big advantage these extruders have over others is that they use driven counter-rotating drive gears to push the filament. That simply means that the filament is being pushed from two sides, powerfully, unlike most extruders that have a single drive gear attached to a stepper shaft and a pressure idler on the opposite side of the filament. This dual drive gear system generates a huge amount of torque and the geared (standard 5.18:1 geared Nema 17) stepper provides better than 450 steps/mm extrusion resolution.

It was only a matter of time before I installed a Bondtech QR on my new SeeMeCNC Rostock MAX V3. The install was straight forward and almost a drop-in replacement for the stock EZRstruder using the simple Bondtech QR Rostock MAX V3 mount I designed (get a copy of the STL here).

Preparing the Printed Mount

Print the mount with three perimeter and three shells (top and bottom) with 50% infill. The hole in the narrow edge is tapped for an M3 cap head screw to secure the stepper motor. Make sure your stepper fits into the large round hole and sand or scrape the bore until it fits if not.

Installing the Bondtech Q3

Turn off your printer the remove the top cover and disconnect the EZRstruder connector from the RAMBo. Then remove the side plate that the EZRstruder is mounted to, the entire plate and extruder should come right off. Remove the EZRstruder and save the two mounting screws and nuts. Attach the printed mount using these screws as shown here:
Install the new geared stepper, make sure its connector is facing down as shown:
Secure the stepper with an M3x12mm socket head screw inserted into the recess and hole you tapped earlier. Don't over tighten.
Now reassemble the Bondtech QR to the stepper motor following Bondtech's Assembly & Installation Guide.
 
The Bondtech QR rotates in the opposite direction from the EZRstruder if wired the same way. This can be corrected either in firmware or in the wiring. Unfortunately, changing the stepper direction in Repetier firmware requires recompiling and uploading new firmware, so let's simply change the wiring to accommodate the direction change.

On the right is the original EZRstruder connector. Note the BLUE-YELLOW-GREEN-RED wires from left to right. On the left is the connector for the new stepper, note the BLUE and YELLOW wires are reversed, this changes the direction of the stepper. Your Rostock MAX V3 kit came with extra connectors and pins in the RAMBo box. The photo shows the bag that came with mine. If you don't have those or don't want to crimp new pins, you can cut and splice the old stepper harness with the new one, just make sure to connect BLUE to YELLOW and YELLOW to BLUE wires. 

Install the side plate with the new Bondtech QR and route the wiring to the RAMBo. 
(Here's looking at you, Bondtech QR!)

Now connect the stepper to your RAMBo as shown here:
And that's it for the installation.

Configuring and Calibrating

The only thing you need to change in Repetier is the "extruder 1" steps/mm. The good news is, this can be done in EEPROM so no recompilation is necessary. You do need to use a control program that allows you to edit the EEPROM. MatterControl, Repetier Host and OctoPrint with a special plug-in all do. I use OctoPrint here.

Here's what you are looking for: Extruder 1 steps per mm, this is the default EZRstruder value (92.4mm/s) that you most likely have in your EEPROM.
Change that to a target default value, I typically start with this:
That should get you in the ballpark, now it's time to test the Bondtech QR and calibrate the extruder. Martin (Bondtech inventor) shared a quick technique to do this:

Insert a short piece of PFTE tubing (2-4") in the output side of the Bondtech QR, make sure it is pressed in all the way. Next feed apiece of filament in from the top of the extruder and push about 1" out the bottom of the tube. Score the filament with a sharp hobby knife right at the end of the tube and snap it off - PLA works well for this.

Turn on your printer and warm the hotend up to 170°C or so - the firmware will not allow you to test the extruder unless the hotend is hot! Once up to temperature, use your control program's jog controls to feed 100mm of filament. 
If you wired things properly, about 100mm of filament should have extruded from the end of the tube. Use digital calipers to measure the actual length. It helps to start with straight filament! In my case, the amount extruded was 99.20mm, a little less than the 100mm I requested. So a quick calculation will fix that:

(100mm / 99.2 mm) * 458.55 steps/mm = 462.25 steps/mm

The 458.55 steps/mm is the default value we entered in EEPROM. The calibrated calculated value is 462.25 steps/mm so enter that into EEPROM any you have a calibrated Bondtech QR ready to print on your Rostock MAX V3.