Introduction: DeltaTrix 3D Printer

About: I am a Dutch design engineer, living in Wales (UK) and working in steel industry until recently, as my request for voluntary redundancy did get accepted. I am married, and I am a father to a little boy. I like…

Under Revision: This Instructable is being updated to reflect the latest version of the DeltaTrix 3D printer, as produced for my Kickstarter project. Until this message is removed, the update is still in progress. The entire previous version is still available in the form of a PDF (actual instructions + pictures) and a rar file (all other files). See below for the PDF and rar file. The current state provides sufficient information to build up a printer from a Kickstarter kit, but not yet enough for building up the latest version from scratch.

The DeltaTrix 3D printer is a capable and novel 3D printer, designed to be simple in construction, yet effective in functionality. It it fully Open Source, so feel free to post improvements on the Instructables website, just don't forget to let me know in order to put links in to your own instructions...

Many thanks to Barrie for doing the video! Also thanks to Jason Mahar for publishing his song 'Pumped' as copyright free music.

Several improvements have been made since creating the initial printer. I will soon make updates to this instructable, in order to document these improvements. I will still make the files available for the initial version, but might organize them in a better way.

In 2014, a Kickstarter campaign was launched:

A change log is attached to this first step. Current version: V0.14+ (Under Revision!!!)

Richard Tegelbeckers

PS. Just so you know, I applied for a trademark for the actual name 'DeltaTrix '. I have no problem with anyone referring to the name DeltaTrix, as long as they do not try to sell anything as being 'DeltaTrix'. By all means, refer to your thing as being compatible with DeltaTrix, just do not sell it as being a DeltaTrix. Thanks, Richard.

Step 1: Background & Objectives

As a mechanical design guy, I have been very interested in the ability to print the stuff I design as actual objects. In the recent past I have tried entering a few competitions on Instructables in the vain hope to win a 3D printer, but so far I have always missed my objective by a tiny amount. I have given up trying to win one by now, so I ended up designing my own. This Instructable is the result of that effort. Thanks Chris, for a signed copy of your book 'Makers'. It formed part of the inspiration to publish my design here as Open Source, in stead of keeping it all to myself...

The main objective is to come up with a 3D printer that is good in performance (amongst other things, it is very fast...), looks great on a desk, and is gracious during the actual printing. It is also important to enable some experiments and upgrades in the future. I am thinking along the lines of 3D scanning and dual print heads. Do you have an idea for an improvement yourself? Publish it on Instructables and use 'DeltaTrix' as one of the keywords, so others can easily find it!

Step 2: Sanity Check!

If you would like to start with 3D printing by building your own 3D printer, be aware! You will be in for a hell of a journey, with many obstacles to concur. However, being able to think something up, modelling it up and then printing it as a real object, is a very satisfying thing to do. Warning: do not mention too often to friends you have a 3D printer, as you will end up printing all kinds of crap for them...

Step 3: Most Important Step: the Design

As a designer by trade, of course I would argue that the design phase is the most important phase of any project. In this case there is no exception. I have put a lot of effort in trying to eliminate issues, before starting to actually make anything. Still, after building the printer for the first time I did review several aspects, the belt drive being the main one. I tried to be too ambitious in using plain bearings on the top of the machine for guiding the backside of the timing belts. Instead I ended up using timing pulleys as idlers for the timing belts, supported by two small bearings each. Although adding to the cost of the machine, the resulting driveline is elegant and effective in operation.

I attached the native AutoCAD design file (zipped DWG file), which should form the best possible basis for anyone wanting to re-create the machine. (new file not yet attached)

Step 4: On the Cutting Edge: Panels

I started off with plywood blanks, cut to size in my local DIY shop. I used my CNC machine to do all the cutting and drilling:

My large CNC machine was only meant to shape large pieces of polystyrene in 3D. As long as it takes cuts in slices, in one direction only, it is very good at it's intended purpose.  As soon as it is meant to be cutting slots into wooded panels, it is a little less impressive. Still, I used the machine for cutting the panels for the DeltaTrix 3D printer. I started off by making up a bed. See pics for the details. I then machined the parts by using G-code as if the machine would be working perfectly. I then machined all the pieced I needed using this assumption. As the machine has a lot of deflection, I then measured all the pieces for the deviation and adjusted the G-code to compensate. After all this I machined new pieces, using the adjusted G-code.

Sweet! Now all te pieces are to size!!!

Step 5: With a Little Help: Plastic Bits

In terms of getting hold of the plastic bits, it is a case of catch 22. You need access to a 3D printer in order to make the plastic bits for a 3D printer. My initial bits actually came from Instructables.

