Introduction: Build and Improve a 3D Printer

This Instructable is about building and improving a 3D printer. The idea was to build a new 3D printer with a small budget. Using regular available parts, in such a way that the printer can last for some time. And the 3D printer must be able to deliver a good quality printing.

Since building of my first 3D printer from LEGO, there have been some small changes in the design of 3D printers. But the biggest difference is in the price of a complete 3D printer. That has decreased considerably. In particular, the Chinese clones have become so cheap that it almost doesn't pay off to buy all parts separately.

The original printers have also become cheaper. But because 3D printing is primarily a hobby, they still are outside my budget.

Because of the low price, I opted for an Anet A8 3D printer. This could also have been a Tronxy X8. But this one was cheaper, and I could read the manual before buying the printer.


The number of steps of this Instructable shows that the Anet A8 is not a plug and play printer. It's a DIY kit, you have to build it yourself. But this printer comes with a good manual and some Youtube videos. And it isn't that hard to build. Some part are even pre-assembled, and connecting the electronics is easy. Every wire and connector is well labeled.

The first steps are about the required parts, and testing all electronic components of the 3D printer. Then I've documented the assembly of the printer with images and some additional notes. This is followed by alligning the axis, adjusting the heatbed and inserting filament.

I've installed the required software and configured it for the Anet A8. These configuration files can be downloaded for an easy configuration of the latest version of the Cura software.

The final 20 steps are about testing and improving this printer: Determing the optimal print temperature and print speed. Adjusting the belts, and improve the stability of the X, Y and Z-axis. The latter is necessary to increase the print speed.

Step 1: Selecting a 3D Printer

Currently I own an Up Plus 2 3D printer. This is a simple (and not the fastest) printer to create 3D objects with a maximum print size of about 13 x 13 x 13 cm. This is sufficient for most projects. But for some projects it's necessary to split 3D objects into multiple parts. A second/new 3D printer must be able to handle a volume of at least 20 x 20 x 20 cm. I don't expect to have to print larger objects in the near future.

At first I have focused on the price of the printer. I didn't want to spend more than 150 euro ($170) for a printer. Secondly, I looked at the availability and customer reviews. The first search result on the Gearbest website to 3D printers between $100 and $200 yielded 28 printers. The cheapest printers were about 120 euro ($150, shipping included).

The three cheapest printers, at the time of this selection, were the Tronxy X1, the Anet A8 and the Tronxy X8. And I've made a comparison of these three printers.

Although the Tronxy X1 is a beautiful design, it falls off because of the print volume. This printer is also made for printing with PLA, and not with ABS. This requires a heatbed. The design with the 2020 and 2040 aluminum bars seems to be adaptable, but requires a lot of additional parts.

There is little difference between the Anet A8 and the Tronxy X8. They are both Prusa clones. And they don't differ much from each other in terms of possibilities. Because of the lower price and reviews (over a 1000 good reviews) I've chosen for the Anet A8 3D printer. I don't believe that there is much difference between these two printers. And I expect that the Tronxy X8 printer can be made with the Anet A8 manual (and vice versa).

The Anet A8 printer also has a shorter delivery time of 72 hours (in fact 3-7 days, after order processing). Which means that the product isn't shipped from China, but from a Gearbest warehouse in Europe. And for items within the EU I do not have to pay additional customs.

130 euro for a 3D printer is very cheap. I therefore expect that I have to replace certain parts to improve this printer. I especially wonder if the power supply can provide the required power to heat both the heatbed and the nozzle (to the maximum specified temperatures).

My experience with this kind of DIY projects is to expect a 30 to 50% additional costs. For example to improve the electronics, the frame or to make a housing. I expect to spend around 200 euro in total (including the printer, shipment and 1 spool of 1.75 mm filament).

Although I already own a 3D printer, I will make all improvements for this printer (where necessary) with this Anet 3D printer. As a result, anyone who buys such a printer can also carry out these adjustments themselves.

I already have gained some experience with 3D printers. My first Instructable is about making a 3D printer with a LEGO frame (this DIY kit contains, besides the required LEGO, all components to make this printer).

I also have experience with projects that require a lot of electric power. My weather lamp contained 288 LEDs, which together consume a maximum current of 10 Amps. The experience gained from my previous projects will be included in the assembly and improvements of this printer.

Step 2: Anet A8 Updated Version

While searching for information about the Anet A8 printer I came across different stories about this printer. In particular, the first versions of this printer seemed to suffer from some problems. Most complaints were about the mainboard. This couldn't handle the required currents for the heatbed and the nozzle properly. Which could result in overheating and even in short circuits.

Given my experience with high currents, I will measure the actual power consumption of both the heatbed and the extruder. To determine whether the power supply can supply the required power. And to see if the wires are sufficiently for this load.

The mainboard of this printer has had an upgrade. The version number of this new mainboard is V1.5. The plugs to connect the heatbed and the power supply to the mainboard have been replaced by screws. This should give a lower contact resistance.

The new mainboard itself still does not have a power fuse. But the wire between the power supply and the main board now contains a power fuse.

Always check if version V1.5 of the mainboard is included. The at Gearbest ordered printer has SKU number 173329001 (with a date of 2018-06-21) contains this newer board.

Step 3: Required Material

The following parts are used in this instructable:

Don't buy all parts in the same order, it's better to ship the printer separately. The 3D printer is a large package with almost no room inside te box for additional items.

Step 4: Printer Parts

The 3d printer is delivered in a large box. And all parts are neatly packed in covered styrofoam trays.

Certain parts are already partly assembled: The pulleys are mounted on the stepper motors. And almost all electronic parts are labeled, to let you know where to use them. The micro SD card includes a checklist and several manuals (all in English).

Certain parts do not match with parts on the product photo (and documentation). The bearing blocks on the product photos are made of aluminum. However, there are plastic parts in the box. This should not make a difference for building this printer. But it does explain why this printer is cheaper than other printers.

Step 5: Printing Material

About 10 meters of PLA filament is included with this printer. This packaging is normally supplied with a 3D pen. It's therefore necessary to order additional filament. This must be PLA or ABS with a diameter of 1.75 mm.

PLA and ABS are the most used types of printing material for 3D printers.

PLA (polylactic acid) is a biodegradable thermoplastic which is easy to use. It has a lower nozzle temperature (between 180 and 220 degrees) than ABS. And it does require a heatbed temperature between 20 and 60 degrees. Meaning it can be used without a heatbed, although it definitely helps to avoid warping. Another benefit is that it's almost odorless (smells like corn).

ABS (Acrylonitrile butadiene styrene) is an oil-based thermoplastic. Products made of ABS have a high durability and withstand higher temperatures than products made of PLA. It requires a high nozzle temperature (220-260 degrees) and printbed temperature (80-110 degrees). These heatbed temperatures are required to prevent warping. ABS must cool down gradually. Therefore, place the printer in a draft-free but well-ventilated space.

Step 6: Motor Check

It is wise to check the electronic parts before assembling the printer. I've divided these checks into three parts: motors, heatbed and extruder.

