Week 2. Computer Aided Design
Week Assignment
Model (raster, vector, 2D, 3D, render, animate, simulate, …) a possible final project, compress your images and videos, and post a description with your design files on your class page
Learning Outcomes
- Evaluate and select 2D and 3D software
- Demonstrate and describe processes used in modelling with 2D and 3D softwares
- Demonstrate image and video compression
Introduction
This week I focused on Computer Aided Design (CAD) as part of the Fab Academy curriculum. The goal was to model a component of my final project using professional 3D modeling software, document the entire process step by step, and reflect on the tools and decisions made along the way.
For my final project I am building a robotic manipulator arm — a multi-joint mechanical arm capable of controlled, precise movement. One of the most critical mechanical components of any robotic arm is the gear reducer. Without it, the raw rotational speed of the stepper motor is far too high and the torque far too low to move the arm in a useful and controlled way. The reducer solves this by transforming high-speed, low-torque rotation from the motor into slow, high-torque output — exactly what each joint of the manipulator needs.
I chose to model the entire reducer assembly in Onshape — a professional-grade, fully parametric CAD platform that runs entirely in the browser. Onshape is used in real engineering environments and offers a complete set of tools: part studios, assemblies, sketch constraints, feature-based modeling, and much more — all without needing to install anything locally. Every sketch, every extrude, and every feature is saved automatically to the cloud with full version history and rollback support.
Why a Planetary Gear Reducer?
A planetary gear system (also called an epicyclic gear system) consists of three main elements:
- Sun gear — the central driving gear, connected directly to the motor shaft
- Planet gears — smaller gears that orbit around the sun gear while meshing with both it and the ring gear
- Ring gear — the outer gear with internal teeth that meshes with all planet gears simultaneously
This arrangement gives several key mechanical advantages over a simple spur gear pair:
- High gear ratio in a compact space — because the load is split across multiple planet gears, a meaningful reduction ratio is achievable without making the gearbox physically large
- Coaxial input and output — the motor shaft and the output shaft share the same centerline, which greatly simplifies integration into a robotic joint
- Even load distribution — multiple planet gears share the torque simultaneously, reducing stress on individual teeth and increasing service life
- High mechanical efficiency — planetary systems typically achieve 95–97% efficiency, meaning very little energy is wasted as heat
For a robotic manipulator, all of these properties matter enormously. Each joint must be compact, powerful, precise, and long-lasting. The planetary reducer I designed fits directly on top of a standard Nema 17 stepper motor frame.
Software: Onshape
All modeling in this week's assignment was done entirely inside Onshape. Here is a comparison with other popular CAD tools:
| Feature | Onshape | Fusion 360 | SolidWorks |
|---|---|---|---|
| Browser-based — no install required | ✅ | ❌ | ❌ |
| Free for students and makers | ✅ | ✅ (limited) | ❌ |
| Real-time collaboration | ✅ | ❌ | ❌ |
| Full parametric modeling | ✅ | ✅ | ✅ |
| Full version history with rollback | ✅ | ✅ | ✅ |
| STEP / IGES import | ✅ | ✅ | ✅ |
| Works on any OS or device | ✅ | ❌ | ❌ |
Onshape's Part Studio is where individual parts are modeled using a feature tree — a sequential list of operations (sketches, extrudes, revolves, fillets, boolean operations) that define each part's shape. Every dimension is driven by constraints, making the model fully parametric. The Assembly environment then brings all parts together with mates and constraints to verify fit and simulated motion.
Assembly Parts Overview
The complete reducer assembly exported from Onshape consists of the following parts:
| Part | Description | Role |
|---|---|---|
| Nema 17 Stepper Motor | 48mm, 1.8°/step, 76oz-in | Drive input |
| Housing body (Part 2) | Main reducer cylinder and frame | Fixed structure |
| Output cover (Part 7) | Top flange with bearing seat | Closes cavity, outputs rotation |
| Planet carrier (Part 6) | Rotating cage holding planet gears | Output shaft element |
| Spur gear — 55 teeth | Sun gear — on motor shaft | Input driver |
| Spur gear — 20 teeth ×2 | Large planet gears | Intermediate transmission |
| Spur gear — 15 teeth ×1 | Small planet gear | Intermediate transmission |
| Bearing 1611-0514-0006 ×3 | Ball bearings | Shaft and carrier support |
| M3 SHCS 10mm ×N | Socket head cap screws | Fasteners throughout |
3D Modeling Process — Step by Step
Step 1 — Output Flange with 6 Mounting Holes (Sketch 12)
The first element I tackled was the output interface — the top flange of the reducer that bolts directly to the next structural link in the robotic arm. Starting from the output and working inward is a good design strategy: it ensures the reducer will actually fit the arm before committing to the internal geometry.
Sketch 12 defines the top output flange and features:
- Six M3 mounting holes at 60° intervals on a shared bolt circle — six holes instead of four for much better load distribution, since this is the highest-stress mechanical interface in the entire joint. Bolts here experience both axial tension and shear loading simultaneously.
- A central bore sized for a press-fit ball bearing, which supports the output shaft against both radial and axial forces from the arm
- The outer boundary of the flange, sized to match the housing body diameter for a clean flush edge
All holes were constrained with Onshape's circular pattern feature, keeping them perfectly equidistant. This means if the bolt circle diameter ever needs to change, all six holes reposition automatically — no manual adjustment needed. The sketch was fully constrained (shown in black in Onshape) before proceeding.

