AN OPEN-SOURCE MICRO-MANIPULATOR THAT STEPS 50 NANOMETERS WITH ORDINARY STEPPER MOTORS
A desktop XYZ micro-manipulator that makes 50-nanometre steps using ordinary stepper motors and magnetic encoders, driven by plain G-code and released under MIT.
ScienceOpen-hardware
Built withRaspberry Pi Pico / RP20403D printing
- difficulty
- ●●●●●
- time
- a weekend-plus
- license
- MIT
- repo
- repo ACTIVE1,858 stars
●●●●● · a weekend-plus · MIT · 1,858 stars · repo ACTIVE
WHAT YOU’LL NEED
Jump to section
COMPAREE VERDICT
This is a three-axis micromanipulator that reaches 50 nanometre step sizes using ordinary stepper motors, magnetic encoders and closed-loop control at 30 kHz, in a working volume of about 23 mm per side. It takes G-code, so if you have run a CNC machine, the interface will feel familiar. The MIT licence explicitly covers the software, hardware design and documentation. The hard part is not the licence or the files — it is that there is no written step-by-step manual. You work from the FreeCAD model (which now includes every pin and fastener), the build chapter of the main video, a second video on making the ball joints, the setup guide and the Discord. The creator did not write it for someone who has never wired a stepper driver or debugged a motion controller. If you have built a 3D printer from scratch or tuned a CNC machine, this is within reach. If you have not, the learning curve will be steep and the debugging will take longer than the build. Keep in mind that 50 nm is step resolution; the creator says absolute accuracy is significantly worse. The single thing most likely to go wrong is the mechanics — inconsistent ball joints or rod lengths, or a misaligned encoder, will cost you the precision.
IN THE REPO
GOOD TO KNOW
- —MIT license explicitly covers hardware, firmware and documentation.
- —FreeCAD models and STLs are in the repo. KiCad board files with Gerbers are present.
- —C++ firmware with motion path planning is included. G-code interface works like a CNC machine.
- —Bill of materials is provided. No assembly manual — you will debug from the code and images.
- —Magnetic encoders and closed-loop control run at 30 kHz. The demo video ends with results and applications such as automated microscopy of a chip die.
- —This is a research tool, not a drop-in replacement for certified lab equipment.
Parts to buy
9 itemsFrom our check of the build. Exact quantities and part numbers are in the creator’s BOM.
Can I build this?
Build at your own risk. Projects involve tools, electronics and sometimes mains voltage — follow the creator’s safety notes.
Videos
An Open Source Motorized XYZ Micro-Manipulator - Affordable sub µm Motion Control
About 430,000 views. Covers the ball joints, motors, magnetic encoders, electronics, firmware and kinematics, then a build and assembly chapter (from 14:33) and results under a microscope.
More builds like this
All projectsGallery
Start here
Navigation into the creator’s own docs — we don’t rewrite the guide, we route you to the source.
- 1.Clone the repository and read the README to understand what the project does and does not include.
- 2.Open the BOM and verify you can source the NEMA 17 motors, MT6835 encoder modules, 1 mm precision steel balls and N52 magnets.(Part numbers are listed. Availability varies by region.)
- 3.Load the FreeCAD models to see how the mechanics fit together.(There is no assembly manual. You will work from the CAD and photos.)
- 4.Set up PlatformIO and compile the firmware to check for dependency issues before you order parts.(The C++ code is well-structured but assumes you know how to configure stepper drivers and motion controllers.)
Resources
Documentation, files and community threads for this build — we link straight to the original sources and never rehost the creator’s files.
KNOWN ISSUES
- No written step-by-step manual. You build from the FreeCAD model, the two YouTube videos (device and ball-joint manufacturing) and the setup guide — and the Discord is the place to ask.
- Magnetic encoder alignment is critical — the firmware's calibration now checks for it, but a misaligned encoder will cost you the fine 50 nm step resolution.
- The BOM has suggested supplier links, but the README warns it is not yet updated for hardware v4.0 — cross-check against the FreeCAD model, which now includes every pin and fastener.
- G-code senders vary in quality. Test yours with simple moves before you run a full job.
- Power it from 5 to 6 V (2 A) as the README specifies — the board has no current sensing, so supply voltage sets motor current and heating, and the creator notes that heat causes thermal drift in the printed parts.
- This is a research tool. Do not assume it will drop into a regulated lab workflow without calibration and validation.
Can I use this to replace a commercial micromanipulator in a production lab?
No. This is a research build, not certified lab equipment. You can use it for your own experiments, but it has not been validated for regulated work.
Do I need a microscope to use this?
No, but the project was built for microscopy work. You can drive it with G-code for any three-axis positioning task.
What if I cannot source the exact encoders in the BOM?
You will need to modify the firmware to match the new encoder's resolution and interface. The code is readable, but it is not plug-and-play.
How hard is the mechanical alignment?
Hard. The 50 nm figure is step resolution — the creator stresses absolute accuracy is much worse — but everything still has to be square and rigid, and ball-joint and rod-length consistency matter most. Budget time for test moves and joint calibration.
Community builds
No community builds yet — be the first, we feature the best ones.
Discussion1
FROM THE COMPAREE TEAM
The device can make steps down to 50 nanometres in a 23 mm cube of travel and takes plain G-code over USB. What would you use a desktop micro-manipulator for: microscopy, optical alignment, probing chips, or something else?
Diffraction Limited
Diffraction Limited is the YouTube channel behind this design, a successor to an earlier manually operated 3D-printed micromanipulator. The whole design is released under an MIT licence that explicitly covers hardware and documentation, and the main video has about 430,000 views.
DISCLAIMER
- Comparee is not the author of the projects featured here. All rights to each project belong to its creator — every page links to the original source, and we never host creators’ files.
- Information is provided without warranty and may become outdated as projects evolve. Prices are indicative bands only — always check the creator’s parts list for current costs.
- Building and operating any project is at your own responsibility. Protective equipment, safe workshop practice and compliance with local regulations are the builder’s responsibility.
CompareeTEAM1mo agoedited
Practical notes from our verification: the MIT licence explicitly covers the hardware design and documentation, not just the software, which is rare and worth calling out. The main video (about 430,000 views) is more than a demo: it has a dedicated build and assembly chapter, and the README points to a setup guide for new devices, a second video on making the improved ball joints and linkages for hardware v4.0, and a Discord for build help. The mechanism is parallel kinematics with three NEMA 17 motors driving linkage rods on miniature ball joints, not linear stages. Two cautions: the README warns that the BOM has not yet been updated for hardware v4.0, so cross-check it against the FreeCAD model, and the 50 nm figure is step resolution, not accuracy; the creator says absolute accuracy is significantly worse. If you have built a 3D printer or CNC machine from scratch, the build will feel familiar. If not, budget extra time for alignment and calibration. Correction (4 October 2026): we re-checked this page line by line against the project's own repository, documentation and videos, and fixed errors in earlier versions.