First I've tested the XYZ stepper motors. These can be tested after connecting the power supply, the LCD screen, the motors (4) and the XYZ end stops. The fifth (extruder) motor is tested with the extruder.

Select "Menu", "Quick Settings" and "Home All" in the LCD menu. This turns on the X, Y and Z motors one by one. The X motor stops after pressing the corresponding endstop (or after some time). Now the Y motor starts. Pressing the Y endstop stops this motor. Then both Z motors start to run. Both Z engines stop after pressing the Z end stop. Then the X and Y motor will run for a very short while.

The power supply delivers a voltage of 13 Volts. The stepper motors use very little power (max 0.2 A) without load.

Don't forget to select the required mains voltage for the power supply (110 or 220 Volt) before usage.

Step 7: Heatbed Check

Connect the power supply, LCD screen and both the heatbed and the extruder. The heatbed doesn't work if both temperature sensors aren't connected. The printer stops heating (the nozzle and heatbed) if one of these sensors fails or a wire break occurs.

Everything in this test can be operated by the LCD menu. But I've chosen to do use an USB cable with the pronterface software (com4 port, 115200).
The heatbed temperature is set to 50 degrees for a first test. The power consumption increases, and due to the load the voltage decreases slightly. The printer now consumes approximately 10.5 Amps at 12.88 volts. About 145 Watts. And it takes about 90 seconds to heat up the heatbed to 50 degrees.

In a second test, the temperature of the heatbed is set to 100 degrees. The graph above is made by measuring every 15 seconds. The temperature rise decreases as the temperature difference with the environment increases. And after 9 minutes the temperature of the heatbed reaches 100 degrees celcius.
Thereafter, the temperature remains constant between 99.88 and 100 degrees. You can query this in pronterface with the M105 command (display temperatures). The heatbed stays well on temperature, but still consumes between 50 and 100 Watts.

When the temperature of metal increases, it expands and gets a greater electrical resistance. You normally don't notice this, but the temperature difference in this test is about 80 degrees. And the graph clearly shows a current decrease over time.

The total resistance of the heatbead increases from 1.1 Ohm (20 degrees) to 1.44 Ohm (100 degrees). A difference of 0.34 Ohm over 80 degrees, or 0.00425 Ohm per degree. Copper has a temperature coefficient of 0.0039 and aluminum has a temperature coefficient of 0.0043. This test shows that this heatbed is made of aluminum.

Because of the increased resistance, the power of the heatbed decreases from 150 to 120 Watts (at 100 degrees). This heatbed can not become much hotter than 100 degrees, because of the increased heat loss and the power decrease.

Replacing the power supply (12 Volt, 30 Amp) does not accelerate the heating process. The maximum power consumption of the heatbed is fixed.

The whole circuit consumes 9.98 Amps at a voltage of 12.04 Volts . An electrical power of 120 Watts. This is the voltage delivered onto the mainboard. However, the measured voltage on the heatbed is 11.45 Volts. A voltage drop of 0.6 Volts (5%). In other words: 6 Watts (out of 120 Watts) are lost between the power supply and the heatbed.

Further measurements give a voltage drop of 0.17 Volts across the mainboard, and 0.43 Volts across the heatbed wires. The plug at the heatbed does not cause any voltage loss. A total of 1.7 Watts is lost in the mainboard (mosfet). And 4.3 Watts is lost in the connection wires to the heatbed. These wires will be replaced by other wires after assembling the printer. The heatbed currents are up to 12 Amp. This requires AWG16 wires (1.3 mm), or two AWG 20 wires (0.81 mm).

My first choice is to insulate the heatbed. This should reduce the power consumption of the heatbed. I also intend to place the printer inside an enclosure. This holds the heat somewhat. This also should reduce the power consumption of the heatbed.

Step 8: Nozzle Check

In this step I'll test both the nozzle and the accompanying stepper motor.

The motor and the temperature sensor are already connected in the previous step. It's only necessary to set the desired temperature in pronterface (or on the LCD panel). In contrast to the heatbed, the nozzle heats very fast. It reaches a temperature of 170 degrees in 1 minute. And 20 seconds later the temperature is 200 degrees. Measurement shows that the nozzle has a capacity of 40 Watts. It consumes a current of 3.6 Amps at 12 volts.

At a certain temperature the current to the nozzle it is limited by the mainboard (about 20 degrees before reaching the requested temperature). This prevents the nozzle from becoming hotter than the desired temperature. As a result, the nozzle heates less quickly for the last 10 seconds.

We can test the stepper motor only if the nozzle is at the required temperature to melt filament.

Step 9: Power Supply

This printer comes with a 250 watt power supply. According to the specifications it can deliver 20 Amps at 12 Volt.

The heatbed consumes the most power: 10.5 Amps, about 130 Watt. Followed by the 40 Watt nozzle with 3.6 Amps. Remains approximately 6 Amps for the 5 motors and the electronics.

The stepper motors each have a specified current of 0.9 Amps. Together they consume up to 4.5 Amps. Resulting in about 1.5 Amps for all other electronics. And the mainboard and LCD display consume little power.

On paper, and in practice, this power supply provides sufficient power for all electronics. However, it will run almost continuously at full power without active cooling. It is an open housing, and one side of the housing is used as a cooling element. This works fine as long as the power supply can dissipate heat well. But like all elecronics, active cooling will extend the life span. That's why I'll place an additional fan above the power supply.

Replacing the heatbed mosfet on the mainboard by an external mosfet does not result in a higher current to the heatbed. The only difference is a lower power consumption by the mainboard. And this will extend the lifetime of the mainboard.

In terms of power consumption, only the heatbed wire disappoints. I've measured a power loss of 4 to 6 watts. However, it is not immediately necessary to replace these wires.

Step 10: Part Count

There is a part list on the SD card. Check that all parts are present. before building the printer.

Step 11: Assembly Video and Manual

There is a lot of online documentation available about this printer. Unfortunately, the version number is usually not mentioned. And some of the documentation is about an older version of this printer.

All documentation about this printer is on the supplied micro SD card. However, it remains important to check whether the documentation has been updated. I've included the supplied assembly information in this step. There is also a document with links to the most recent build video's on Youtube (by David Dan).

The videos are a welcome addition to the manual. And I would definitely look at them in advance, before assembly of the printer. It takes about half an hour (you can fast forward some parts). This gives at least an impression of the whole build process.

Step 12: Step 1: Printer Frame

After the film has been removed from the acrylic parts, building of the 3D printer can start. The removal of the protective foil takes some time. By doing this at the beginning you can perform the other steps more quickly

Assembling the printer starts with the frame. In this step the four largest acryl parts are joined together by 12 bolts and nuts. These are nonlock bolts, and it is not possible to replace the supplied bolts with lock versions.

Pay attention to the upper part. The screen appears on the left side of the printer, with the buttons to the right.

You have to tighten the screws tightly. But keep in mind that the frame is made of acryl. Do not overtighten the screws. This might crack an acrylic part

Step 13: Step 2: Support Plate