Step 2 — Sketch 10: Ring Gear & Planet Layout with Full Dimensions
This is the most geometrically complex and dimensionally critical sketch in the entire model. It defines the internal ring gear and precisely positions all planet gears, with every key dimension annotated directly on the sketch so nothing is left ambiguous.
Key dimensions visible in this sketch:
- Planet gear center distance: 13.394 mm — the exact distance from the central sun gear axis to each planet gear center axis, derived from the gear pitch geometry:
(pitch_radius_sun + pitch_radius_planet) - Ring gear pitch circle: Ø83.6 mm — the working pitch diameter of the internal ring gear that all planet gears mesh against
- Hub bore: Ø15 mm — for seating the central output shaft ball bearing
- All planet gear center positions marked at their precise locations around the sun
The 13.394 mm center distance is not a guess — it was calculated from the gear module and tooth counts to ensure zero tooth interference. In Onshape, I verified this by overlaying all gear profiles in the same sketch and visually confirming that teeth mesh correctly with proper clearance. Getting this dimension wrong would cause the gears to either seize (teeth collide) or have excessive backlash (too much slop in the joint).

Step 3 — Sun Gear Sketch: 55-Tooth Driving Gear
The sun gear is the heart of the planetary system — it is attached directly to the stepper motor shaft and simultaneously drives all planet gears at once. Any geometric error in the sun gear propagates through the entire transmission, so this sketch was built with extra care.
Parameters of the sun gear:
- Number of teeth: 55
- Module: 1 mm — pitch diameter = 55 mm
- Bore: 5 mm with a D-flat keyway cut into the bore to prevent the gear spinning freely on the motor shaft under load
- Pressure angle: 20° — industry standard for most precision gearing applications
- Tooth profile: involute — constructed manually in Onshape using arc segments, tangency constraints, and bilateral mirror operations to guarantee perfectly symmetric teeth
The sketch plane was aligned to the top face of the motor shaft stub inside the housing cavity, so the sun gear sits at exactly the correct axial position relative to the planet gears.

Step 4 — Extrude 4: Flange Cover at 2.2 mm
With the output flange sketch fully defined, it was extruded to create the physical cover plate of the reducer. The depth of 2.2 mm was not arbitrary — it was chosen based on three practical constraints:
- It matches the standard thickness of laser-cut or machined aluminum plate readily available in Fab Lab environments, meaning this part can be directly fabricated without special material orders
- It keeps the total axial height of the reducer as compact as possible, which is critical for a manipulator arm where every millimeter of link length affects reach and leverage
- At 2.2mm of aluminum (or equivalent printed material), the cover has sufficient bending stiffness to not flex under the axial preload forces generated by the gear mesh
In Onshape, the Extrude was applied in Add mode, merging the new cover into the existing housing body to create a single unified solid. The four bolt holes from the sketch automatically became clean through-holes in the 3D solid — no additional remove or cut features needed.

