Skip to content

PIKA Build Process

Vik Olliver edited this page Jun 9, 2026 · 22 revisions
image

Overview

μRepRap Logo PIKA (Printable In-place Kinematic Assembly) is a µRepRap with the majority of the XY Table designed to be 3D printed in one piece without support on a conventional FFF printer using PLA filament. It marks a departure from the MAUS design in that it is designed for a specific purpose rather than a general μRepRap prototyping kit. It still uses the existing MAUS Axis Drivers with only a slight mounting point change on one part.

TL;DR

Start here.

Constructing A PIKA

Click the links below for construction details on the major components of the system. Please read the general construction notes, tools required, and 3D printing notes below before starting:

PIKA-specific files are on Printables though these will not be kept up to date between releases.

Optics

The prototype as built requires two USB Microscopes, self-illuminating, 30mm diameter cylindrical bodies. One should ideally have at least 8Mpixel resolution to observe the print area, the other can be of lesser quality and is used to gauge the approximate probe height. It is convenient if one of them can be obtained to fit a 16mm pole on a stand via a height adjustment system, but this is not essential. Test and measurements of output will require a bench microscope.

Two windows will be required to display the video output of the microscopes, preferably with zoom/pan capabilities. MPV or VLC are suitable applications, and many vendors supply their own software. However, few will manage multiple devices and the author ended up writing a simple CV2/PyQT utility to suit their own esoteric requirements.

CNC Control System

The CNC Controller drives 3 x NEMA17 400 step/rev (0.9 deg) motors with 5mm diameter output shafts approximately 23mm long. The more common 200 step/rev (1.8 deg) motors will suffice for 1 micron positioning if used with quality micro-stepping motor drivers.

The shafts can be round or have a flat. If motors with a different shaft length are used, the 5mm thick NEMA Plate can be omitted, a different length Drive Screw used, the thickness of the Motor Pillar Mount's base changed in OpenSCAD (motor_base_thick, maus_axis_driver.scad) or a combination of those. Note that some adjustment of mounting screw lengths will be required.

For I/O the CNC Controller needs to support Normally Open max & min limit inputs, have one spare output capable of driving a 20mA UV LED, and optionally a Z Touch input.

The NEMA17 motors in the assembly instruction illustrations are somewhat over-specified, and smaller ones will suffice.

Required Tools

You will require:

  • Screwdriver to fit chosen M3 fasteners
  • Pliers
  • Needle-nosed pliers
  • Small wire cutters
  • Small, sharp scissors
  • Fine blunt tweezers
  • Electric drill
  • 3mm HSS drill bit
  • Medium flat file
  • Fine awl or similar long pointy tool with blunt edges
  • Lighter or similar heat source
  • Masking tape
  • Thread locking adhesive
  • Cyanoacrylate adhesive ("Superglue")

You may find useful:

  • Magnifying glasses
  • Wire stripper
  • Haemostat
  • Dental tool with a hook and probe
  • Adjustable clamp
  • Portable bench vise
  • Hot glue
  • Soft-faced mallet
  • Caffeinated beverage

Consumables

The probe tip and the prepared glass slide used by μRepRap are considered consumable.

Rough tips be fabricated from hypodermic needles or acupuncture needles and are ideal for initial experience with the hardware when the chance of a probe being abused or accidentally destroyed is quite high. Fine tips are created by an amazingly simple electrolysis process.

The glass slides are standard cheap soda glass microscope slides. Coated in Sharpie Marker they form a surface that can be scratched and easily reused during testing. For more precise work a print bed is constructed on a glass slide with an aluminium foil resin reservoir from which the probe tip can be recharged like a dip pen.

3D Printed Components

Parts were printed on a Prusa Mk4 with a 0.4mm nozzle, taking approximately 25 hours in total and using less than 500g of filament. The parts should be printed in plain PLA or eSun PLA+, 0.2mm layers, 2 perimeters, 4 top/bottom layers, 20% grid infill. The majority of parts need no support or brim, with the exception of the Flexible Linear Coupling which needs brim only on some printers. PLA with additives to give unusual finishes such as matt, roughened, metallic etc. will definitely not work. Others might, but have not been tested. Cheap 'PLA' tends to have a very low actual PLA content, so stick with a reputable brand. The following should be compiled and printed from Github source:

  • Axis Driver, three of, currently in the 'maus' subdirectory
  • flexure_linear_coupling, three of, currently in the 'maus' subdirectory
  • pika_xy sheets 1 & 2
  • pika_probe
  • microscope_clamps

Names used in the assembly documentation will usually closely resemble the names used in the OpenSCAD design files.

Note: The prints may be tidied, particularly the screw and nut holes. But flexures have fine detail that you may be tempted to remove thinking it is a defect. If you see loose filaments around any of the flexures on any part, just leave them. It is highly likely that the flexure will be damaged if you attempt to remove the excess, and they will still function if it is present.

Metriccano

Metriccano is a system of generic 3D printed parts perforated by M3 holes on a 10mm grid that can be used for rapid prototyping. This is used throughout the μRepRap design, and is similar in concept to the English 'Metriccano' and American 'Erector Set' construction toys. It allows parts to be easily added, shifted, and replaced when developing prototypes as well as making an educational toy for children. It is available in the 'library' directory in the μRepRap OpenSCAD source code should you wish to customise or steal parts.

General Notes On Assembly

The gist of each section is to prepare any parts requiring hand tooling, insert captive parts, then assemble.

Not all sizes of M3 screw are available everywhere. In most cases a slightly longer screw will work, though some washers may be needed under the screw head to stop the screw shaft from, say, obstructing a moving flexure. In extremis, there's always the hacksaw but do not use any form of shear as you may distort the thread.

image

The easy way to insert M3 nuts into cavities

Varying tolerances on 3D printers and nuts will often make them difficult to insert. When inserting M3 nuts into cavities face first, it often helps to screw an M3 x 50mm screw into them for use as a handle. If necessary, tap them home with a small hammer or similar improvised tool.

image

Using a Nut Tool to insert a nut into a slot

When inserting M3 nuts edge first, it is essential that the sides of the nut are in parallel with the sides of the nut slot. The nuts will attempt to rotate as they are inserted, and jam in the slot. Insert them with needle-nosed pliers, tweezers, or a haemostat if you have fat fingers. Push nuts the rest of the way into the slot with a Nut Tool. Poke a pointed object into the screw hole and use that to align the nut. Note that, depending on individual 3D printer output, considerable force may be necessary for insertion. Sometimes you just need to hit it home.

Note: If the nut is being particularly stubborn and parallel jaw pliers of some description are available, these can be used to push the nut in with another nut. However, this is typically an indication that you are attempting to push the nut in the wrong orientation. Make sure the corner of the nut is as close to the centre of the slot as possible.

Calibration

Approximate calibration of an Axis Driver can be determined by viewing the 3D printed layer lines through a USB microscope as they pass the edge of the console window.

For a more accurate determination place a microscope calibration slide on the Stage. It is not necessary to fit a probe, and doing so may damage the slide.

Once the steps per micron are determined on X and/or Y this value can be used for the Z Axis.

Clone this wiki locally