These two elements on top of the printer have two functions. First, these are the top holders of the Z axis smooth rods. Secondly, they provide stability for movements of the extruder along the X-axis.

Step 14: Step 3 & 4: Back Plate

This part is the backside of the printer. And this plate holds the Y axis stepper motor and the Y axis end stop.

Attach the two motor supports to the back plate. Then secure the motor. Tighten the screws crosswise. This ensures that the motor is placed straight. The documentation does not clearly state in the direction of the motor plug. This should point forward (first image). After assembly check if the motor is positioned straight (second image). If this is not the case you have to adjust the motor supports.

The microswitch switch is placed toward the outside of the back plate (last image). The length of the wire should be 70 cm. However, this is clearly indicated on the wire.

The part from step 3 has to be assembled at the rear of the printer's frame. This requires four screws and four nuts.

Step 15: Step 5: Front Plate

This plate is the front plate of the printer. It contains the Y axis belt support.

This printer doesn't have any belt tensioners. But these will be added later.

Step 16: Step 6: Threaded Rods

The smoothed rods in the next step determine the length of the Y axis. And these rods have a length of 380 mm. The M8 threaded rods in this step are 400mm. This leaves 1 cm on both sides of the printer for the outer bolts.

Work from the back plate towards the front plate. Start with the back plate and continue with the middle plate. The distance between these plates is determined by the side panel (150 mm). The middle acrylic sheet must not bend through the bolts.

Tighten the front 4 bolts (front plate) after the next step.

Step 17: Step 7: Y Axis Linear Bearing