Step 5 — Sketch 6: Housing Flange with Bolt Holes
After extruding the cover geometry, I went back to define the structural top flange of the housing body itself — the flat circular rim that the cover plate bolts down onto. Sketch 6 defines the flange geometry:
- The outer diameter of the flange, set slightly larger than the gear housing cylinder below it to create a clean visible lip
- Four M3 bolt holes at 90° intervals on a shared bolt circle — these are the fastener positions where M3×10 socket head cap screws clamp the cover plate to the housing body
- A central clearance hole for the planet carrier output shaft to pass through freely without contact
Each bolt hole was dimensioned precisely and constrained symmetric about both the horizontal and vertical centerlines using Onshape's symmetry mate. Symmetry constraints are essential here — an unbalanced bolt pattern creates uneven clamping pressure across the cover face, which can cause the cover to tilt slightly and generate unwanted axial load on the output bearing.

Step 6 — Sketch 2: Spur Gear Ring Profile
With the housing frame established, the next step was defining the outer ring gear — the fixed internal gear that forms the outer mechanical boundary of the planetary system. The ring gear is fixed to the housing, meaning it does not rotate. It is the reaction element: as the sun gear drives the planets, the planets push against the ring gear, and since the ring is fixed, they are forced to orbit around the sun instead.
In Onshape, the ring gear profile uses the involute tooth form pointing inward. Key parameters:
- Internal teeth — unlike normal external spur gears where teeth point outward, the ring gear's teeth point inward toward the axis
- Module: 1 mm — identical to all other gears so they all mesh correctly
- Pressure angle: 20°
- Tooth count: 95 — derived from the assembly geometry:
Ring = Sun + 2 × Planet = 55 + 2×20 = 95
The sketch was placed on the top face of the housing base, and the involute profile was constructed with careful use of arc transitions at the tooth root and tip to avoid stress concentrations that could cause tooth fracture under load.

Step 7 — Extrude 1: Creating the Housing Base
With the foundational sketches established, the first Extrude feature was applied to create the main 3D body of the reducer housing. In Onshape, the Extrude tool takes a fully closed 2D sketch profile and extends it perpendicular to the sketch plane by a specified depth.
For this core operation:
- Depth: 8 mm upward from the motor's top face
- Type: New solid — this created the very first 3D body in the Part Studio, which all subsequent features would either add to or subtract from
- Profile: the outer circular housing boundary including the ring gear tooth form on the inner wall
The 8mm depth was determined by the gear tooth height (which is 2 × module = 2mm for module 1 gears) plus clearance above and below the gear face for structural material. Going thinner would leave insufficient wall thickness around the teeth and risk breakage; going thicker adds unnecessary weight and axial length to the arm joint.

Step 8 — Importing the Nema 17 Stepper Motor & Base Reference Sketch
A crucial early step in the Onshape Part Studio was importing the STEP file of the Nema 17 stepper motor. This is a highly standardized motor used across 3D printers, CNC machines, laser cutters, and robotic systems worldwide. Its key specs:
- Body size: 42 × 42 mm (NEMA 17 standard frame)
- Shaft: 5mm diameter, D-flat cut for positive drive coupling
- Step angle: 1.8° per step = 200 full steps per revolution
- Holding torque: 76 oz-in (≈ 0.54 N·m)
- Mounting holes: 4× M3 on a 31mm bolt circle
Rather than approximate the motor dimensions from a datasheet, I imported the manufacturer's exact STEP model and used it as the dimensional ground truth for the entire reducer. On top of the motor, Sketch 1 was created — the primary reference sketch that captures:
- Ø5 mm — motor shaft diameter → defines sun gear bore
- Ø60 mm — outer motor body reference → defines housing inner seating diameter
Everything in the reducer is parametrically linked to these two numbers, so if the design were ever adapted for a different motor, updating these two values would cascade through the entire model automatically.

Step 9 — Top View: Internal Gear Layout Verification
This orthographic top-down view (rendered with the cover removed) was taken at an intermediate stage in Onshape to verify the complete internal gear layout before committing to the final housing geometry. It shows:
- The 55-tooth sun gear centered on the motor shaft axis
- Two 20-tooth large planet gears at symmetrical positions around the sun
- One 15-tooth small planet gear at the third position, completing the three-planet carrier arrangement
- All gears visibly meshing correctly with the internal ring gear teeth around the perimeter
- The six mounting holes of the output flange visible around the outer ring
Checking the assembly in top view is an important validation step in Onshape — it allows visual confirmation that all gear centers are at the correct positions, that no tooth profiles overlap (which would indicate interference), and that the overall layout is geometrically consistent before moving on to the more complex cover and carrier features.

