A capstan-based drive mechanism for OSSM that enables higher load capacity with the 60AIM40F motor



The AIO version shown in these pictures mounts the control board in the front with cables routing to the motor in the back, based on a concept by @thearmpit. The AIO Cover part used here is a custom design not covered under CC BY-NC-SA 4.0 license.
This modification replaces the standard belt drive with a capstan-based system, enabling higher load capacity with the more powerful 60AIM40F motor.
What is a capstan drive?
A capstan drive uses rope and a pulley to transmit motion. For an excellent explanation of the mechanism, watch this video by Aaed Musa:
Capstan Drive Explained
Learn how capstan drives work and why they're effective for high-torque applications.
Why choose capstan over belt?
The standard belt-driven OSSM can experience slipping at higher torques. While this may result from build errors, the capstan drive eliminates this issue entirely.
Comparison to standard OSSM
- Same form factor as standard OSSM
- Equal or quieter operation
- Only 13cm effective rail length loss (450mm rail = 32cm stroke)
- 2.7x stronger (32kg vs 12kg capacity)
- Same maximum speed
- No belt slipping
- No custom PCBs required
- PitClamp compatible
- Compatible with all custom end effectors
- More complex build process
- Larger motor increases cost (~110€ shipped including tax to Germany)
- More parts to print
- Rail may slip in extreme use cases (resolved by re-homing)
This design has been tested extensively by the creator over several months with excellent results. Share your feedback in the Discord threads linked below.
MGN12H vs HG20
There are two rail variants for this build. The HG20 version is recommended if your budget allows.
MGN12H rails and carriages reach their limits with 30cm+ cantilevers combined with heavy toys (~1.5kg and up). This results in louder operation, bearing wear over time, and deflection issues.
The HG20 version addresses all of these and includes additional improvements such as a bigger drum and better rope guiding for smoother operation.
Additional cost: ~40€ more than the MGN12H version.
The MGN12H version works well for lighter loads and shorter cantilevers. It is considered the legacy variant -- if you can afford the extra cost, go with HG20.
Configuration options
AIO vs normal version
The AIO mod version mounts the control board in the front of the motor head with integrated cable routing. This is the recommended configuration.
The normal version includes no mounting solution for the control board. Choose this if you want to create your own custom mounting arrangement.
Pulley versions
The bushing pulley is superior in every way:
- Better durability
- No deformation over time
- Supports rail lengths up to 450mm (500mm likely possible)
Requirements: Appropriately sized bushing and epoxy glue for assembly.
Use the 3D printed pulley if you cannot source a suitable bushing:
- Functional but will deform over time under constant force
- Requires periodic replacement
- Maximum supported rail length: 400mm
Supported rail lengths
| Pulley Type | Tested Length | Maximum Recommended |
|---|---|---|
| Bushing | 450mm | 500mm (untested) |
| 3D Printed | 400mm | 400mm |
Rail lengths above 500mm are not recommended for this design.
Rope selection
Use only the specified rope type. Incorrect rope selection will result in stretching and failure.
Required rope: Liros DC pro 161 (or equivalent Dyneema DM20, SK99, SK75 with max 1mm diameter)
The rope must have minimal stretch under load. Testing by community member @neos demonstrated that generic UHMWPE rope from AliExpress stretches excessively and breaks under load. The specified Dyneema rope maintains consistent tension for reliable operation.
If you cannot source Liros DC pro 161, look for:
- Material: Dyneema DM20, SK99, or SK75
- Maximum diameter: 1mm
- Verified low-stretch construction
Deviate from these specifications at your own risk.
Print settings
Pre-configured .3mf files are included for most parts with optimal settings.
| Setting | Value |
|---|---|
| Walls | 6 |
| Infill | 20% |
| Supports | Try without for AIO_cover (bridges only); enable if needed |
Bill of materials
| Part | Estimated Cost | Source |
|---|---|---|
| 60AIM40F Motor | ~110€ | Superbuy/Taobao |
| OSSM Control Board + Remote | $91 USD (excl. tax/shipping) | Research and Desire |
| MR115 Bearings (4x) | ~3€ | AliExpress |
| Hardware kit | ~30€ | See fastener list below |
| PLA Filament (1kg) | ~8€/kg | AliExpress |
| Liros DC pro 161 Rope (5m) | ~15€ | Kite Line Shop |
| Bushing 20x24x40mm (id x od x l) | ~5€ | AliExpress |
| HG20 Linear Rail + HGH20HA Carriage | ~50€ (depending on length) | AliExpress (400/500mm) |
| Epoxy Glue | ~3€ | AliExpress |
| 4-pin JST Header Cable (30cm) | ~2€ | AliExpress |
| 2-pin AWG 18+ Wire (30cm) | ~2€ | AliExpress |
| Shrink tube (24mm ID) or Kinesio Tape | ~3€ | AliExpress or local drug store |
| 36V 5+A Power Supply | ~68€ | Voelkner (PSU) + Adapter |
| Total | ~380€ |
| Fastener | Quantity |
|---|---|
| M4x12 ISO7380 | 4 |
| M5x45 Countersunk | 2 |
| M5x75 Countersunk | 4 |
| M5x20 Hex Cap | 4 |
| M5x25 Hex Cap | 2 |
| M5x30 Hex Cap | 3 |
| M5x65 Hex Cap | 4 |
| M5x110 Hex Cap (fully threaded) | 1 |
| M5 Nuts | 11 |
| M4 Nuts | 4 |
The M5x110 fully threaded hex cap can be sourced from AliExpress.
| Part | Estimated Cost | Source |
|---|---|---|
| 60AIM40F Motor | ~110€ | Superbuy/Taobao |
| OSSM Control Board + Remote | $91 USD (excl. tax/shipping) | Research and Desire |
| MR115 Bearings (5x) | ~3€ | AliExpress |
| Hardware kit | ~30€ | See fastener list below |
| PLA Filament (1kg) | ~8€/kg | AliExpress |
| Liros DC pro 161 Rope (5m) | ~15€ | Kite Line Shop |
| Bushing 20x23x30mm (id x od x l) | ~5€ | Agrolager |
| MGN12H Linear Rail + Wagon | ~10-15€ | AliExpress (450mm) |
| Epoxy Glue | ~3€ | AliExpress |
| 4-pin JST Header Cable | ~2€ | AliExpress |
| 2-pin AWG 18+ Wire (30cm) | ~2€ | AliExpress |
| Kinesio Tape | ~3€ | Local drug store |
| 36V 5+A Power Supply | ~68€ | Voelkner (PSU) + Adapter |
| Total | ~345€ |
| Fastener | Quantity |
|---|---|
| M3x12 Hex Cap | 5 |
| M3x16 Hex Cap | 2 |
| M4x12 ISO7380 | 4 |
| M5x45 Hex Cap | 4 |
| M5x80 Hex Cap (fully threaded) | 1 |
| M5x45 Countersunk | 6 |
| M5x12 ISO7380 | 1 |
| M5x20 ISO7380 | 2 |
| M5 Nuts | 13 |
| M3 Nuts | 3 |
| M4 Nuts | 4 |
Assembly guides
Detailed step-by-step assembly guides are available as PDFs:
HG20 Assembly Guide
PDF assembly instructions for the HG20 variant.
MGN12H Assembly Guide
PDF assembly instructions for the MGN12H variant.
Printed parts and CAD files
All printable files and STEP sources are hosted on GitHub. Pre-configured .3mf files include recommended slicer settings.
Printable parts (STL/3MF):
| Part | Files |
|---|---|
| Capstan Drum | 3MF / Upper STL / Lower STL |
| Motor Head Front | 3MF / STL |
| Motor Head Back | 3MF / STL |
| Motor Head Cover | 3MF / STL |
| End Effector | 3MF / STL |
| Pulleys | 3MF / End Effector STL / Rail End STL |
| Rail End | 3MF / STL |
| Tensioner | 3MF / Upper STL / Lower STL |
| Standoffs | STL 1 / STL 2 / STL 3 |
| PitClamp Motor Ring (60AIM40F) | STL |
STEP source files:
| Part | STEP |
|---|---|
| Motor Head | MotorHead_60AIM40F_HGR.step |
| Capstan Drum | CapstanDrum.step |
| End Effector | EndEffector.step |
| End Pulley | EndPulley.step |
| Rail End | RailEnd.step |
| Tensioner | 60AIMTensioner_HGR.step |
| Bushing Pulley (Fusion 360) | BushingPulley60AIM_HGR.f3d |
Printable parts (STL/3MF):
| Part | Files |
|---|---|
| End Effector | 3MF / STL |
| Rail End | 3MF / STL / Alt 3MF |
| 8mm End Pulley | 3MF / STL |
| 12mm End Pulley | 3MF / STL |
| Pulley | 3MF / STL |
| Bushing Pulley | Top STL / Bottom STL |
| Tensioner | Upper STL / Lower STL |
| PitClamp Mini Ring (60AIM40F) | STL |
AIO Mod parts (recommended):
| Part | Files |
|---|---|
| Motor Head Front (AIO) | 3MF / STL |
| Motor Head Back (AIO) | 3MF / STL |
| AIO Cover | 3MF / STL |
| Standoffs | 3MF / STL 1 / STL 2 / STL 3 |
Normal (non-AIO) motor head:
STEP source files:
| Part | STEP |
|---|---|
| Motor Head | MotorHead_60AIM40F.step |
| Capstan Pulley | CapstanPulley60AIM40F.step |
| Bushing Pulley | BushingPulley.step |
| Bushing Pulley (corrugated, by @Beelsebob) | STEP |
| End Effector | EndEffector.step |
| 8mm End Pulley | EndPulley8mm.step |
| 12mm End Pulley | EndPulley12mm.step |
| Rail End | RailEnd.step |
| Tensioner | Tensioner.step |
Community support
Special thanks to everyone who provided suggestions and helped overcome challenges during development!