← Back to projects
2025–2026 Mechanical Design v2.1 — Current

Cycloidal Drive

A parametric cycloidal drive generator built in FeatureScript — fully defined by three inputs: output size, gear ratio, and eccentricity. 3D-printed lobes, metal output pins, and ball bearings throughout.

Onshape FeatureScript Robotics
Writeup

Overview

Start with why the project exists. One or two sentences of context — what problem were you solving, or what were you curious about? Keep it plain and direct.

Approach

Walk through the interesting design decisions. Don't list every step — focus on the choices a reader would actually learn something from.

  • First key decision or constraint
  • Second decision that shaped the design
  • Something that didn't work and what you tried instead

Results

What did you end up with? Did it work? Include hard numbers if you have them (tolerances, efficiency, tests passed). Honest reflections land better than marketing copy.

What I learned

The one thing you'd tell another engineer if they were about to build the same thing. This is often the most-read paragraph of a project writeup.

Revision Log

How it evolved.

A version-by-version record of what changed and why. Updated as the design develops.

v2.1 Current 2026 · 04 · 13

Output pin clearance and tolerance tuning

After printing v2.0 and measuring real-world backlash, I tightened the output pin hole diameter and adjusted the lobe clearance offset in the FeatureScript. No geometry changes — just manufacturing reality corrections.

  • Output pin holes reduced by 0.15mm for tighter press fit
  • Lobe-to-housing clearance updated from 0.2mm to 0.15mm
  • Backlash reduced from ~2.5° to ~0.8° in physical test
v2.1 final assembly
Final assembly
Output pin fit test
Pin press-fit test
Backlash measurement
Backlash measurement
v2.0 Superseded 2026 · 03 · 01

Full FeatureScript rewrite — user-defined eccentricity

Rewrote the generator from scratch to expose eccentricity as a first-class input rather than deriving it from ratio. This unlocked designs that were previously impossible to express.

  • Eccentricity now a direct user parameter (was computed from ratio)
  • Gear ratio and output diameter remain independent inputs
  • Pin circle diameter auto-calculated from eccentricity and lobe count
  • First version to successfully print without geometric interference
v2.0 CAD model
v2.0 CAD model
First successful print
First interference-free print
v1.1 Superseded 2026 · 01 · 18

Housing geometry and bearing seat added

Added the outer housing and bearing seat to the FeatureScript so the whole assembly could be generated from one feature. Discovered the lobe profile equation had a sign error that caused interference at low eccentricity.

  • Outer housing with bearing seat now generated automatically
  • Fixed sign error in lobe offset equation
  • Clearance gaps added between lobe tips and housing pins
v1.1 housing design
Housing geometry
Lobe interference problem
Interference at low eccentricity
v1.0 Initial 2025 · 12 · 04

First working lobe profile generator

First FeatureScript that could generate a cycloidal lobe profile given a user-specified gear ratio and output size. No housing, no bearing seats — just the lobe geometry as a proof of concept.

  • Lobe profile generated from parametric curve equations
  • Ratio and diameter as inputs; eccentricity derived
  • Manual housing design (not yet part of the script)
  • Printed in PLA — print succeeded but tolerance too loose for real use
v1.0 lobe profile sketch
First lobe profile
v1.0 proof of concept print
Proof of concept print