Step 10 — Completed Assembly: Isometric View
This is the final completed reducer assembly viewed from an isometric perspective in Onshape's Part Studio. The copper-tone appearance was applied using Onshape's material appearance settings to make the housing visually distinct from the dark motor body below. Everything is visible in this view:
- The ring gear teeth around the lower perimeter of the housing
- The top flange with its six M3 bolts seated in their countersinks
- The side mounting ears projecting from two opposite sides of the housing
- The output shaft protruding centrally from the top cover
- The Nema 17 motor cleanly integrated at the base, with its connector visible at the back
This view confirmed that all Part Studio features had merged correctly into the expected final geometry, with no unintended voids, gaps, or intersecting bodies. The assembly is ready for STL export and physical fabrication.

Step 11 — Sketch 18: Side Mounting Ears
To provide an additional lateral attachment point for integrating the reducer into the manipulator arm frame, mounting ears were added to the outer housing body. These are flat tabs that extend beyond the circular housing profile on two diametrically opposite sides (180° apart from each other).
Design details of each ear:
- M4 through-hole — one size larger than the M3 bolts used elsewhere in the reducer, because side-mounted bolts are loaded in shear (the force tries to slide the bolt sideways through its hole) rather than tension. Shear loading requires more bolt cross-section area to carry safely.
- Generous fillet radii at the junction between each ear and the main housing cylinder — sharp corners at this junction would be stress concentration points that could initiate fatigue cracks after thousands of cycles of vibration from the stepper motor
- Flat bottom surface coplanar with the motor mounting face — so the reducer sits perfectly flush against a flat structural plate without rocking
Sketch 18 was drawn on the bottom plane of the flange and extruded downward through the full housing height, then Boolean-intersected with the housing body to integrate the ears as native features of the single unified solid.

Step 12 — Final Output Cover with Bearing Seat (Sketch 17)
The output cover is the last and mechanically most demanding part of the reducer. It simultaneously performs four functions: sealing the gear cavity, providing the bearing seat, retaining the output shaft axially, and defining the output torque interface of the entire assembly.
The cover sketch (Sketch 17) defines a rotationally symmetric profile that was revolved 360° using Onshape's Revolve feature to generate the final 3D solid. The profile contains:
- An outer seating rim that fits snugly into the top bore of the housing with a close sliding fit (H7/g6 tolerance class) — tight enough to locate the cover precisely, loose enough to assemble by hand
- A machined bearing shoulder on the inner face — the ball bearing outer race presses against this shoulder and is held axially by it. The shoulder diameter was dimensioned for an H7 interference fit with the bearing OD, providing secure retention without adhesive
- A central shaft bore sized as a clearance fit over the output shaft so the shaft can rotate freely while the cover remains stationary
- A shallow snap ring groove machined into the outer rim so the cover can be retained in the housing with a standard external snap ring — no fasteners needed, fully tool-free disassembly
After revolving, fillets were applied to all interior sharp edges to eliminate stress concentrations that could initiate cracks under the cyclic bending loads from the manipulator arm.

