Build a 3D scanner with infinite resolution for just $50

All you need is a DSLR camera, an Arduino, a stepper motor driver, a stepper motor, an IR LED and a LCD shield.

Looking for desktop 3D scanner with inifitinite resolution? Well, the good news is that you can get your hands on one for just $50. The bad news is that, you will need a DSLR camera. That’s because Maker Whitney Potter was able to create his own using a Nikon and an Arduino-driven stepper motor.


“Desktop 3D scanning has made great leaps in recent years but it still has great limitations,” Potter explains. “Scanner hardware is built around a specific scan volume and resolution. You can get decent results, but only if your object fits that sweet spot. If you’re object is too small, or too detailed or your scanner is just having a bad day, your scan will look like a potato. Luckily there is another approach.”

The method he is referring to is photogrammetry, which constructs 3D images from a set of partially overlapping 2D images. The limiting factor with this approach is the quality and spacing of the photographs. Each picture must be well exposed and perfectly focused. Plus, there must be sufficient overlap between the photos so the rendering software knows where each shot belongs. Although this can be done with some practice on larger objects, it is virtually impossible with smaller subjects. This is where the Arduino-powered stepper motors come in handy.


As aforementioned, Potter’s DIY 3D scanner employs a stepper motor controlled by an Arduino Mega (ATmega2560) to turn the scanned item by a fixed amount. An infrared LED then triggers the camera’s wireless sensor, setting off the shutter. This process is repeated until photos have been collected from all angles, allowing one’s photogrammetry software to reproduce an accurate and high-res 3D image of the subject.

Meanwhile, an LCD display shield with a set of buttons enables a user to command the Arduino. With these buttons, the user can select the number of pictures to be taken per revolution. The scanner can run in two different modes. In automatic, it takes a picture, advances the stepper and repeats until it has completed a whole revolution. Whereas in manual, each push of the button captures a picture, advances the stepper and waits. According to Potter, the latter is particularly useful for scans where each photo needs to be framed and focused manually.


Although Potter’s Arduino sketch has been configured for a Nikon DSLR, it can be set up to work with pretty much any other brand of camera. The Maker utilized Sebastian Setz’s Multi Camera IR Control library, which allows it to work with any model that uses an IR remote.

In terms of photogrammetry software, Potter recommends Agisoft Photoscan and Autodesk Memento, as well as Autodesk 123D Catch for those on a budget. Intrigued? Head over to the Maker’s Instructables page where you can find a step-by-step breakdown of his project.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s