Some time ago I did win a 6x6x6 inch 3D print as a result of entering the 'make it real' competition. Initially I intended to use the print for a CNC machine: I entered the design for the machine in a contest, hoping to win a Makerbot 3D printer. As this did not work, I then changed my plan and used part of the print for the creation of the plastic bits for my own 3D printer design. The green bits in the pictures are the bits from Instructables (many thanks by the way - great job!!!). The white bits for the top pulleys, required for improving the drive belt design, have been made by Austin on his Ultimaker. I am very grateful to him for this as the parts look absolutely brilliant. The quality of the parts are so great that I regard the Ultimaker printers as the benchmark for Open Source 3D printing. The blue bits are the first set of parts created on my own DeltaTrix, in order to provide the parts for a new DeltaTrix 3D printer. They will become part of the printer for Kirk, who I thank for having sufficient faith in the design to get involved at a very early stage. Being the first parts I printed, the blue bits were a bit rough and needed a bit of cleaning up. Since then I have constantly made improvements and the print quality is now a lot better!

The attached stl files are of the most recent published design as on 5/5/'15. The extruder bits are best printed in ABS as they would crack too easily when printed in PLA. Larger bits are best printed in PLA as this will reduce the risk of warping.

Update (30-01-'16): New versions of the motor bracket and pulley bracket (version 210116) have been uploaded, replacing earlier versions. The new brackets provide more clearance, eliminating the possibility of the belts rubbing against them.

Step 6: Buy, Buy, Buy: Hardware & Electronics

The parts to be bought will be listed in a spreadsheet, an updated version will be added in the future. Most parts can be obtained via Ebay...

For backers of my Kickstarter project I included a packing list (excel format) to this step. It shows all the components of the comprehensive kit.

Step 7: Free, Free, Free: Software

Initially I looked into using delta geometry based on pivot points, but I was hesitant as there was no software readily available when starting the project. Always having liked the iFab by Festo, I decided to go for a linear delta layout when I found out about Johann Rocholl publishing the firmware for his delta as Open Source. Although Johann's initial Marlin based firmware worked well, I now prefer the latest Repetier firmware for both AVR and ARM based electronics.

As PC software I use Repetier host. It is available as Open Source as well and it has provisions for the delta layout.

I use the Open Source Arduino environment to edit the firmware to my needs.

I grabbed the pictures in this step from the net. They are the property of their respective owners.

Step 8: Upright Assembly

The upright assembly is critical to the correct functioning of the printer. Take really good care not to over tighten the screws. On a 18 Volt drill, acting as a screw driver, I use about a third of the maximum torque setting for the final tightening. Any more and there is the risk of warping the delicate, linear rail.

The pulley for the motor needs to be fitted the right way around and at the exact location as indicated in the 3D model from an earlier step. I thank my son Nick for his expert assistance during this stage!

Step 9: Heated Bed

I only use four screws to fit the MK2a heated bed, using washers as spacers. A 3mm thick glass square (200x200mm) is attached to the top (Prusa, thanks for the design of the initial PCB and thanks to Tony Lock for improvements). Be aware, there are many different 'MK2a' boards around, not every one as good as the other. Not shown here, but look at pictures in further steps, I use Supaclip 60 clips to attach the glass to the PCB. The clips look great and allow minimum clearance to the print head.

Step 10: Fitting the Electronics

This is straightforward, just screw everything to the bottom of the base panel! Stick double sided tape to the top of the power supply and tie it down, using angle brackets and tie rips. The tape will stop the unit from moving sideways. Don't forget to fit guards on the fan, as it will be too easy for wires to get trapped otherwise! The power supply does have a built in on/off switch, which saves having to fit an external switch. The RAMPS electronics have been placed with the reset button being accessible from the side of the machine. Access to the USB connector is a bit tricky, just keep a bit of clearance when wiring up in the next step. I only use USB for doing the calibration. At the moment I use a SD memory card for doing actual prints. In the future I want to try and use a Raspberry Pi in order to provide a Wireless connection. I already screwed a Pi to the base of my own Trix, proving there is sufficient room to fit it in.

Step 11: Frame Assembly

Connecting the uprights with the top and bottom panels, effectively completes the main frame structure. Use 24 self tapping woodscrews (No. 8x2" or 4.0x50mm) in conjunction with 24 screw cups and torque them down evenly. The video shows panels without electronics or heat bed. When assembling a frame from a comprehensive kit, the lower horizontal panel will come with heat bed and electronics pre-fitted. In this case, make sure to match the markings on the horizontal panels with the correct towers (X/Y/Z). I suggest to fit at least two uprights to the two horizontals before screwing in any screws. Take care with this as the frame can easily come apart until the screws are in. Help from an assistant is advised! Since doing the video I now use wider slots for easier fitment. However, this will also increase the risk of the frame coming apart until the screws are in. Use an electric driver for driving in the screws. I use an electric driver (18V) with the torque set to about a third for final tightening. Make sure the screws are tight enough so there is no gap between the edges of the horizontal panels and the mating surfaces on the uprights. However, take care not to over tighten!

It may be possible for the tower assembly to be slightly curved, I have seen the actual rail being curved by as much 0.8mm. To correct this, a straightnening bracket can be fitted as shown by the last few pictures. It would be easiest to do this before assembling the frame, but it can done afterwards as well. In this case a straight edge would need to fit inside the frame. I have cut down a small aluminium extrusion to 775mm for this purpose. Offer up the straight edge to the rail and check for a gap in the middle of the rail. Keep adjusting the nut until the gap is gone. I tend to use a cigarette rolling paper as a gauge to make sure. Also, it could be that the bracket is pushing the tower assembly too much with the adjustment nut in lowest position. In this case, slacken the wood screws as necessary or even fit some washers in between bracket and tower assembly.

Tip: For protection and aesthetics, the surface of the frame panels can be treated with hard wax in case of valchromat. Plywood can be varnished or painted. It is possible to apply wax/varnish/paint before assembling the frame, or to do it afterwards. In both cases, apply masking tape to the slides in order to protect them. When treating panels before assembling the frame, make sure not to apply treatment in the slots of the towers and the mating edges of the horizontal panels. The best wax for valchromat is clear 'hard wax', as used for wooden flooring. I this case I myself tend to sand down the surface of the valchromat in a single direction (although the valchromat does not have a grain direction like real wood, I tend to sand in the same direction as the way it was originally machined during manufacture). I also apply the wax in the same direction, using a soft cloth. For the normal surfaces I use three layers, whilst applying four layers on the ends.

Step 12: Fitting Pulley Brackets and End Stops

Start off by inserting the three pulley brackets into the top positions
of the frame and screw in 6 off M6x20 button head screws. Only after the pulley brackets are screwed down, screw the 3 end stops into place. For this, use a 3D printed 'spacer' and a pair of 4x1/2" self tapping screws. On the shown end stop, the electric connector is in the way of two of the four mounting holes. This is not an issue as two screws are enough!

Step 13: Fitting Motor Assemblies

Now turn the printer upside down and place it onto a soft surface, for example onto carpet or a cloth. Fit the three motor assemblies, with the wires pointing towards the horizontal panel. Each assembly needs 4 off M6x50 button head screws, 4 off M6 washers, and 4 off M6 flanged nuts. Do not fully tighten the screws and make sure that the assemblies can slide up and down. For now, push the assemblies towards the base panel. Screw in 6 off M6x50 screws into the horizontal panel to act as tensioners for the motor assemblies. See the wiring diagram for correctly connecting the motor connectors (X/Y/Z). I suggest to feed the wiring for the X motor underneath the power supply and underneath the cooling fan. This can be a bit fiddly. The wiring for the Y motor can also go underneath the cooling fan, crossing the wiring for the X motor. If this proves to be too tricky, simply go next to the fan instead.

Step 14: Fitting Belts

For each tower is needed: a belt, a pulley assembly, a linear carriage no.1 (with M4 screw + nut), a linear carriage no.2 (with 3mm shaft), 2 off 8mm aluminium tubes, 2 off M4x16 CSK (= Counter SunK) screws, 2 off M6 washers.

Put the machine sideways and fit one belt assembly at a time. Fit the two aluminium tubes onto a bearing carriage. Now push linear carriage no.1 onto the tubes, with the screw pointing towards the end stop. Take one end of a belt and wrap it in a loop as show in the sketch. Initially use 52mm, but if this proves too tight, use 50mm instead. Place the loop over the aluminium tube closest to the motor, and into carriage no. 1. If this proves to be difficult, use a flat screw driver to carefully help pushing in the belt. Feed the belt around the motor pulley. At the other end, form a large loop with the belt and push it though the pulley bracket opening. Fit the pulley assembly and pull the belt tight to seat the pulley assembly into the pulley bracket. (note: I like to have the grub screws of both pulleys pointing in the same direction. I order to do so, I marked the motor pulley with a permanent marker at an earlier stage.) Loop the end of the belt as before (50-52mm) and place it over the remaining tube. Push linear carriage no.2 (with 3mm shaft) in position and fit the washers and screws. Adjust the pair of M6x50 screws in the base panel to tension the belt. Tighten up the four M6x50 screws. I personally do not use a spanner on the flanged nuts, but simply hold them with my fingers. Repeat for the other two towers.

When fitting the belt, make sure they are the right length to allow for adequate tension. You have to judge this for yourself, just be careful not to over tighten the belts as this would stretch or even break them. Try to 'twang' them like a guitar string and make sure they are all similar in tension by comparing the sound.

Step 15: Fitting the LCD Unit

It is most convenient to fit the belts when the machine is positioned sideways. As the LCD unit sticks out from the frame, it is therefore best to fit the LCD unit after fitting the belts.

The design provides positions for several pilot holes. Having these pilot holes makes fitting the LCD unit straightforward. Use a large screw driver to screw in three no. 8x5/8" pan head wood screws. Do not screw them down in one go, but proceed in even stages. Plug in the wiring loom as shown in the pictures. Zoom in if necessary!

The first five pictures show an early version of the LCD cable. The last two pictures show a later version of the cable, which does not contain the wires for connecting the SD connector of the LCD unit. The micro SD connector on the RADDS board has proven to be far more reliable than the SD slot on the LCD unit. By omitting the SD wires, the less reliable SD slot is effectively disabled.

(note: the motor assemblies have been omitted in the first few pictures)

Step 16: Fitting the Coil Holder

On the DeltaTrix 3D printer you have a choice for the location of the coil holder, being on the top of the machine or in a lower position. See the appropriate PDF file for your choice. The default tower for fitting the coil holder is the Y-tower. Use a D-spacer with a couple of M6 nuts pushed into the hexagon holes. Fit the spacer using three no. 8x5/8" wood screws, preferably by pre-drilling pilot holes with a 2.5mm drill. The coil holder itself will fit to the D-spacer by means of a couple of M6x20 hexagon head screws and 2 off M6 washers.

Step 17: Fitting the Extruder

To fit the extruder in the top position, first fit a pair of M6x16 hexagon head screws into a D-spacer. Use a 10mm spanner and a M6 flanged nut to pull the screws into the hexagon holes (see picture). The correct position for the D-spacer is shown in the PDF file. Fit in a similar manner to the previous D-spacers. When fitted, screw on the extruder by means of a pair of M6 flanged nuts.

To fit the extruder in the lower position you will need 2 off M6x30 screws, 2 off M6 washers, and 2 off M6 flanged nuts. The strengthening rib on each upright has a couple of holes to receive an extruder. Fit the washers onto the screws and feed the screws into the holes of the appropriate rib, slide the extruder in place and secure it by means of the flanged washers.

Step 18: Fitting the Trunking

Trunking provides a way to manage the wiring in the uprights in a neat manner. Start with the end stop wiring. The end stop wiring consists out of three wires, with a black connector on one end (to connect to RAMPS or RADDS electronics) and a white connector on the other end (to connect to end stop). Feed the wiring into the trunking, by inserting the end with the black connector. The X-tower and the Z-tower will need a piece of trunking with end stop wiring only. For these towers, insert one end first (see pictures). Then, bend the trunking and insert the other end. With both ends inserted, push the entire piece of trunking into the slot of the tower. A small mallet or the handle of a screw driver can be used for carefully tapping the trunking into place.

The Y-tower will need two more wiring looms in addition to the end stop wiring, being the wiring for the extruder and the wiring for the print head. Prepare the piece of trunking for the Y-tower by inserting all the wiring looms. You will need to remove the cover from the piece of trunking in order to do so. See the picture for the correct orientation, noting that the picture shows the extruder wiring in place for a top mounted arrangement. The trunking for the Y-tower is to be fitted in a similar manner as the other two towers, but with the addition of first feeding the extruder wiring through the hole in the tower. After the trunking is pushed into the slot of the tower, screw the connector bracket into the tower by means of a pair of 8x3/8" self tapping screws.

Step 19: Finalise Wiring

With the printer standing upright, plug the white connectors for the end stop wiring into the end stops and also insert the connector for the extruder. Now turn the printer upside down, to finish off the rest of the wiring by using the attached schematic and photographs. The wires from the Y-tower can be fed underneath the cooling fan. If this proves too difficult, simply feed the wires next to the fan. The orange wire and grey wire need to go into connections, which already contain existing wires (black and red). Take out the existing wires. Twist the orange wire and red wire together and re-insert. Twist the grey wire and the black wire and also re-insert. Note: for best results it is best to solder the wires together before re-inserting them. When all wires have been connected as per schematic, use some cable ties to tidy up the wiring. This will not only make everything look neat, but will also allow optimal cooling by the fan.

Step 20: Installing Software & Uploading Firmware

Note: If assembling a printer from a kit, this step can initially be skipped as the firmware will already be pre-installed.

Install the Arduino IDE (Windows version 1.6.5 installer avaliable below) and start it up. Select 'Tools>Board>Boards Manager' to install the standard Arduino SAM Boards structure (see pictures). Download the latest version of the firmware below and un-zip. Please note, the attached firmware is for Arduino Due/RADDS only. Make sure to check out the additional folder AdditionalArduinoFiles with separate readme that describes how to get the watchdog working. It is a very good idea to compile with working watchdog!!! See pictures for more details. Note: Newer versions of the Arduino IDE might not need the shown trick to get the watchdog timer working. In this case, the installation procedure would be different.

Important: The default value for EEPROM_MODE in the firmware is 1 (see configuration.h). If overwriting existing firmware, make sure to change this value to another number between 1 and 255. Do not use the value 0 as this will disable the EEPROM altogether and it will not allow you to change and store new values for the Z-height. See the comments in the configuration.h file for more details.

Step 21: Calibration of the Towers

In the past I have used a DTI clock to perform a manual calibration of the towers. I recently added a routine to the ARM version of the firmware to provide a way to automate part of the process. This makes life a whole lot easier!

Start off by putting the small, brass spacers over the shafts of the lineair carriages and the shafts of the end effector. After this, fit the rods in pairs by means of the rubber bands. Double up the rubber bands and make sure they are seated in the recess, between the head of the rod end and the end of the carbon fibre tube. To begin with, use an end effector with an optical sensor fitted. Insert the connector into the receiving socket on the Y-tower, taking care for the wires not to obstruct the linear carriage.

Connect a power lead to the printer and power up the printer. Push the knob next to the LCD display once and turn it to scroll down to 'Configuration'. Push the knob to go into the Configuration menu and scroll down all the way to select 'Assisted Calib.'. By selecting the 'Take Measurements' option, the printer will first 'Home' and proceed to take a measurement of the bed height near each of the three towers. - Note: be ready to push the reset button (under the aluminium knob) in case things go wrong! It is possible for a screw in a linear carriage to be screwed in too deep. In this case the carriage would hit the top panel before the end stop would be triggered. Also, as the probing sensor is optical, make sure the probing areas are clean.

As soon the measurements have been taken successfully, select 'Calib. Report' to show the results. When the results are showing, the knob can be turned to alter all three values relatively to each other. This can be useful to get one of the three values to zero. The values show how much the screws in the carriages need to be adjusted, expressed in degrees. For example, 86 degrees 'Out' for the Y-tower means the screw in the Y carriage needs to be screwed out by (almost) a quarter turn. Use an allen key and spanner to make adjustments and select 'Take Measurements' again. Keep repeating the procedure until the differences between the three towers stay within 30 degrees. The first few times a new printer is performing the procedure the results may vary somewhat as everything is still bedding in. After a few cycles the results will become more consistent.

Using the optical sensor in combination with the assisted calibration procedure is the quickest and most convenient way to get printing. However, the most accurate way to calibrate the towers is to use a DTI clock fitted to the end effector. This is also essential if in need of making prints which are larger in x/y direction. To perform a manual calibration with a DTI clock, the idea is to probe the bed near the three towers and adjust the end stops so the Z measurements become similar (within 0.1mm or better). For a round bed, the suggested probing positions are: X=0, Y=120 for Z tower; X=-104, Y=-60 for X tower; X=104, Y=-60 for Y tower. Check out the video in this step to see how to perform the calibration with DTI clock. Tip: One full rotation of the screw will move the screw in or out by 0.7mm. Use this to predict how much you will need to turn the screw, eg. to adjust the screw by 0.35mm, turn the screw half a turn. Also, to reduce the DTI measurement for a particular tower, reduce the length or the screw, ie. screw in. To increase the DTI measurement, increase the length, ie. screw out.

Step 22: Fitting the Print Head

Provided the three towers have been calibrated in the previous step, the print head can be fitted.

First of all, remove the sensor bracket from the end effector. Now attach the print head to the end effector. This will not be easy as there is not much space between the end effector and the print head assembly. Make sure the wires are away from the heat sink as this is the widest part of the assembly. Use the self tapping screws to attach the cooling fan. Take note that these screws only need to be tightened very lightly.

Re-fit the end effector to the printer. Perform a 'Home All' and navigate to the 'Configation' menu. Select 'Z Calib.' and use 'Z Pos. Fast' to bring the print head close to the bed. As soon as the head is within a couple of millimeters, go back into the menu and select 'Z Position'. This will allow fine adjustment in 0.01mm steps. Use a paper sheet to lower the print head until the paper can not be moved freely anymore, ie. the paper sheet is starting to become 'pinched' by the print head. Remove the paper and lower the head by another 0.08mm. This takes account for the thickness of the paper. Now select 'Set Z=0' to store the zero level in the EEPROM memory. The printer is now calibrated.

Note: The print bed will expand and move at high temperatures. For PLA (57 degree C) it is not too bad, but at ABS temperatures (105C) it can move a fair bit. For best results, perform the Z calibration at the same temperature as used during a particular print. The easiest way to set this is to use the LCD menu 'Extruder->Bed Temp'. When the part is finished, leave the bed at temperature and redo the Z calibration before printing the next part. After two or three parts, the bed height will stay constant and you can continue printing without calibration for as long as the bed is left at operating temperature.

Step 23: First Print

For a first print, copy the attached files to a micro-SD card and insert the card into into the RADDS micro-SD slot*. Feed some PLA material into the extruder by hand. In the LCD menu, select 'Extruder'. Set 'Temp. 1' to 200 degrees. Go back all the way in the menu structure, so you can see the actual temperatures. As soon as the actual hot end temperature reaches 200 degrees, start pushing in the filament until material comes out of the hot end nozzle. Remove the excess material from the nozzle (be careful as material and nozzle are hot! I always use some long nose pliers for this) and go into the 'Print File' menu. Now select the file 'idler_PLA05.gcode' and sit back to see the first print taking place!

*: A poor connection between the SD card and the electronics can cause issues such as slow response from LCD unit and unintentional resets. For best results and maximum reliability, use a micro-SD card straight into the RADDS micro-SD slot.

Tip 1: Use a filament cleaner to prevent dirt getting into the nozzle and potentially cause a blockage. A foam sponge wrapped around the filament by means of a ty-rip will do the job just fine. I use this:, printed in ABS. When using TBRIshtar's great cleaner, start by wrapping a small piece of sponge around the filament. Slide the inner part over the wrapped sponge, before locking the outer part into place. Before using a cleaner I did have several nozzle blockages, and none at all since using one!

Tip 2: Preheat the bed (57 degree C for PLA, 105 degree C for ABS) before setting the Z height. This is especially important for ABS, as the bed tends to move at higher temperatures. With ABS I tend to set the Z-height before every print, to ensure optimal performance.

Tip 3: Ensure there is sufficient pressure on the idler wheel of the extruder. Insufficient pressure can result in missing gaps in the print. If this occurs, increase the pressure by tightening the screws which are pushing the piece of rubber hose against the idler.

Tip 4: Printing a spare idler is a good idea, just in case you put too much pressure on the fitted idler and cause it to snap! ;-) Start with PLA as it is easier to print. An idler in ABS will be tougher, but will be harder to print due to increased risk of warping.

Tip 5: The calibration using optical sensor is not very accurate. It might be good enough for printing a smaller object such as the idler in PLA. However, the idler file for printing in ABS is using a skirt, which might already be too large to print ok. Larger objects will require better calibration, to be performed manually by using the DTI clock. For details, see the end of the step 'Calibration of the towers'.

Step 24: Installing Host Software.

Download the latest version of Repetier Host and install it on your computer. Use the screenshots to set it up. Note: when you attach the printer (using the 'programming port') to a USB port on your PC, a new COM port will appear which will need to be selected. The screenshots were taken from a Windows 7 PC, using Repetier Host 1.06 (attached to this step). Attached to this step is the file Slic3r.rar, containing some settings. Un-rar and copy the settings to the Slice3r configuration folder (eg. C:\Users\YourName\AppData\Roaming\Slic3r) or open the files in notepad as a starting point for creating your own settings.

Step 25: Fine Tuning.

Previous steps describe how to calibrate the towers and the Z height. This step briefly shows how to fine tune the setting in the firmware, for optimal performance of a delta printer. The values to be altered can be found in 'configuration.h'.

Calibrate for correct dimensions:

In theory the default length for the rods of the DeltaTrix are 280mm. However, the value for DELTA_DIAGONAL_ROD can be altered to adjust for the size of a print in the x/y direction. The common approach is to print an object, measure it, adjust the value, print again, and repeat until results are acceptable. It is a lot faster to fit a DTI clock and use it to make marks in a couple of pieces of clay-like material (eg. plasticine, blu-tac, play-doy). Measure the distance between the marks and compare the measurement to what it should be. I like to make indents at X=-100, Y=0 and X=100, Y=0. The distance between the indents should be 200mm. If the measured distance is lower, the value for DELTA_DIAGONAL_ROD needs to be increased and vice versa.

Calibrate for printing flat:

Use a DTI clock to probe the bed at the three towers, as described in an earlier step (For a round bed, the suggested probing positions are: X=0, Y=120 for Z tower; X=-104, Y=-60 for X tower; X=104, Y=-60 for Y tower.). Additionally probe the middle of the bed, ie. X=0, Y=0. A difference between the average tower measurements and the central measurement will indicate that the printer carriage is moving in a convex/concave manner in stead of moving in a flat plane. To raise the central position in relation to the tower positions, reduce the value for PRINTER_RADIUS and vice versa.

Notes: The above steps will normally only need to be performed once for a particular printer. The tower calibration generally only needs to be performed whenever the bed assembly gets disturbed, for example after replacing the glass plate. The Z height is the only thing which needs to be set on a frequent basis. As this is easy enough to do, I tend to set the Z height before every print and with the print bed preheated.

Step 26: Door Panels

Door panels will provide protection during a print by keeping fingers out of the build area. At the same time door panels in combination with a heated build platform happen to retain heat, reducing the risk of warping. I created door panels by means of vacuum forming. See the pictures to see how to fit door panels and door magnets. The spacers for the magnets are to be mounted flush with the edges of the uprights. The magnets can be moved in and out for setting up correctly.

Step 27: Fitting a Diamond Hotend

The Diamond Hotend as developed by can be fitted to the DeltaTrix 3D printer in order to achieve multi-colour and multi-material 3D printing. So far I have designed an end effector which accepts the Prusa i3 version of the hotend. I came as far as fitting the resulting assembly to a DeltaTrix, but I have not yet gone beyond that. Attached to this step are the stl files for printing the bits I designed. Also attached is the 3D model of the assembly in native AutoCAD 3D dwg format, and in ACIS (*.sat) format for use in the majority of other 3D design software. Head over to for further details.

Other parts needed are an extra pair of extruders, spool holders, and D-spacers as required. See a previous step for the necessary stl files of the plastic bits.

Step 28: Optional Cooling for Stepper Motors.

The steppers for the three towers can run fairly hot. The stepper closest to the 80x80mm fan is not too bad, as the airflow from the fan helps a lot. I personally have not experienced any issues due to the motor temperature, especially as most of my printing happens in a basement with a low ambient temperature. If you are concerned with motor temperature, you could print a set of motor ducts as per attached stl file. The ducts accept 40x40mm fans, which can be attached by means of self tapping screws. The duct will simply click onto the back of the stepper motor by means of a snap fit. The tabs extend far enough to enable a duct to be easily taken off as well.

Please note, the snap fit has been designed around the actual motor model I am using. If you are using a different motor, you might need to tweak the design a little bit. In this case, use the attached ACIS file (*.sat) as a starting point.

Step 29: Troubleshooting

New section - currently being updated.

A 3D printer is a fairly complicated piece of equipment, combining mechanical components with electronics and software. This section attempts to provide a starting point for troubleshooting.

Missing steps

The printer uses stepper motors for providing motion. At the start of a print job, the tower carriages are moved to trigger the end stops. This will tell the printer electronics what the start position of each tower carriage is. From there the electronics will keep track of the positions by counting the number of steps, allowing the printer to function without a feedback mechanism. Stepper motors are robust, simple and accurate, which explains their use in 2D and 3D printers.

However, if for any reason steps are missed, the electronics will not be able to keep track of the actual position anymore. This will result a variety of failed prints. If only a few steps are missed a print might end up with a part which has shifted layers. In more severe cases the resulting printed part might have a few completed layers, with a pile of 'spaghetti' on top.

There are several reasons for missing steps to occur. To begin with the stepper driver needs to be set to the correct current level to match the motor. If the motor will not get enough power it might loose steps. If the current level will be too high it can cause overheating. I use DRV8825 drivers for the tower motors, with the reference voltage set between 0.59V and 0.60V. The voltage can be checked with a multimeter, measuring the voltage between negative and the trim pot on the driver board. Take care not to cause a short circuit whilst measuring, as this might cause damage to the electronics!

Provided the stepper driver is set correctly, missing steps can occur as a result of mechanical issues. In the past I experienced problems as a result of the screws on the Igus slide rails to be done up too tightly. The rails would be deformed slightly around the screw, causing a little bit of resistance when moving the slide past it. Whenever I assemble a tower I make sure to tighten the screws as lightly as I can get away with. Other mechanical issues could be incorrect alignment of the pulley in the top, too high tension on the belts (=too much resistance), too little tension of the belts (=slipping belt). Basically, the slides must be able to move up and done smoothly. Any resistance can result in missing steps.

Decoupled heater sensor

The firmware on the printer electronics will check if the heater and sensor got decoupled, which is dangerous. Since it will never reach the target temperature, the heater will stay on for ever which can cause your printer or your house to burn down. As an additional barrier to your smoke detectors (you should have one above your printer) the firmware will perform some checks to detect if something goes wrong.

It is possible for the safety settings in the firmware to be too sensitive for your printer, causing failed prints as the printer detects a decoupled heater. In this case the values for the safety settings can be relaxed to avoid false alarms. Be aware though, that the safety settings are there for a reason! The following values in the firmware are related to the safety settings: DECOUPLING_TEST_MIN_TEMP_RISE, EXT0_DECOUPLE_TEST_PERIOD, MIN_DEFECT_TEMPERATURE, MAX_DEFECT_TEMPERATURE, EXT0_WATCHPERIOD, DECOUPLING_TEST_MAX_HOLD_VARIANCE.

Only consider changing the safety settings in your firmware as a last resort or as part of fault finding. There might be other reasons why the printer detects a decoupled heater sensor. Maybe you use too aggressive cooling of the top layer, which can cool the print nozzle too much. Or the thermistor might not be fitted properly.

Faulty relay heated bed

Typical 3D printer electronics boards will be limited in the amount of power that can be used for a heated bed. In order to use more power for the heated bed, I use an automotive relay. Provisions are made in the firmware to prevent the relay from excessive wear, by using a minimum time of 5 seconds for being switched on or off at any moment. This differs from the way a solid state device can be used, which is typically switched at higher frequencies. However, at some stage a relay can become defective and would need to be replaced. Automotive relays are readily available (eg. eBay, AliExpress, motor factors), are cheap, and can easily be replaced if necessary. As such, it can be considered a consumable.

If the heated bed is not functioning as it should, check out the relay first. It could be stuck in either constantly off (bed not heating), or constantly on (bed overheating). The first case could result in prints potentially coming loose before being finished. When stuck in the on-position, the bed could reach a temperature in excess of 140-145 degrees Centigrade. This would not be enough to start a fire, but will result in a stronger than usual odour from the hotter than usual PLA or ABS print. Still, do not leave a printer unattended and always have a smoke detector above your printer! If necessary replace the relay with a new one of the correct rating (12V 30A) and take care to wire it up in the same way.

Step 30: Conclusions

I really like my DeltaTrix 3D printer. I think it is awesome! Since building it I have been able to print improvements to my own printer and I have been able to print some designs I never would have seen become reality otherwise.

If sufficient peoples would like to have a DeltaTrix 3D printer of their own, but do not have the means to make all the bits themselves, I will potentially start a Kickstarter campaign and use it to offer kits for self assembly. In the long term I am also prepared to supply fully built units, but not just yet...

Update (26-12-'13): A Kickstarter project for the DeltaTrix 3D Printer is now live!

The name of my printer is not DeltaTrix without a reason. Everyone can see it is a Delta, but in terms of the trix part, there are loads of tricks it has up it's sleeve:

  • All uprights are identical. An extruder and filament coil can be fitted to all three of them. Although the RAMPS electronics can only provide for two print heads as a default, three extruders can be fitted from a mechanical point of view.
  • On top of the printer there is some free space for something... I already tried fitting a turn table in conjunction with an Xbox Kinect sensor, acting as a 3D scanner. So far I am not entirely happy with the end result as I think the Kinect is more suitable for people-sized objects. Larger objects could be done with a normal 2D (phone) camera in conjunction with 123D Catch and smaller objects should be good with a laser/camera based approach. TBC...
  • All of the sides have a defined opening, ready to accept a door panel for closing them off. As the print head can go beyond the door opening, any potential door panel would need to accommodate this.
  • I painted mine in white, gloss paint. What colour will you paint yours or will you leave it natural with/without lacquer?
  • For now I used screw terminal blocks for connecting the wires of the print head assembly to machine. This makes a lot of sense as I am still experimenting. As an example, only very recently I have connected a distance sensor. No problem, extra 3-way terminal block fitted and I was away! In the long run I would like to replace the blocks with a neat connector. Suggestions are welcome!
Microcontroller Contest

First Prize in the
Microcontroller Contest

Build My Lab Contest

Fourth Prize in the
Build My Lab Contest

I Could Make That Contest

Participated in the
I Could Make That Contest