Gear Ratio Calculation
Understanding the mathematics behind the reducer is essential for designing a manipulator with predictable, controllable motion. Here is the complete calculation:
Gear Parameters
Sun gear (input — Nema 17 shaft) : 55 teeth (Zs)
Planet gears (large) × 2 : 20 teeth (Zp_large)
Planet gear (small) × 1 : 15 teeth (Zp_small)
Ring gear (fixed to housing) : 95 teeth (Zr)
Ring Gear Verification
For a valid planetary system, the ring gear tooth count must satisfy:
Zr = Zs + 2 × Zp_large
Zr = 55 + 2 × 20
Zr = 55 + 40
Zr = 95 teeth
Gear Ratio Formula
For a standard planetary gear system with a fixed ring gear, a rotating sun gear (input), and a rotating planet carrier (output):
Zr
Gear Ratio = 1 + ────
Zs
95
= 1 + ────
55
= 1 + 1.7273
= 2.7273
≈ 2.73 : 1
Speed and Torque
Motor speed (Nema 17 typical): 200 RPM (input)
200
Output speed = ─────── = 73.3 RPM
2.73
Torque multiplier = 2.73 ×
If motor torque = 0.40 N·m (Nema 17 rated)
Output torque = 0.40 × 2.73 = 1.09 N·m
Summary Diagram
┌─────────────────────────────────────┐
│ PLANETARY REDUCER │
│ │
Nema 17 Motor │ ┌──────────┐ │
┌────────────┐ │ │ RING │ 95 teeth (fixed) │
│ 200 RPM │──shaft──┼──▶│ SUN │ 55 teeth (input) │
│ 0.40 N·m │ │ │ PLANET │ 20+20+15 teeth │
└────────────┘ │ │ CARRIER │ (output) │
│ └──────────┘ │
│ │
└──────────────────┬──────────────────┘
│
▼
OUTPUT SHAFT
73.3 RPM
1.09 N·m
Ratio: 2.73:1
The 2.73:1 reduction means the manipulator joint rotates at roughly one-third of the motor's speed, with 2.73 times more torque available for lifting and holding the arm's payload. This ratio was chosen as a balance between speed (enough to move the arm quickly) and torque (enough to lift without stalling the motor).
Design Files — Download STL
All parts are available as STL files for 3D printing or further CAD work:
| File | Part | Size |
|---|---|---|
Assembly 1 - Nema 17 Stepper Motor.stl |
Stepper motor reference body | 580 KB |
Assembly 1 - Part 2.stl |
Main reducer housing | 414 KB |
Assembly 1 - Part 7.stl |
Output cover / top flange | 388 KB |
Assembly 1 - Part 6.stl |
Planet carrier | 102 KB |
Assembly 1 - Spur gear (20 teeth).stl |
Large planet gear ×2 | 97 KB |
Assembly 1 - Spur gear (15 teeth).stl |
Small planet gear ×1 | 73 KB |
Assembly 1 - 1611-0514-0006.stl |
Ball bearing (main) | 227 KB |
Assembly 1 - 1611-0514-0006 (1).stl |
Ball bearing ×1 | 36 KB |
Assembly 1 - 1611-0514-0006 (2).stl |
Ball bearing ×2 | 36 KB |
Assembly 1 - M3 SHCS SS_10mm Long.stl |
M3×10 cap screw | 52 KB |
Reflections
Working entirely within Onshape for this assignment was a productive and instructive experience. A few highlights:
What worked well:
- The parametric feature tree made it easy to go back and modify earlier features — changing a gear's tooth count or the housing diameter automatically updates all downstream features. This is the defining advantage of parametric CAD.
- Sketch constraints (coincident, tangent, equal, symmetric) ensured that all geometry stayed geometrically correct as dimensions changed. A fully constrained sketch (shown in black in Onshape) gives confidence that the design is unambiguous.
- STEP import of the Nema 17 motor worked flawlessly and eliminated all guesswork about motor dimensions — every feature of the reducer is built directly on top of the real motor geometry.
- The browser-based environment meant I could work from any computer without any installation or license concerns.
Challenges encountered:
- Generating accurate involute gear tooth profiles in Onshape requires careful manual construction using arcs, splines, and tangency constraints, since there is no built-in gear generator in the standard Onshape tools. This was time-consuming but gave a much deeper understanding of gear geometry.
- Managing multiple solid bodies in a single Part Studio (housing, gears, carrier, cover) required careful attention to which body each Extrude or Boolean operation was targeting. Onshape's "Merge scope" setting in the feature dialogs is powerful but must be set deliberately for each operation.
Summary
| Parameter | Value |
|---|---|
| Gear Type | Planetary (Epicyclic) |
| Drive Motor | Nema 17 Stepper Motor, 1.8°/step |
| Sun Gear Teeth | 55 |
| Large Planet Gear Teeth | 20 ×2 |
| Small Planet Gear Teeth | 15 ×1 |
| Ring Gear Teeth | 95 (fixed) |
| Gear Module | 1 mm |
| Pressure Angle | 20° |
| Gear Ratio | 2.73 : 1 |
| Output Speed (at 200 RPM input) | ≈ 73.3 RPM |
| Torque Multiplication | 2.73 × |
| CAD Software | Onshape (browser-based parametric CAD) |
| Export Format | STL (per part) + Onshape Document |
Video Compression
Part of this week's assignment was also to compress images and videos for the documentation website. When you record a video on a phone the file is usually very big — sometimes 200–300 MB for just a few minutes. This is way too heavy to upload directly to the site because it will load slowly and take too much storage space. So I needed a tool to make the files smaller before uploading.
I decided to use CapCut for this. It is a free mobile app for video editing and it has very good export settings where you can control the resolution, frame rate and bitrate. I think it is one of the easiest tools for this kind of compression, especially if you are working from your phone and don't want to install any desktop software. The whole process took me only a few minutes per video.
Step 1 — Open CapCut and Create a New Project

