Due to popular demand, I’ve decided to take my MakerGear Mosaic assembly guide one step further, past the physical assembly of the robot, and cover the process of getting through the first print. What started as a series of seven guides is now a series of eight:


Once you have the robot itself built, the number of possible ways to set up and run the printer start to multiply rapidly. Your options and preferences will vary based on the computer you’re using, the operating system on that computer, and the CAD, CAM, and printer control programs you choose. Unfortunately, I can only report what’s worked for me. If your experience is different, and it may well be, please feel free to comment below and tell us about it.

I chose to dedicate an old laptop to my Mosaic. Specifically, it is a Toshiba Satellite A25-S207 running Windows XP SP 3. I don’t ask it to do much else while it’s running the printer, except occasionally capture time-lapse images of an ongoing print using an attached webcam. There’s a PCMCIA WiFi card I can pop in when I need internet, but I don’t usually leave it connected to the web.

This tutorial does not cover 3D modelling, and assumes you will be using a downloaded .STL file. Traditionally, the first print off of a RepRap is supposed to be a shot glass, and the traditional file is minimug.stl. The original file is available on the RepRap wiki, but for whatever reasons it is rotated at an unprintable angle, which is inconvenient for beginners.

What you put in it, of course, is up to you, but I’ve found Glenfiddich Solera Reserve to be an excellent, if pricey, test fluid. Solely on the basis of its viscosity, you understand.

Though there are more exotic possibilities, generally you will be printing in either ABS (Acrylonitrile Butadiene Styrene) or PLA (Polylactic Acid). Of the two, I find PLA preferable in pretty much every way. It prints cleaner, in my experience, does not emit noxious odors, and melts at a lower temperature. You’ll want to experiment with ABS yourself, of course, and see if you agree with my assessment. But I think you should start out with PLA. Your Mosaic kit probably included a couple of short coils of PLA in different colors.

Project Steps

Download and install software

The Mosaic electronics are built around an onboard Arduino microcontroller. If you don’t already have the Arduino Development Environment installed on the computer you will be using to run your Mosaic, do so now.

The CAM program takes your STL model and converts it into a set of specific mechanical instructions (in G-code) for the printing robot. Skeinforge is probably the most popular choice for RepRap-type printers, but I was persuaded to start with Slic3r and have had no reason, so far, to experiment with anything else.

The printer host provides a real-time control panel for the printer itself. Pronterface is recommended by MakerGear. I installed the older version with all the Python dependencies, but there is a new version called Printrun that does not require any other programs and is now officially recommended by MakerGear for Windows users.

Connect to the printer

Connect the Mosaic to your computer via USB A/B cable. If you’re asked for a driver, you should be able to find it in the /drivers subdirectory of your Arduino IDE folder.

Locate the Arduino in Windows Device Manager. It should be under “Ports (COM & LPT).” Take note of which port the Arduino is using (COM1, COM2, COM3, etc.)

Open Pronterface, select the correct port for your Arduino in the dropdown, and select 115200 for the baud rate in the adjacent dropdown. Then click “Connect.”

If everything is working correctly, you will shortly be rewarded with the report “Printer is now online…” in the right-hand window.

You’ll also probably receive the message “SD init fail.” Unless you are trying to attach an SD card reader to your printer, you can safely ignore it.

Test motors

When testing the robot for the first time, you may want to keep a hand on the plug (or plug the printer into a power strip with a switch on it) so you can power down quickly if the printer does something unexpected. It is extremely unlikely that anything dangerous or damaging is going to happen, but it’s best to err on the side of caution starting out.

In the Pronterface control panel, click on the buttons in the control ring to test the motion of X- and Y-axis steppers. Z-axis control is along the vertical bar to the right of the control ring. “Extrude” and “Reverse” buttons are below the control ring.

Motion in the negative X direction should move the nozzle toward the lead screw.

Motion in the negative Y direction should move the build platform toward the back of the printer, i.e. away from the part that says “MOSAIC.”

Motion in the negative Z direction should move the platform UP.

Put the end of a piece of PLA filament into the extruder as shown. Clicking “Extrude” should pull the filament down into the extruder. Clicking “Reverse” should push it back up and out.

Note which, if any, of the four motors is reversed, then power down the machine, remove the corresponding 4-pin connectors from the RAMPS PCB, flip them over, and plug them back in.

Configure CAM Settings

Open Slic3r.

In the “Printer and Filament” tab, set “Nozzle diameter” to 0.35 (check your Mosaic packing list to verify), “Print center” to 65, 65; filament “Diameter” to 1.75, and filament “Temperature” to 185.

In the “Print Settings” tab, set “Layer height (mm)” to 0.3.

In the “Start/End GCODE” tab:

Replace the default “Start GCODE” with “G92 X0 Y0 Z0 E0”. This tells the printer that, at the start of the job, all the motors will be in their “home” positions.

Replace the default “End GCODE” with the lines “G00 X0 Y100”, “M104 S0”, “M140 S0”, and “M84”. These tell the printer, when the job is over, to move the hot nozzle away from the printed object, to turn off the extruder and bed heaters, and to deactivate all the stepper motors, respectively.

