This page describes basic concepts used in the Contraptor framework.


A construction set has the versatility advantage by making it possible to build many things from a small set of unique components. The flip side is that a number of constraints are imposed upon the geometry of components and things assembled from them.


The three-dimensional 1" grid divides the Contraptor space into 1" cubes, or cells. The 1D-beams such as angle and square tube, occupy a number of cells typically equal to the beam length in inches. The 2D-plates such as pegboard and acrylic, occupy (the same face in) a number of cells typically equal to the area of the plate in square inches. The interface plane between components coincides with one of the planes formed by the three-dimensional grid. The mounting holes are located at the center of the cell faces.


Existing building materials that use 1" grid, for example pegboard (ideal)*, grid beam, T-slot, perforated angle/tube are considered compatible with Contraptor. Any custom shape with holes on 1" grid would also likely be compatible with Contraptor.

This is basically how the Erector set works and if left at that, Contraptor would be just the scaled up version.

Motion extensions and subassembly grids

The core of the Contraptor framework is the linear motion extensions offering several linear motion and drive system approaches, each with its own advantages and disadvantages. A Contraptor linear motion extension allows the movement of one subassembly relative to another subassembly in one axis. Each movable subassembly has its own 1" grid that is independent from the grids of other subassemblies.


In order to be able to use various linear motion approaches with the same set of universal driving components, additional constraints are placed on the relationship between the linked subassembly grids and in turn, on the geometry of the linear motion components. Two subassembly grids linked by a linear motion extension are offset by 1/4" relative to each other in one of the 2 fixed axes (3rd being the movement axis). The choice of this distance stems from several considerations such as the need for clearance between subassemblies, desire to minimize the moment arm between subassemblies, availability of materials from which the set can be built.


The drive components that move the subassemblies are also designed to be universally used with various methods of actuation such as leadscrew and belt, which places additional constraint on the drive shafts - that they must pass through the center of the 1" cell (as opposed to being located on the grid lines).

Linear motion

Currently two linear motion options are available in Contraptor and three more are in development.

Sliding elements and angle


Status: available


  • Very inexpensive
  • Reasonably accurate


  • High friction
  • For torsional stiffness, pair is required
  • Each parallel element requires own actuator

The sliding elements are best actuated by leadscrews. Each sliding element should have its own actuator, to avoid binding. Actuation by belt drive is possible, but requires lowering the friction which introduces some play between the sliding element and the angle. Belt drive can work if the accuracy requirements are not very high (~1/16"). Lighter stages, well tensioned belts, and slower speeds improve the accuracy.

Linear bearings and rails based on drill rods


Status: available


  • Low friction
  • Rail is fully supported -> can be any length
  • Parallel bearings can use shared actuator


  • Side-loaded (ball) bearings limit useful load
  • At least pair is required per stage
  • Rails are somewhat heavy

The linear bearings are best used with light-duty loads over long distances. They can be actuated by either belt or a leadscrew. Parallel bearings can be driven by the same actuator. Lighter stages, well tensioned belts, and slower speeds improve the accuracy.

Linear bearings and rails based on steel strip

Status: design draft

Linear bearings and square tube

Status: design draft

Drill bushing and drill rod

Status: concept

Drive system

Currently two drive system options are available in Contraptor and more are in development.

All-thread rod leadscrew drive

Status: available

Timing belt drive

Status: available

Contraptor makes it easy to create a 1:1 belt drive. With the suggested 10 tooth XL 3/8" width pulleys, you can calculate the belt length for any shaft separation. [Shaft Width" * 2] + 2" = Total Belt Length". So if you needed a belt to span shafts that are 15" apart, you'd need a 32" belt. (Status of this comment: DRAFT)

ACME leadscrew drive

Status: prototype built

Rack and pinion drive

Status: concept

ideal pegboard - most pegboard sold in US hardware stores slightly deviates from 1" spacing which accumulates into error as large as 1/4" over 2-4 ft span

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License