When you first open CapCut you see the main screen with all the editing options. The button you need is New video — it is the big button on the left side of the screen, highlighted with red in the screenshot above.
After pressing it, I selected the video I wanted to compress from my phone gallery and it loaded into the CapCut editor automatically. You don't need to do any editing here — the goal is just to import the video and then export it with smaller settings. The app loads the video into the timeline and it is ready to work with. I didn't cut or edit anything, just imported and moved to the next step.
Step 2 — Open the Export Panel

Once the video is in the timeline, you need to tap the Export button in the top right corner of the screen — it is highlighted with red in the screenshot above. This button opens the full export settings panel where you can change everything about how the video will be saved.
This step is important because if you skip it and just save the video without changing anything, CapCut will export it at the original quality — which means the file will still be very large. The export panel is where all the compression magic actually happens. I always open this before saving any video for the website.
Step 3 — Set the Parameters and Export

This is the most important step. In the export panel I changed the following settings to make the file smaller:
| Setting | Value I used | Why |
|---|---|---|
| Resolution | 480p | Good quality, much smaller than 2K or 4K |
| Frame rate | 30 fps | Enough for documentation video |
| Bitrate | 5–10 Mbps | Lower = smaller file, still looks fine |
| AI Ultra HD | Off | Makes file bigger, not needed |
| Optical flow | Off | Only for slow motion effects |
| Smart HDR | Off | Not needed for normal footage |
At the bottom of the screen CapCut shows you the estimated file size in real time as you move the bitrate slider. This is really useful because you can see exactly how big the file will be before you save it. I tried to keep each video under 20 MB which is a comfortable size for web hosting.
After setting everything I pressed Export and the video was saved to my phone in a few seconds. Then I just uploaded it to the Fab Academy documentation website.
Image Editing and Compression — Inkscape
For editing and compressing photos for the documentation website I used Inkscape — a free open source vector graphics editor that is already installed in our Fab Lab on Linux. I know that Inkscape is mostly used for vector drawings and SVG files, but it is also really good for editing and exporting raster images like screenshots.
My workflow for every documentation photo was the same four steps: open the image, draw red highlight boxes on the important parts, set the correct export dimensions, change the format to JPG, and save. It sounds like a lot but after doing it a few times it becomes very fast — maybe 2–3 minutes per image.
The reason I used Inkscape instead of something like GIMP is that Inkscape is faster to open and easier to use for this kind of simple annotation work. You don't need to learn many tools — just the rectangle tool and the export panel.
Step 1 — Open the Image and Add Red Highlight Boxes

First I opened the screenshot in Inkscape by going to File → Open and selecting the image. When the image is loaded you can see it in the main canvas area.
To mark the important parts of the screenshot I used the rectangle tool from the left toolbar — it is the icon that looks like a small square, you can see it selected in the screenshot above. I drew rectangles over the areas I wanted to highlight, for example over a button that the reader needs to click or over a setting that needs to be changed.
After drawing the rectangle I opened the Fill and Stroke panel on the right side. There I did two things — I set the fill to none so the box is transparent and you can see what is under it, and I set the stroke color to red with a thickness of about 3–4 px. This gives a clean red border box that draws attention without hiding the content underneath.
The RGBA color value I used was ff0909ff — a bright pure red, you can see it in the Fill and Stroke panel in the screenshot. I kept the same color for all my documentation images so everything looks consistent across the whole week page. This annotation technique is really simple but makes a big difference for the reader — instead of describing in text where to look, you just show it with a red box and it is immediately obvious.
Step 2 — Resize the Image to the Correct Dimensions