Click on “Save Configuration” at the top of the window and save your settings in a convenient directory.

Slice the model

When your configuration settings are correct, click the “Slice” button and find minimug.stl, or other .stl model you want to print, in the file window that appears. Select the file and click “Open.”

Slic3r will process the job for a few minutes to a few hours, depending on the complexity of your model and the horsepower of your computer. Minimug.stl should take less than a minute on most equipment.

When the job is done, you should receive a “successfully sliced” report, or an error message indicating a problem with your model. Though Slic3r has routines to automatically correct some types of errors in the model, it is best not to rely on these. If you’re using the recommended minimug.stl model, you should not have to worry about slicing errors for now.

If the model slices without errors, Slic3r outputs a .gcode file into the same directory as the .stl source file. If your model was “minimug.stl,” for example, Slic3r will output “minimug.gcode.”

Mount build surface

Cover the square aluminum plate build surface with strips of blue painter’s tape, as shown.

Secure the taped build surface and the heating element to the Mosaic’s leveling plate with a binder clip in each corner, as shown.

Be sure there is no filament stuck to the bottom of your nozzle, and adjust the Z-axis end stop height so that you are just able to slide a piece of printer paper under it.

Your platform should already be leveled, but you may want to use Pronterface to jog the nozzle around on top of the printer paper. If it binds anywhere, you may want to adjust the platform leveling.

Printer setup

Open Pronterface.

Click “connect.”

Adjust the nozzle temperature to 185 and click the adjacent “Set” button. Adjust the bed temperature to 60 and click the adjacent “Set” button.

Click “Load file” and then select “minimug.gcode” or other .gcode file produced bv Slic3r.

Click the checkbox next to “Monitor printer.” This will cause periodic temperature reports to appear in the console.

Once the nozzle and bed temperatures have stabilized around 185 and 60 degrees, respectively, prime the extruder. The box next to the “Extrude” button should say 5 mm. Click the “Extrude” button several times, until a narrow thread of molten plastic jets from the nozzle.

Pluck the extruded plastic off the nozzle tip with tweezers.

Start print

If you’ve been following the Mosaic build guide series, your printer probably only has one limit switch installed, on the upper end of the Z-axis. Apart from this one position, your Mosaic does not know how to automatically find its “home” position and will have to be manually “homed” before each print. So far, I have not found this to be much of a nuisance, but if it bothers you, your Mosaic kit probably included at least two more limit switches. You can print out mounting brackets for them and install them on the X and Y axes at your leisure.

If the “Monitor printer” box is still checked, uncheck it now.

Click the X control on the -10 ring until the nozzle is as close to the inside corner of the printer frame as it can get. It will make a rude noise to let you know when you’re there.

Click the Y control on the -10 ring until the bed is positioned as far away from the front of the printer as it can get. Again, the rude noise will let you know when you’ve reached the limit of travel.

Click the Z control on the -10 button until the Z-axis upper limit switch clicks and stops the movement. This is the Z home position.

If you have a copy of Daft Punk’s album Human After All on hand, now would be a good time to start it up.

Take a deep breath and click the “Start” button.

Bottoms up!

If you’ve been following the guide closely, your Mosaic will begin by printing a “skirt” around the base of the object. Among other benefits, the skirt gives you a chance to make sure the extruder is laying a good bead before it actually starts printing the object. It may take a few centimeters before the bead starts to lay down evenly. I sometimes adjust the Z-axis height, while the printer is running, by turning the big white octagonal knob a bit if the skirt doesn’t look just right to me.

If you’re printing from a loose coil of filament, one that’s not mounted on a spool, you will have to pay attention during the printing to keep the coil from becoming tangled. One of the first things you’ll probably want to print, build, or otherwise add to your printer setup is a reel on which coiled filament can be mounted and positioned to unspool directly into the extruder. If you want to print a reel to hold coiled filament, this one is a personal favorite.

Once the print is complete, the nozzle should automatically move away from the completed object along the X axis, and the platform should move towards the front of the printer. The nozzle and bed heaters should also turn off, automatically. You can verify that they are cooling off by clicking the “Check temp” button in Pronterface.

Let the platform cool down to less than 40°C before removing the print. Removing it can take a bit of force.

Set the completed shot glass on a paper towel and pour in a bit of the libation of your choice. Let it sit for a minute or so. If everything is working correctly, the glass should be fluid-tight. Alcohol is thinner than water, I should note, and thus makes for a better test.


You will eventually want to experiment with almost every setting in the Slic3r interface and see how it affects the quality of your printed objects. When you get a feel for the software and the process of making prints in general, you may want to graduate to Skeinforge, which is less beginner-friendly but gives you more control over the details of how your model will be printed.

If you run into trouble, your best bet for a quick answer is the MakerGear IRC channel. The MakerGear website also has some helpful resources, including a Getting Started Guide that covers the use of Skeinforge/SFACT in detail. You should also feel free to leave a comment, below, if you run into difficulty or would like to suggest corrections to, or additional information for, this guide.