In the previous blog post, we completed the assembly of our 3D printer. We’re almost ready to print, but there’s a few final bits and pieces we need to do in preparation first.
In this blog post we will walk through:
- Updating the printer firmware
- Calibrating the Z axis and levelling the build platform
- Loading filament
Before using the printer for the first time, we needed to check that the firmware was the latest version, and update it if needed. The current firmware version is displayed on printer’s LCD screen when the printer is powered on, and can also be viewed from one of the LCD menu options.
The latest version of the firmware can be downloaded from Velleman’s website. You will also need the Arduino IDE (only required for firmware updates, not for normal usage). Velleman recommends using version 1.0.6, but we had a later version already installed and this seemed to work without any problem.
Install Arduino and Repetier Host if not already installed, as this will also install the USB drivers required to communicate with the printer. The next step is to check which port on the computer has been allocated, by opening Device Manager and expanding the Ports (COM & LPT) section. The printer should appear as ‘USB Serial Port’ – in the picture you can see that on our computer it was allocated COM3:
We can now start up the Arduino software, and open up the folder where we downloaded the firmware. We loaded the main program for the firmware called Marlin.ino.
Before uploading the firmware, we need to set a couple of parameters in the Arduino software. The first is to select the type of chip we want to upload to using the Tools > Board menu, in this case Arduino Mega 2560 or Mega ADK. We also need to select the COM port we just identified, using the Tools > Serial Port menu and selecting COM3.
Finally, we need to tell the printer that we want to upload firmware. First unplug the printer from the mains – this is very important to avoid inadvertent uncontrolled heating of the print head. Lay the printer on its front so that the main board underneath can be accessed. Near the centre of the board is a small 2 pin connector labelled JPROG. In normal use, this connector should be open, i.e. having nothing shorting its two pins together. To upload firmware, it needs to be shorted by placing a jumper across it.
With the USB cable connected to the printer and the computer running the Arduino software, we can now start the update by selecting the Upload option from the Arduino software (the right pointing arrow):
The LED lights on the printer main board will flicker during the upload. Once the Arduino software indicates that the upload process is finished, the jumper can be removed from the JPROG connector and the printer powered up again. The LCD screen should show the updated firmware version.
Whenever the firmware is updated, the printer’s memory for some of its settings needs to be reset. This is done using the printer LCD menu:
First reload the default settings: Settings > Restore failsafe
Then store the new settings into the printer’s memory: Settings > Store memory
With the firmware updated, the next step is to level the build platform and calibrate the printer’s Z axis. For the printer to produce good results, the build platform needs to be at the right distance from the print head, and that distance needs to be uniform across the entire area of the print bed. The print head distance is crucial to get objects to stick correctly, and it may take some trial and error to get it correct the first time.
To start, we need to perform an Auto Home command using the LCD menu.
This will move the print head to the rear right position (X, Y coordinates 200, 200) and raise the build platform to maximum height (Z 0). If the Z stage adjustment piece was screwed in the right amount during the build, the platform should stop 2-3 mm from the print head.
The height of the platform can be adjusted using the screw on the bottom right of the Z stage. Tightening the screw will raise the platform, loosening it will lower the platform. After each small adjustment, the Auto home command can be repeated to check the position. At this stage, we want to get the platform to within 1mm or so from the print head. Make sure to make small adjustments as we don’t want to crash the print head into the platform which could damage the nozzle.
To perform even finer adjustment, we can use the thumbscrews at each of the three points that support the build platform. The lower thumbscrew locks each screw into position and must be loosened to adjust. The upper thumbscrew can then be turned to adjust the height before locking it in place again with the lower screw.
We start with the rear right screw, where the print head is currently resting. Loosen the lower thumbscrew, then turn the upper thumbscrew until the nozzle is approximately 0.3mm from the print head. The exact distance needs to be determined by trial and error, but we found 0.2mm worked best. The printer instructions suggest to use a folded piece of paper, but we found it was more accurate and reliable to use a feeler gauge. The ideal height should allow the blade of the gauge to just touch the nozzle but still be able to move freely – it’s easiest to raise the platform until the nozzle just starts to snag the blade and then back it off slightly.
Once the rear right position has been set, lock it in place using the lower thumbscrew. Now we will do the same with the rear left position, but first we need to move the print head there using the printer LCD menu.
Select the Control Printer > Move Axis > Move 10mm > Move X axis option from the LCD, then turn the knob to move the print head in increments of 10mm. As it moves make sure it does not touch the build platform. We need to move it to the 0 position, i.e. its left-most position.
Once the print head is in position, adjust the platform height in the same way and tighten up the lower thumbscrew. Now we will adjust the front centre screw. Use the LCD menu to move the printer to position X 100 and Y 20, and then adjust the platform height as before.
Once all three positions have been adjusted, it’s a good idea to double check each one by moving the print head as before as adjusting one point may slightly affect another.
Now we’re ready to load some filament into the printer to print with. We are going to start with PLA as it’s easier to work with. First, make sure the free end of the filament is clean, and cut it at an angle to make it easier to load. PLA is quite hard so you may need to use pliers or side cutters to cut it cleanly. Place the filament spool on the spool holder, and feed the free end into the bottom of the extruder while pressing the release lever.
The filament needs to be pushed through until about 1.5cm of filament is visible in the tube above the extruder. This can be a little tricky since the tube is not quite in a straight line with the entry point, a small screwdriver can help to direct the filament in the right direction to enter the tube.
Using the printer LCD menu, select Control printer > Load filament > Right (Ext 1) > Load PLA right. (Choose Left (Ext 2) to load the other extruder, or Load ABS if using ABS instead of PLA). The LCD screen instructions tell us to position the filament as we have just done, so we can go ahead and press the knob to start the loading process.
The extruder will heat up to the required temperature, and then the filament should start to be drawn up through the feed tube and into the nozzle. It will take quite some time to reach the print head, but eventually a thin stream of filament should start to emerge from the nozzle. The printer will continue to extrude for a while to purge any filament that might have remained in the nozzle from a previous spool, and to make sure the new filament is ready for use. When it is done, the print head will return to the rear right position and the nozzle will cool down. The extruded filament can then be cleaned off the print bed, and any remaining residue on the nozzle should be wiped off with a damp cloth while it is still hot.
Right, now we’re ready to print our first object! In the next post in the series we’ll show our first few attempts at printing, and look at some of the common problems we encountered and how we resolved them.
Keep an eye on the 3D Printing section for all the posts about our build, post questions in the comments or tweet us at @dannynic or @sarah_nic.