After adding the highlight boxes I needed to set the correct export size. This is important because if you export at full original resolution the file will be too large for the website and will load slowly. Also the layout of the MkDocs page looks much better when images have consistent proportions.
To do this I opened the Export panel on the right side and clicked on the Page tab at the top. This lets you set the output dimensions manually in the Image Size fields — you can see Width and Height inputs in the screenshot.
For this particular image — a mobile phone screenshot — I set the size to 277 × 600 px. This is a good size for a tall mobile screenshot on a documentation page: wide enough to be readable but not so large that it takes up the whole screen width. The DPI was set to 45 which is completely fine for web display. You only need high DPI like 150 or 300 for printed materials — for a website 45 DPI is more than enough and keeps the file size small.
Step 3 — Change the Export Format from PNG to JPG

This step is one of the most important parts of the whole process. By default Inkscape wants to export as PNG — you can see the format dropdown at the bottom of the Export panel. But PNG files are not accepted by the Fab Academy documentation website, so I always need to change this before saving.
I clicked on the format dropdown and selected JPEG (*.jpg) from the list. You can see the dropdown open in the screenshot with all the options visible — PNG, Inkscape SVG, Plain SVG, PDF, and JPEG highlighted at the bottom.
There is also another important reason to use JPG instead of PNG — file size. A PNG screenshot from a phone can be 200–400 KB easily. The same image exported as JPG is usually 20–50 KB — that is up to 10 times smaller. For a documentation website with many images this makes a big difference in how fast the page loads for the reader. The quality difference is basically invisible for documentation screenshots at normal quality settings.
Step 4 — Name the File and Save

The last step is saving the file. After pressing Export in Inkscape a file save dialog opens where you choose the folder and give the file a name. I named my files with simple numbered names like 000.jpg, 001.jpg and so on — this keeps them organized and easy to reference in the markdown.
I saved everything to my Documents folder. You can see in the file dialog that there are already many other exported images there — all very small in size, around 20–35 KB each. This is the result of using JPG format and the correct export dimensions — the files are tiny and the page loads fast.
After pressing the Save button (highlighted in red in the screenshot) Inkscape shows a confirmation message at the bottom of the screen that the drawing was exported successfully. Then I just moved the files into the files/ folder of my MkDocs documentation and added the image links to the markdown.
Conclusion
This week was really interesting and also quite challenging at the same time. I worked with three different tools — Onshape for 3D modeling, CapCut for video compression, and Inkscape for image editing and annotation — and each one of them taught me something useful.
The main result is the planetary gear reducer for my robotic manipulator arm. I think this is one of the most important parts of the whole final project — without it the motor spins too fast and has not enough torque to move the arm properly. The gear ratio came out 2.73 : 1 which is a good balance between speed and torque. I modeled all the parts in Onshape: the housing, all the gears, the cover, the planet carrier, and all the mounting features.
Working in Onshape was new for me in terms of parametric feature trees and sketch constraints. The biggest lesson was that you need to plan your sketches carefully from the beginning — if the first sketches are not fully constrained, everything that comes after can break when you change a dimension. I made this mistake a few times and had to go back and fix things. Also drawing involute gear tooth profiles manually took a lot of time and next time I will look for a plugin to speed this up.
For image editing Inkscape worked really well. The workflow of adding red highlight boxes, resizing to the right dimensions, converting to JPG and saving became fast after doing it for all the documentation photos. It is a great tool for documentation work even though it is mainly known as a vector editor. The most useful thing I learned here is how much smaller JPG is compared to PNG — sometimes 10 times smaller with no visible quality difference.
For video compression CapCut was simple and effective. Setting 1080p resolution and lowering the bitrate brought the file sizes down to under 20 MB which is comfortable for web hosting.
Overall I am happy with what I made this week and I feel ready to continue working on the rest of the manipulator in the next assignments.
Fab Academy 2026 · YU FabLab · Abdikаrim