Thursday, 21 January 2016

DIY 3D Digitizing Arm

*This text is a work in progress and will be updated regularly*

3D Digitizing Arm Project

For many years I dreamt of creating a 3D digitizing arm similar to the great Microscribe3D or FaroArm products. I've dabbled in various data gathering projects before e.g. building a 3D laser scanner, 2D computer vision for extracting data measurements and 2D motion capture for animation purposes but to this date the unique mechanism of these digitizers has always intruiged me.

As usual my inquisitive nature got the better of me and I was pretty sure I had the skills to build my own 3D arm based digitizer. I gathered as much technical detail and knowledge as I could find relating to how this device functioned and set about the project with eager interest. This article follows and details the project to completion with photos of the prototype arm, the serial connection utility and the Blitz3D virtual interface.


Without access to a real Microscribe I had to research it's characteristics by watching product videos, reading patents documents, manuals and product reviews. I gained invaluable knowledge into its mechanical inner workings, its precision digital encoders, and how it applied complex trigonometry in hardware to work out the location and orientation of its digitizing tip. These findings were crucial to help formulate a solid idea in my mind of how to simplify the whole project, keep costs to a minimum, yet still create a fun 3D arm digitizer that was reasonably accurate and robust.

Project Kit Requirements

  • Arduino Uno
  • Four potentiometers
  • Micro switch 
  • Wooden doweling 
  • Jump wires
  • Screws
  • Tie wraps
  • Blitz3D
  • VB6

Building The Prototype

Prototyping the initial idea using potentiometers and cardboard lengths.

Testing realtime data capture using my custom Arduino serial driver and Blitz3D.

Testing complete! Building a sturdier arm using wooden dowel.

Arm complete and used to digitize a small statue.

  Digitizing complete. Point cloud viewed on Points2Polys.

Digitizing a 2D illustration

Digitizing an object (slipper)

Real time point cloud visualisation in Blitz3D

3D object point cloud