0x23 / MicroManipulatorStepper
git clone https://github.com/0x23/MicroManipulatorStepper.git
🔥 on GitHub Trending today
A sub-micrometer 3D motion control plattform.
+56
stars, 24h · #144
—
stars, 7 days
—
stars, 30 days
2.2k
★ total
284
forks · 23 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageC++
License—
Created2025-08-28 (1y ago)
Last push9d ago
Watchers95
OwnerUser
Seen on GitHub Trending
- 2026-10-20 — #1 daily in c++ · +56 ★
Links
README excerpt
# Open Micro-Manipulator This project contains an open source low-cost, easy-to-build motorized **XYZ Micro-Manipulator** motion control platform achieving submicron precision. It's designed for applications such as optical alignment, probing electronic components, and microscopy. Check out the YouTube video for more information about the device and how it is built: An Open Source Motorized XYZ Micro-Manipulator - Affordable sub µm Motion Control Thanks to its parallel kinematic structure and miniature ball joints, it achieves good mechanical stiffness and a large range of motion. The motors are off the shelf stepper motors driven by a 30 kHz closed loop controller and a very precise PWM signal. A 'magnetic gearing' approach increases the resolution of the low-cost magnetic rotary encoders by a factor of 30 allowing for steps down to 50nm (**Please mind the difference between resolution and accuracy**. The absolute accuracy is significantly worse. The device can be controlled via simple G-Code commands over a USB serial interface and is thus easily integrated into other projects. The firmware implements a complete motion planning stack with look-ahead for smooth and accurate path following capabilities. ## Getting Started Below is a list of high level steps you can follow if you want to replicate the project. If you have questions or problems with the build or just want to discuss subjects related to the project, joint the projects community Discord Server. 1. Read this Document and watch the linked videos 2. Get the parts listed in Bill of Materials 3. Build the device and electronics 4. Change the hardware configuration according to your build hw_config.h 5. Upload firmware using VSCode with PlattformIO plugin 6. Calibrate axis Also check out the setup guide for new devices: Setup Guide ## ✨NEW: Hardware Version 4.0 A new version of the hardware has been released, fixing several issues with the previous design: - Self collision during homing fixed. - Connection of ball joint block with screws only was not well constrained and could rotated a bit. - No reliable way to ensure consistent linkage rod length - Unnecessary ball joint friction - Accurate ball position heavily dependet on print quality and corner rounding - Rubber bands could not be changed or removed once glued in. A video about the improved ball joint and linkage manufactoring process can be found on YouTube: Better Ball Joints for the Open Micro-Manipulator Also the FreeCAD model was restructured and improved and now includes all pins and fasteners. It now provides a reference for all required mechanical parts. WARNING: BOM is not updated yet... ## Open Micro-Manipulator GUI To make testing and using the Open-Micro Manipulator easy and convenient a python control program with a graphical user interface is provided here: Open Micro-Manipulator GUI. It has simple controlls to move the device around, while also displaying a live camera feed (e.g. from a microscope camera). Additio