The smoothed rods determine the length of the Y axis. Place the rods as shown in the manual (don't forget the four guide blocks). Check that there are no burrs at the end of the metal rods. This can damage the bearings.

Now ensure that the smoothed rods can't move in the Y direction. This can be done with the 4 front bolts (from the previous step). Then place the four small end plates.

Move the guide blocks back and forth over the rod. This should go smoothly. And as soon as the Y carriage is installed on the guide blocks, the whole must move just as smoothly.

Although the conductors and rods are greased, it is better not to touch them with bare hands. Use a pair of painter's gloves. This prevents corrosion.

It is very important that both sides are equally long. This is not clearly indicated in the manual and video. The front plate must be parallel to the back plate. A crooked frame gives friction over the Y axis!

The supplied guide blocks differ from the displayed bearings in the documentation and video (third image). The delivered blocks are made of plastic instead of metal.

Step 18: Step 8: Hot Bed Carriage

In this step I deviate from the manual and the video. I've turned the Y carriage upside down (first image). This makes the belt connection approximately the same height as the pulleys. And a straight/horizontally mounted belt gives a more evenly tension. You notice this especially when the Y axis moves completely from the beginning to the end.

To remove the foil, you must disassemble the Y carriage. When assembling, make sure that all corners are straight again. Do not directly tighten the screws 100%. It's better to fully tighten them after the next step.

Note: Usually the Y carriage plate consists of a single plate. But this construction is probably cheaper to make. And this carriage works amazingly well.

Step 19: Step 9: Hot Bed Carriage

Tighten the screws crosswise (just like the stepper motors). But do not tighten them completely. First check that the y carriage moves smoothly back and forth. Then tighten all the screws (also those of the previous step). Then check again if the carriage moves smoothly.

In step 10 the drive belts are being mounted. Followed by the placement of the heat bed (step 11). I postpone these steps until the assembly of the drive belt for the X axis (step 23).
Then I can determine where to cut the piece of belt into two pieces. This way I can divide the 'remaining' part evenly over both parts to add belt tensioners later.

Step 20: Step 12: Z Axis Motors

First, secure the motor houses to the frame. And then install the motors.

In the video, the electric wires are connected to the motor. These wires are not mentioned in the pdf manual. You can connect the wires now, but this can also be done before connecting the mainboard.

Left engine wire = 40 cm.
Right engine wire = 90 cm.

Step 21: Step 12: Z Axis End Stop

After mounting the motors, the LCD screen is mounted in the video (this is step 25 in the pdf document). But mounting this end stop is not clearly displayed in step 12 of the pdf document. Use two 30 mm bolts and two nuts (these are not listed in the pdf manual).

The height of this end stop is adjustable. And this switch determines the height of the nozzle. In fact, this is the coarse adjustment of the height, and the 4 nuts at the heatbed are the fine adjustment

Place the Z axis limit switch as high as possible. This prevents the nozzle from hitting the heatbed during the first functional test.

Step 22: Step 13 and 14: Z Axis Linear Bearing

Don't forget to mount the micro switch for the X axis end stop (not mentioned in the part list in de documentation). Place the support units (left and right Z axis nut support) and the smooth rods. Fix the rods at the top (guide rod backup plate).

Step 23: Step 15: Z Axis Lead Screws

First loosen the top two small Allen screws in both elastic couplings (do not unscrew them completely). Then turn the lead screw all the way into the 8 mm opening ot the couplings and fastem them.

These lead screws rest onto the motor shafts. This can lead to the so called z-wobble and slightly shifted layers. The couplers must be flexible if the motor and the rod are not perfectly in line. This is easy tho change when required.

Step 24: Step 16: X Axis Linear Bearings

Keep both sides at the same height and place the smoothed rods. It is not necessary to use a (small) hammer. Just turn them arround until they are in place. Make sure the rods are all way inside the left part.

Measure the distance between the rods on top of the printer. The distance between the two Z axis bearings must be the same. This ensures a smooth Z axis.
One way to check the distance is by placing the Z axis in the middle (horizontal). Then lift one of the Z axis smoothed rods. This should fall in it's orginal place without any friction.

Tighten/lock the X axis rods with two screws. These are located at the backside of the right part.

Step 25: Step 17 and 18: Extruder Assembly

Loose the screw and separate the extruder from the X carriage.

Remove the two bottom screws from the aluminum block on the extruder. These will be replaced by 45 mm screws. A spring falls out when removing these two screws. Place this in the same place when assembling the extruder.

Take the two long screws, place on each of these two m3 spacers (rings). Place the the fan protector and the fan with the stickerless side towards the fan protector. This is the part that turns. Make sure the wire is in the opposite of the two screws. This must be attached to the motor. Start with the screw which is the furthest away from the spring.

The M6 bolt near the extruder can be used to tighten the extruder to the X carriage.

Step 26: Step 19 and 20: Extruder Carriage

Attach the X carriage to the linear guides and attach the extruder.

Make sure the X carriage runs smoothly.

Step 27: Step 21: Duct Fan

Attach the duct fan to the X carriage.

The wind mouth is the only 3d printed part in this DIY kit. Remove all filament inside which blocks the airflow.

Step 28: Step 22: X Axis Motor

Place the motor for the X axis. The connector should face downwards. And check whether the pulley is properly secured.

Step 29: Step 23 & 24: X Axis Belt

I've skipped the Y Axis belt in step 10. There is more than enough belt provided for both axes. And I've divided the remaining part over both pieces for future updates. And there is about 12 cm / 5 inch additional belt.

The X axis uses about 100 cm belt, and the Y axis about 75 cm. Each belt has about 6 cm spare for mounting a tensioner. I did expect cheap rubber belts with this printer. But these are fiber reinforced belts. Do not cut them with scissors, but with the supplied pliers.

Place te belt as shown in the second image. The X carriage contains m3 thread for these bolts.


Step 30: Step 10 & 11: Y Axis Belt and Heatbed

Attach the Y axis belt with the plastic parts underneath the heat bed carriage. Make sure the belt makes a straight line. Move the Y axis pulley if required.

Place the heatbed with the long bolts, springs and m3 wingnuts. The connector faces the motor. And make sure it is level, just like your workbench.

Step 31: Step 25 & 29: LCD Display and Mainboard

Attach the LCD display and the mainboard to the frame.

Step 32: Step 26 & 27: Power Supply

This does not seem to me to be one of the safest assemblies. The 220 Volt connection is not 100% closed after installation. And any form of strain relief is missing. This does not have to be a problem, but it's a point of attention.

Step 33: Step 29: Wiring

Make sure all wires are connected to the parts. Don't connect them to the mainboard at this step.

All markers should be on the mainboard side and not on the component side.

Step 34: Step 29: Wiring

Attach the fuse holder to a threaded rod with a tie wrap. Take about 20 cm of winding pipe and start with the left Z axis motor wire. Include the red and black 12 volt power wires. Continue until the fuse holder.

Continue with about 40 cm winding pipe starting at the fuse holder. Include the Y axis end stop wire. This should go through the motor plate. Don't forget the Y axis motor wire.

Use two small pieces (15 cm) of winding pipe for the second Z axis motor and the Z axis end stop.

Step 35: Step 29: Wiring

The headbed wires and all extruder wires must go by the top of the printer.

Start with wrapping all extruder’s wires. Wrap these until the 10 cm berore the end of the wires. Also wrap the heatbed wires until the 10 cm before the end. And finally wrap the LCD wire.

With all markers on the wires, connecting them to the mainboard is easy (fourth image).

Step 36: Allign Z Axis

Level the X Axis and heatbed carriage before leveling the heatbed. Place two identical (I've used LEGO) parts underneath both the Z Axis support units. Both sides should have the same height.

Step 37: Bed Leveling

This is the hardest part when using this printer. And you probably don't want to level the heatbed after each print.

One solution is automatic bed leveling. A sensor measures the distance between the sensor and the metal heatbed. This requires some additional parts.

Another solution is usage of a glass plate: Remove all tape from the heatbed and print on a glass plate. Now you only have to level your heatbed once. And as long as you don't apply any force on the heatbed it stays at the same level.

A glass plate has some other advantages: You can continue printing on a second glass plate after removing the first one. And you don't scratch your heatbed when removing tape or filament.


Leveling the bed is described on page 62 of the operation instruction document.

Tighten all screws between the Y carriage and the heatbed. The four springs are pressed as far as possible. The heatbed is adjusted by loosening these screws slowly, until the space between the bed and the nozzle is 0.2 mm everywhere on the bed.

FIrst adjust the Z end stop height until there is less than 2 mm room between the nozzle and the glass plate.
Then adjust the headbed until the height between the nozzle and glass plate is about 0.2 mm. This is equal to the thickness of a sheet of 80 gram printer paper.
Start with one corner and loosen the spring slowly. You must be able to move the paper between the nozzle and heatbed with little resistance. Repeat this for the other corners. Always keep the paper between the heatbed and nozzle when moving to a new position. This prevents scratches on the heatbed.

Altering one corner affects other corners. Continue until you have measured 4 corners (and the middle) without changing any springs.


I've immediately ordered two glass plates with the printer. And the distance between the nozzle and heatbed doesn't change between the prints. I only have to adjust the heatbed when changing the nozzle.

Step 38: Insert Filament

Inserting filament into a MK8 extruder requires some skill. But it is easy to learn.

Filament is on a spool, and is therefore always slightly bent. Straighten about 8 cm (3 inch) of filament. And press down the tension spring (blue arrow in the first image). This removes the guide pulley from the hobbed gear, and aligns the input hole with the telfon feeding tube.

Now insert the filament straight downwards, until it's inside the teflon tube.

Inserting filament can be done with a cold or hot nozzle. If the nozzle is cold you must stop after inserting the filament. If the nozzle is hot, you can press down the filament slightly until the filament comes out of the nozzle.

Step 39: Remove Filament

Start by heating the nozzle. Until it has reached the minimum print temperature of the filament (ABS = 220 degrees). So make sure you do not touch the heating element!

Press down the tension spring and pull the filament out. This should remove all filament out of the feeding tube and the nozzle.

Step 40: Workflow

Creating an object starts with a 3D design. This can be done with Fusion 360. After the design is finished, this must be stored on your computer as an STL file. This file contains the surface geometry of a three-dimensional object.
It is also possible to download ready-to-use 3D designs from the internet (thingiverse). This is useful if you want to print something that someone else has already made. And most of these 3D objects are already converted into a STL file.

However, the 3D printer can not read STL files. The STL file only contains the geometry of the object. And this has to be converted into code rules, to be executed by the 3D printer. This conversion is done with a software program called a slicer (Cura).
This program creates a GCODE file with the necessary commands for the 3D printer. This GCODE file is printer-dependent, and can be read by the 3D printer. For this it is necessary to specify the correct printer data in Cura. This is a one-time action, and this must be done before you create the first GCODE file.

Place the GCODE file on a micro SD card to print the file from the printer menu.

Step 41: Cura 3 Software

Download and install the Cura software with the Arduino drivers. Next step is to set the printer and nozzle settings. There is a cura 14.07 configuration file on the SD card (configuration file for Cura-14.07.ini). This text file contains all printer settings. But It can’t be read by Cura version 3.

Start Cura and select 'add your printer'. The Anet A8 printer is a 'Custom FFF' printer. Modify the machine and extruder settings. The printer from the configuration file settings are:

  • X width: 220 mm
  • y width: 220 mm
  • Z height: 240 mm
  • Build plate: Rectangular
  • Origin at center = No
  • Heated Bed = Yes
  • G code type = marlin

The printhead settings are:

  • Nozzle = 0.4 mm
  • Material= 1.75 mm
  • X min 20 mm
  • Y min 10 mm
  • X max 60 mm
  • Y max: 20 mm
  • Gantry Height = 40 mm

The start and end gcode is listed in the ini-file on the SD card. I've made some modifications, and my start code is:

;Sliced at: {day} {date} {time} 
;Basic settings: Layer height: {layer_height} Walls: {wall_thickness} Fill: {infill_sparse_density} 
;Print time: {print_time} 
;Filament used: {filament_amount}m {filament_weight}g 
;Filament cost: {filament_cost} 
;M190 S{print_bed_temperature} ;Uncomment to add your own bed temperature line 
;M109 S{print_temperature} ;Uncomment to add your own temperature line 
G21                     ;metric values 
G90                     ;absolute positioning 
M82                     ;set extruder to absolute mode 
M107                    ;start with the fan off 
G28 X0 Y0               ;move X/Y to min endstops 
G28 Z0                  ;move Z to min endstops 
G1 Z15.0 F{speed_print} ;move the platform down 15mm 
G92 E0                  ;zero the extruded length 
G1 F200 E3              ;extrude 3mm of feed stock 
G92 E0                  ;zero the extruded length again 
G1 F{speed_print} 
M117 Printing...  
;--

There was an error in the original gcode. {fill_density} isn’t translated to a value. I've replaced this by {infill_sparse_density}.

The end code for the printer is:

;-- 
M104 S0                                ;extruder heater off 
M140 S0                                ;heated bed heater off 
G91                                    ;relative positioning 
G1 E-1 F300                            ;retract the filament a bit before lifting the nozzle, to release some of the pressure 
G1 Z+0.5 E-5 X-20 Y-20 F{speed_travel} ;move Z up a bit and retract filament even more 
G28 X0 Y0                              ;move X/Y to min endstops, so the head is out of the way 
M84                                    ;steppers off 
G90                                    ;absolute positioning 
;--

.

Step 42: Easy Cura Configuration

I've made all kind of configuration changes after creating the Custom FFF printer in Cura. This is because the Anet A8 printer isn't listed in the 'other' section in the add printer screen.

Since it's posible to create your own machine definitions, I've made one for the Anet A8.

Download the zipfile and place the files in the resources folder of your Cura installation. You can edit the files to adjust the default values. Or you can override them in Cura, before slicing the STL file.

        "speed_print":
        {
            "default_value": 30
        },
        "speed_topbottom": 
        {
            "default_value": 20
        },
        "speed_travel": 
        {
            "default_value": 50
        },
        "default_material_print_temperature":
        {
            "default_value": 220
        },
        "default_material_bed_temperature":
        {
            "default_value": 80
        },

Step 43: First Print: Benchy

This is Benchy. It's a 3D model specifically designed for testing and benchmarking 3D printers. A bit ambitious to start with. But the result shows what to expect from a new uncalibrated 3D printer. And I didn't expect a perfect result this first attempt.

A few problems arise during printing:

  • The object didn't finish correctly because it came loose during printing.
  • The layers didn't connect well.

The object came loose from the glass plate because of warping of the bottom of the boat. Increasing the heatbed temperature should avoid this warping. Additional adhesion can be achieved by spraying hairspray on the glass plate. Both solutions are mentioned in the print quality troubleshooting guide from the SD card.

The errors in the layers are caused by under extrusion: Not enough filament is coming through the nozzle. And this is not caused by the printer, but by the spool holder. The combination of a 8 mm threaded rod and a spool opening of 60 mm causes problems because of the filaments weight.

As a temporary solution, I attached some 608 bearings to the spool holder.


I've connected a power meter between the power supply and the mainboard. And the total required power consumption didn't get above 14 Amps. This means that the power supply can provide enough power (240 Watt, 20 Amps).

Step 44: Second Print: Spool Holder

I've done two attempts to print this spool holder. The first attempt failed because of the adhesion to the heatbed. The next attemps succeeded by using a raft instead of brim (Cura setting). A raft is a latticework of filament that is printed underneath your object. And a brim is a number of lines which are attached to the edges of the model.

I also disabled the nozzle fan during the third print. It blows cold air straight onto the object and the nozzle. And ABS filament doesn't require this type of cooling.

The first attempt finished about 1/3th. And This piece made me discover that the sizes were wrong. The bearing hole is supposed to be 22 mm, but the bearings didn't fit at all. And for now I've adjusted the 3D design.


The results are getting better each print. And the 3D printed result of the third spool holder part is godd. But there is still room for improvement.

Step 45: Gcode & Sizing

The first attempt of the 3D spool holder wasn't exact the size in which I designed it.

The 3D Spool holder gcode-file contains all movements required to print the model. The file starts with the following gcode:

;FLAVOR:Marlin
;TIME:11466
;Filament used: 7.88524m
;Layer height: 0.2
;Generated with Cura_SteamEngine 3.5.0
M140 S100
M105
M190 S100
M104 S230
M105
M109 S230
M82 ;absolute extrusion mode
;-- Gosse Adema -- 
;Sliced at: Sat 13-10-2018 10:19:38 
;Basic settings: Layer height: 0.2 Walls: 1.6 Fill: 20 
;Print time: 03:11:06 
;Filament used: [7.89]m [20.862844921875002]g 
;Filament cost: [0.45898258828125005] 
;M190 S100.0 ;Uncomment to add your own bed temperature line 
;M109 S220 ;Uncomment to add your own temperature line 
G21                     ;metric values 
G90                     ;absolute positioning 
M82                     ;set extruder to absolute mode 
M107                    ;start with the fan off 
G28 X0 Y0               ;move X/Y to min endstops 
G28 Z0                  ;move Z to min endstops 
G1 Z15.0 F30 ;move the platform down 15mm 
G92 E0                  ;zero the extruded length 
G1 F200 E3              ;extrude 3mm of feed stock 
G92 E0                  ;zero the extruded length again 
G1 F30 
M117 Printing...  
;--
G92 E0
G1 F2700 E-4.5
;LAYER_COUNT:100
;LAYER:0
M107
G0 F3600 X84.856 Y84.521 Z0.3
;TYPE:SKIRT
G1 F2700 E0

All code until the ";--" after printing is defined by the Cura printer definition. And I've made this defenition in a previous step. There are 100 layers in this file. Each layer is 0.2 mm. A total of 20 mm. And this is the total height of the spool holder.

This is the skirt-version of the gcode-file (not the raft version). Only the first layer (layer 0) contains the gcode for the skirt. Layer 1 starts at line 6623 and layer 2 starts at line 9098, a total of 2475 lines. This layer contains three parts: wall-inner, wall-outer and the skin. And these are printed in this order:

;LAYER:1
M140 S100
M106 S255
G0 F5400 X98.165 Y89.701 Z0.5
;TYPE:WALL-INNER
G1 F1350 X97.986 Y89.83 E368.19343
G1 X95.712 Y91.469 E368.28666
G1 X94.538 Y92.438 E368.33729
...
...
G1 X121.975 Y128.942 E424.65576
G1 X122.085 Y129.133 E424.66037
G0 F5400 X122.21 Y128.55
;TYPE:WALL-OUTER
G1 F900 X122.389 Y128.421 E424.66771
G1 X123.556 Y127.58 E424.71555
G1 X124.67 Y126.662 E424.76356
...
...
G0 F5400 X122.11 Y91.623
G0 X121.678 Y91.373
G0 X122.19 Y89.476
;TYPE:SKIN
G1 F900 X122.222 Y89.424 E442.62355
G1 X121.947 Y89.301 E442.63357
G1 X121.714 Y89.133 E442.64313
...
...
G1 F900 X99.234 Y88.572 E479.90022
G1 X99.164 Y88.642
G0 F5400 X98.165 Y89.701
;TIME_ELAPSED:719.148593

All positions are absolute (gcode G90 in the header). The maximum and minimum values of X and Y for each part give (the values for X and Y are the same):

           minvalue   maxvalue difference
-----------------------------------------
wall-inn      82.60     137.40      54.80
wall-out      82.20     137.80      55.60
skin          83.79     136.21      52.42

The difference of the outer wall is 55.6 mm and the line width is 0.4 mm (nozzle size), a total of 56 mm.This value corresponds to the original design.

By controlling the printer via a USB cable, the print head can be placed on any desired position. No deviation has been found when measuring of the movements.


It looks like that the used filament shrinks when cooling down. I've never noticed this before when printing objects. It looks like 56mm becomes 55.8 mm. This requires a positive compensation of 0,4% and this value can be set with Cura.

Step 46: Optimal Nozzle Temperature

The ABS filament documentations states a temperature between 230 and 250 degrees. And this step determines the optimal temperature for this filament.

A too high nozzle temperature causes strings between the separate parts of your print. Because the extruder leaks out plastic while moving between separate areas of the print. If the temperature is too cold then the filament does not stick to the previous layer, and this gives a rough surface

By means of this print I try to determine an optimal temperature. The temperature is increased by steps of 5 degrees. This can be done by printing 7 times the same object with a different temperature. But I'm going to print a single object, with the temperature becoming higher and higher.

This is only possible by editing the gcode file created by Cura. The 3D object in the sample file is 80 mm heigh. This gives a total of (80 / 0.2) 400 layers. And I've changed the code at layer 100, 150, 200, 250, 300 and 350. The gcode file starts with:

;FLAVOR:Marlin
;TIME:21152
;Filament used: 15.2092m
;Layer height: 0.2
;Generated with Cura_SteamEngine 3.5.0
M140 S100
M105
M190 S100
M104 S230
M105
M109 S230
M82 ;absolute extrusion mode

The M104 and M109 commands both sets the nozzle temperature to 230 degrees. The difference between the two commands is the wait (M109) or nowait (M104) until the temperature is reached.

The additional code after layer 100 is 'M104 S235' (line 52015):

;TIME_ELAPSED:7094.815144
;LAYER:100
M104 S235
G0 X86.559 Y97.873 Z21.51
;TYPE:FILL
G1 F2700 E872.68756

It takes some time to reach the new temperature, but I've decided not to wait for the new temperature (M109). I've created 7 'layers' of temperature: 230, 235, 240, 245, 250, 240, 230. The first layer is 2 cm, the others layers are 1 cm each.

The results of this test show that the temperature doesn't matter as long as it's in range. And I've set the default temperature to 230 degrees. This gives good results, and the raft can be easily be removed.

Step 47: Print Speed

At this point I've configured Cura, determined the nozzle temperature for my filament. And I've measured the shrink factor for my 3D objects. And the printer works fine with minimal changes. The only hardware change I've made is the heatbed insulation. And I'm printing on glass instead of the aluminium heatbed.

The headbed insulation doesn't lower the current required for the heatbed. It's not the improvement I've expected.

The glass is a major improvement. I don't have to remove 3D printed objects from the heatbed. This means I don't have to level the heatbed each time before printing. Just place another piece of glass and continue to print with a second object. This saves some time.

The only disadvantage of the current cura setting is the print speed. I've read the manual and it stated a print speed of 30 mm/sec and a travel speed of 60 mm/sec. While the advertised print speed is from 40 to 120 mm/sec.

It is the intention to increase the speed in steps. And just like the temperature, this is done with a single gcode file. The printer starts with 30 mm/sec. And after layer 100 the speed is increased by 10 mm/sec each 50 layers. There will be a bottleneck. And this can be the frame, the belts and/or the extruder.

The maximum movement rate (mm/min) is determined by the F[number] inside the gcode:

;LAYER:1
G0 F2700 X91.183 Y105.842 Z1.71
;TYPE:WALL-INNER
G1 F1350 X91.455 Y106.643 E1514.65182
G1 X91.891 Y107.369 E1514.67999
...
...
G1 X125.6 Y104.4 E1533.20097
G0 F2700 X125.2 Y104.8
;TYPE:WALL-OUTER
G1 F900 X104.811 Y104.8 E1533.87911
G1 X104.74 Y106.068 E1533.92135
...
...
G0 X93.74 Y107.927
G0 X92.991 Y108.804
;TYPE:SKIN
G1 F900 X93.857 Y109.146 E1539.44805
G1 X94.777 Y109.295 E1539.47904
...
...
G0 X93.214 Y107.564
G0 X91.183 Y105.842
;TIME_ELAPSED:2266.050675

The marlin gcode uses G0 for non-extrusion movements and G1 for moves that include extrusion. Allowing the G0 moves to go faster (travel speed). The G0 speed in the above example equals 2700 mm/min (45 mm/sec) and the print speed equals 900 mm/min (15 mm/sec).

The speed setting are inside the Anet A8 definition file. And I've changed these values to:

        "speed_print": 
        {
            "default_value": 120
        },
        "speed_topbottom": 
        {
            "default_value": 120
        },
        "speed_travel": {
            "default_value": 120
        },

This file (anet_a8_fast.def.json) allows for print speeds up to 120 mm/sec. I've made several gcode files with different speed settings. These are combined into a single gcode file (Speedtest.gcode). Cura uses different speed settings for travel, visible parts (outer wall) and invisible parts (fill and inner wall) of the 3D object. These values are derived from the maximum values from the definition file. For example: The outer parts are printed at half speed.

The gcode file contains 475 layers. with the following speeds (mm/sec):

                  FILL     INNER     OUTER
   MAX    MAX   G0   G1   G0   G1   G0   G1
 PRINT TRAVEL   XY  XYE   XY  XYE   XY  XYE      LAYERS
------ ------ ---- ---- ---- ---- ---- ---- ------------------
    30     60   60   30   60   30   60   15     0 -  50 (1 cm)
    40     70   70   40   70   40   70   20    50 - 100 
    50     80   80   50   80   50   80   25   100 - 150
    60     90   90   60   90   60   90   30   150 - 200
    70    100  100   70  100   70  100   35   200 - 250
    80    110  110   80  110   80  110   40   250 - 300
    90    120  120   90  120   90  120   45   300 -  

The total time for each print decreases when the print speed increases. I didn't double the travel speed, so it's not linear (a print speed of 60 and a travel speed of 120 takes about half the time).

speed     time        decrease
------ ----------- -----------
30/60     05:54:40            
40/70     04:32:44    01:21:56
50/80     03:43:34    00:49:10
60/90     03:10:58    00:32:36
70/100    02:47:55    00:23:03
80/110    02:30:53    00:17:02
90/120    02:17:53    00:13:00

The results of this print show the decrease in print quality when increasing print speed. Straight lines look fine at high speeds, but circles and the corners aren't as expected.

This result is without any modifications to the printer. And it can be improved by modifying the frame, rods and/or belts. This Instructable continues with some improvements which can be printed with this printer. And they are printed at low speed (30/60).

Step 48: Modified Gcode Files

A Warning: I've modified and combined multiple files into a single Gcode file in some previous steps. This is a precise job and can sometimes go wrong.

For example, during the first speed test, I used layer 150 to 200 two times. The first set of layers was printed at a speed of 40 mm/sec. The second set of layers moved the nozzle down for 1 cm, into the plastic. Until the Z axis couldn't move down any more. I immediately had to turn off the 3D printer.

There was no damage to the printer, but I had to clean the heatblock and nozzle.

Step 49: Nozzle Fan Duct

Most ABS printed objects don't require a nozzle fan. That's why I removed this part with most if the prints in the previous steps.
The original fan duct only blows air from one way, and it blows air over the nozzle's heating block. There are several better versions for the Anet A8 on Thingiverse. "Arjjck" made a round fan duct, which is improved by George Shtefan.

This part is printed this with 100% infill, a 5 mm raft and only support where the object touches the build plate.

Step 50: X Axis Belt Tensioner

This printer does not contain belt tensioners. This makes it difficult to adjust the belts properly. Once they have been properly adjusted, you do not have to change the belt tension often. But some small adjustment to the printer leads to a lot of convenience.

The belt tensioner in this step is made by Freemark and can be downloaded from Thingiverse. This belt tensioner normally requires new belts for the X axis. But I did not cut off the remaining belt. I divided this evenly over the X and Y belt.
Unfortunately, this was still too short for the X axis. That is why I designed and printed an additional part. This must be mounted on the back of the X carriage.

Step 51: Y Axis Belt Tensioner

The belt tensioner for the Y axis is designed by YoshiCat and can be dowloaded from Thingiverse. It consists of three parts which are mounted on the front of the printer.


The belts are tightened enough when you can press them down in the middle by the value of: the total length divided by 100 to 120. The length is about 380 + 380 = 780 mm. This gives a value of about 6 to 8 mm.

Step 52: Base Stability

The front plate bends a little after placing the Y axis belt tensioner. This can be prevented by strengthening the front plate. But it is better to stabilize the entire Y axis.

Currently the 3D printer is on my workbench. This workbench is sturdy (heavy) and is anchored to the wall, so It does not vibrate when the printers X or Y axis move.

Just like the original prusa, the base of this printer is not very strong. This is not just due to the material (acryl). But especially by the use of the two m8 threaded rods. The rear of the frame is relatively sturdy. But the front plate isn't.

That is why I am going to strengthen the frame for both the Y axis as the X asis. And to check if this has any effect, I start with my favorite building material: LEGO. And I've secured the front plate first, so that it no longer bends or moves.


I've seen some 'New' type of Anet printers who have solved this problem by moving the threaded rod to the middle of the printer. En dit lijkt een goede oplossing welke ik binnenkort eens wil testen.

Step 53: Height Stability

At this point, the Anet printer differs from the Prusa frame. With the prusa frame, a square provides stability for the X axis (second image). Anet has split this part into a loose top and bottom. This makes the printer easier and cheaper to ship. But it reduces the X axis stability.

I have created a LEGO frame as a temporary solution. And this is clamped in the Anet frame. This should give the Anet frame the same rigidity for the X axis as the Prusa frame.

Step 54: X, Y and Z Axis Rods

The Z axis should move smooth over the Z axis rods. And there are 2 screws to tighten/lock the X axis rods. This way the Z axis bearings stay aligned (step 16 of the manual).

The Y and Z rods can move a little. Not much, but this can cause a slight "wobble" in the printed object. This can be prevented by fastening the smooth rods. And I've used some loom bands as a temporarily solution.

Step 55: High Speed Print

After the following changes to the printer:

  • Belt tensioners.
  • Loom bands for Z and Y axis.
  • A more rigid Y and X axis (LEGO).

I've printed the test object again at a print speed of 90 mm/sec and a travel speed of 120 mm/sec. The results are marked with the red arrow in the second image. Compared to the previous test at this speed the quality has improved enormously.

There is some "overshoot" at the 90 degree angle. This is after the X axis movement from left to right at full print speed. This has been solved by adjusting the X axis belt tension.


After the above test, the LEGO is replaced with wood. The printer is placed on a wooden plate with the Y axis is attached to it. The front plate is also fixed, so that it can no longer bend. This will keep the Y belt on tension during printing.

Step 56: 3D Printed Frame Parts

The items in this step are required to fix the 3D printer onto the wooden frame. Print two of each before disassembling the printer.

Step 57: Wooden Frame

In this step the LEGO is replaced by a wooden frame. I've used 12 mm thick MDF. This is relatively cheap, and I had a few pieces left from a previous project. The purpose of this frame is to increase the stiffness of the frame. And add some mass. This should prevent the vibration of the frame.

The printer is placed on a 54 x 54 cm MDF plate. Above this plate are three plates attached, which must ensure stability of the X and Z axis. These three plates are then stabilized again with a top plate. The frame is made with standard electric tools. And more as a fast prototype than a fully developed model. And in the end this must become a completely enclosed housing.

Where possible, the frame is attached to the acrylic plates. For this it is necessary to partly disassemble the printer. Start with the mainboard, power supply and the LCD screen. These parts will be placed on a different location after placing the frame.

Now remove all other parts from the frame: the Y carriage with the heatbed, the entire X axis with the extruder carriage, all smooth rods, the Y asix motor with endstop, and the Z axis motors. Just remove the entire parts, don't disassemble them completely.

Step 58: Wooden Frame

The existing holes in the original frame are used to attach the wooden parts to the frame. Together with some small metal corners to strengthen the frame.

The front and back plate are fixed onto the ground plate. Just like the m8 threaded rod. As a result, the entire Y axis is fixed. And the front plate can also no longer bend, resulting in a smooth Y axis with no friction.

The upright wooden plate is 'clamped' between the frame. And this is attached to the frame both above and below (mounting holes of the LCD screen). This prevents "shaking" of the frame when the X carriage starts or stops moving at higher speeds. This improves both the X and Z axis of the printer.

Step 59: Wooden Frame

After attaching the wooden frame to the acrylic frame, the printer can be assembled again. Start with the Y axis, followed by the entire X axis with carriage and the Z axis.

There is now no room on the frame for the LCD screen, the power supply and the mainboard. I've placed them near the printer. If necessary, I can print a custom housing after the printer is finished.

Step 60: Mosfet Upgrade

Because the electronics were still disconnected, I've taken the opportunity to connect an external mosfet for the heatbed. This will handle about 70% of the power consumption. The power to the heatbed therefore no longer goes through the mainboard. This will make it less warm, making it last longer.

The wires (with fuse) from the power supply are connected to the mosfets input port (DC in). And are looped through to the mainboard (power). Connect the heatbed power wires to the mosfets output port (hot bed). The temperarure sensor must still be connected to te mainboard.

Connect an additional wire (included with the mosfet) from the bed output from the mainboard to the control connector of the mosfet module (first image). The external mosfet is controlled through this wire by the mosfet on the mainboard..

Step 61: Doodle 3D Transform

There are all kind of vases on thingiverse and Instructables. But it's much more fun to make your own design. And during a 3D printing session that I attended, Doodle3D Transform was used.

With this software everyone can make 3D designs. And it seems simple at first, but it has no problems with complex designs. The design starts with a 2D drawing, and it can consist of one or more parts. This drawing is converted to 3D in real time. And each part can be adjusted in height.

Although it is a tool to make 3D printing accessible to everyone, it also has some functions which are interesting for advanced users. The sculpt and twist tool make great vases. And you only have to draw the bottom, which can be any shape you like.

The object can be saved as STL or object file. And it has it's own slicer to create GCODE files, which can be saved on a SD card.

One warning: It takes many hours to print such a large vase.

Step 62: Christmas Tree Ball

You can't print on air. Each layer must be printed on the previous layer. It's posible to print sideways, until a certain angle. Support material is required when this overhang angle is exceeded.
This object is supposed to be printed without support material. And this is what makes this Christmas Tree ball hard to print.

My first attempt with ABS filament failed (220 degrees). And the second attempt with ABS and a fan duct also failed. The angle isn't the problem, but ABS is too flexible. It started to act like a spring after a certain height.

The first attempt with PLA succeeded. This was printed with a heatbed and a nozzle temperature of 200 degrees. It's not perfect, there are some strings visible on image. The extruder temperature of 200 degrees is too high for this filament (PLA). This causes the nozzle to 'leak' even after the extruder motor has stopped. A lower nozzle temperature should solve this.


Sometimes it is important with which material you print. There is a difference between ABS and PLA. And choosing the right filament can be the difference between a failure or a success.

Removing the strings from the PLA version resulted in a nice Christmas tree ball. It was printed with colorless filament, and it could use something extra. That's why I reprinted the object with "crystal clear" filament (looks like glass). And the imperfections in this object should give a 'frosted' look. This print started well, until the filament clogged my nozzle. Probably because I printed with a too low temperature to avoid the strings from the PLA version.

Step 63: Nozzle Maintenance and Replacement

At some time you might have or want to replace your nozzle.

The nozzle and the metal/teflon tube are both connected to each other inside the heatblock. And it's important that there is no space between the nozzle and the metal/teflon tube.

It's easy to replace a nozzle: Heat up the heatblock to 220 degrees. Take two wrenches (size 8 and 17) and remove the nozzle. Wait until the heatblok is cooled down, and insert the new nozzle. Heat up the heatblock to 220 degrees and tighten the new nozzle with the two wrenches.


Replacing the nozzle takes more time than replacing all three parts at once (nozzle, metal/teflon tube and heatblock). And these parts are very cheap. You can have three sets for about 7 euro.
And a complete assembled 0.4 mm MK8 Nozzle Extruder is about 5 euro. This includes a heating cartridge and a temperature sensor.

I've made three different configurations: 0.4 mm, 0.3 mm and 0.2 mm. First remove the mk8 extruder from the printer. Then take the heater cartridge and temperature sensor.out of the heatblock.

Make three different configurations with the teflon side of the tube facing the nozzle. Engrave the nozzle size in the heatblock.
Place the heater cartridge and temperature sensor in the heatblock. Heat up the heatblock and fasten the nozzle. Let the heatblock cool down and repeat this for the other nozzles.

Place an m6 bolt on the metal tube before attaching the parts to the MK8 extruder. Place the extruder on the X carriage and attach the fan. Fasten the m6 bolt to the extruder carriage (upwards). Now the nozzle can't move anymore.

Finally , check if the heater carriage and temperature sensor are fastened.


Until now all objects are printed with a layer height of 0.2 mm. The Anet default 0.4 mm extruder gives an oval line diameter of 0.4 mm wide and 0.2 mm high. This gives 5 lines per mm, or 50 lines per cm. These are the lines that you see in the height of each print.
A layer height of 0,1 mm gives 100 lines per cm, but the width of the line remains the same. This is determined by the diameter of the nozzle.

Replacing the nozzle with a 0.2 mm version makes thinner lines. And takes more lines to get the same wall thickness as with a 0.4 mm nozzle (2x). Printing at a "double" resolution (0,2 mm nozzle with 0.1 mm layer height) takes up to 6 times more time!

Step 64: Final Words

I've build this Anet A8 printer and everything worked fine (after modifying the spool holder).

For the amount of 130 euros, in terms of price and quality, this is a very good printer. The ' out-of-the-box' results are fine. And after some minor adjustments the printed result is good. And with some experience, the result will become even better. It takes some time to get to know all the different possibilities of this printer. This involves gaining experience with the combination of printer, the material (ABS and/or PLA) and the software (Cura).

However at the recommended settings, from the documentation, it is not a very fast printer. The recommended print speed gives good results. But for the advertised print speed the frame is not sturdy enough. The print quality deteriorates when increasing the print speed (step 47).

With some adjustments in the frame, a doubling of the speed is possible. With the same output quality. However, at a threefold speed, the quality deteriorates slightly. But still good enough for the internal parts of the object.

A stronger frame is recommended for the maximum advertised speed (120 mm/sec).

Doubling the speed doesn't mean the object is printed twice as fast. The travel speed also has an influence, and this is already faster than the print speed. That's why I stopped at the threefold speed increase.

Electrically the printer is good. But I have some safety concerns. All electric parts are fine, only the wire to the heatbed could be thicker. The power supply can supply the required current and the V1.5 mainboard has good contact points. I recommend an external mosfet for the heatbed. This is a cheap adjustment that allows the mainboard to process 75% less power.

The safety is mainly about the power cable to the power supply. It has no strain relief and the screw contacts at the power supply are not completely covered. Both are easy to fix, by printing these yourself. But a good strain relief should have been delivered with the printer.

The documentation and video instructions of this printer are good, and everything is in English. This makes it easy to assemble this printer.

The software on the SD card is outdated, but the latest versions can be downloaded for free. The Cura software required a new configuration file, and I've aded my file to this Instructable.

The following parts are used in this instructable:

  • Anet A8 3D printer (Gearbest)
  • 2x Glass board (Amazon.de)
  • External Mosfet (Amazon.de)
  • 4x M3 Heating Bed Adjusting Nut
  • 3x Heating Block for 3D Printer Extruder
  • 1x Anet Extruder Brass Nozzle Head
  • 2x Anet Stainless Steel Nozzle Teflon Pipes
  • 1.75 mm Filament (PLA and ABS)

Reasonably within my budget for a 3D printer. The price of the printer is around $140 to $150. With about $20 for two glass plates, $15 for an external mosfet and some spare parts (nozzles)


All in all, this Instructable has become a bit more extensive than I had in mind. And although there is still room for improvements, these are mainly cosmetic: A better housing for the power supply and/or a laser-cut wooden frame.

But at the moment, I'm very satisfied with this printer, and the printed results. So I leave the printer as it is for now. And I will use it for a few other projects first before making any other modifications.

Gosse Adema

Plastics Contest

Participated in the
Plastics Contest