Fab Academy 2026  ·  Week 12

Machine
Design

This week we designed, built, and operated a minimalist desktop CNC machine from scratch — combining mechanical design in Inventor, laser-cut acrylic, metal fabrication, Arduino GRBL electronics, and a complete digital workflow from vector design to G-code execution.

CNC Machine Autodesk Inventor GRBL Firmware Arduino Uno OpenBuilds CONTROL Aspire Laser Cutting
CNC machine assembly overview Fabrication process The team

🤝 Want to see more about the Group Assignment?

Visit the official Fab Academy ULima page for complete documentation and team contributions.

Visit Page ↗
My Contribution

Micaela

I contributed to the design of the parts and adapted the models based on material measurements. I supported the manufacturing and assembly process, especially in the fabrication of metal and laser-cut components. I also performed physical testing, ensured proper fitting, and prepared the presentation materials, including slides, video, and documentation.

Group Assignment

  1. Design a machine that includes mechanism + actuation + automation + function + user interface
  2. Build the mechanical parts and operate it manually
  3. Document the group project and individual contributions

My Individual Contribution

  • 3D modeling and adaptation in Autodesk Inventor
  • Support in metal fabrication and laser-cut acrylic assembly
  • Verification, corrections, and fitting adjustments
  • Machine testing and workflow validation with OpenBuilds CONTROL
  • Presentation materials: slides, video, and documentation

Key Tools

  • Autodesk Inventor — 3D mechanical design
  • Aspire — vector design & G-code generation
  • OpenBuilds CONTROL — machine control software
  • GRBL — Arduino CNC firmware
  • EdgeCAM / Libellula — CAM for metal parts
01
Project Idea

Inspiration & Planning

At the beginning of the week, we decided to develop a minimalist CNC machine because it combines mechanical design, electronics, software control, and digital fabrication in one integrated system. Our main inspiration came from small desktop CNC machines and from a YouTube playlist by Prof. GarciaCNC Fácil de Hacer en Casa — where he explains the process of building a CNC machine step by step.

What we learned from the reference: These videos helped us understand the basic structure, the movement system, the assembly sequence, and the workflow from design to G-code execution.
↗ Prof. Garcia — CNC Fácil de Hacer en Casa

Design Decisions

Based on our research, we adapted the idea to the materials and components available in our lab. We focused on creating a compact CNC machine capable of moving in the X, Y, and Z axes, using a proven and accessible combination of components:

⚙️ Mechanical

Lead screws, linear bearings, hardened steel shafts, flexible couplings, and aluminum profiles.

⚡ Electronics

Arduino Uno with GRBL firmware, CNC Shield, A4988 stepper drivers, and a 12V power supply.

💻 Software

Aspire for G-code generation and OpenBuilds CONTROL for machine operation and axis jogging.

This planning stage helped us define the machine structure, select the required components, and organize the fabrication process before starting the assembly.

02
CAD Modeling

The Design

The first stage was to design the main structure of the CNC machine in Autodesk Inventor. Before modeling the full machine, we started with an initial sketch to understand the general shape, the position of the axes, and the space that each component would need.

Initial CNC machine sketch

Individual Parts in Inventor

After defining the concept, we created the main parts of the CNC machine in Inventor. Each component was modeled separately — the base, side supports, moving bed, motor supports, and axis plates — to understand the dimensions of each piece before assembling the complete machine.

Inventor model — Part 1 Inventor model — Part 2 Inventor model — Part 3 Inventor model — Part 4

Full Assembly

All parts were then placed into an Inventor assembly file. This allowed us to visualize the complete CNC structure and verify how the mechanical elements work together — checking the position of the motors, lead screws, shafts, couplings, bearings, acrylic plates, and aluminum profiles.

Assembly view 1
Assembly view 2
Assembly view 3
Assembly view 4
Assembly view 5

DXF Export & Laser Cutting

One advantage of using Inventor was that we could generate the 2D profiles needed for fabrication. From the 3D model, we selected the flat faces of the structural pieces and exported them as DXF files. These files were used to laser cut the acrylic components.

Laser cutting — acrylic plate 1

Laser cutting — acrylic plate 2

🔧 Model Corrections & Adaptation to Real Components

One of my main individual contributions was helping to correct the measurements of the digital model using the real physical components. Although the first Inventor model helped us understand the general structure, some dimensions did not match perfectly once we started assembling the real machine.

Our original intention was to fabricate most structural plates in metal. However, we made a measuring error for the motor and some mounting distances — the original front and back plates did not align correctly with the motor and the couplings. We had to redesign those parts and cut new plates in transparent acrylic.
Correction — plate redesign

Redesigned acrylic plates

Correction — hole alignment

Hole correction for motor alignment

In some cases, the holes in the fabricated parts did not match the real position of the motor or mechanical supports. Some corrections were made directly on the pieces by manually adjusting the holes; other parts had to be redesigned and cut again.

Key lesson: Always measure the real components before final fabrication. The digital model must be continuously updated to reflect the physical assembly. These corrections improved part fitting, gave more space for the couplings, and helped the machine move more smoothly.
03
How It Moves

Mechanism & Motion System

CNC machine mechanism diagram

Mechanism diagram — created with ChatGPT based on the machine's description

X Axis

Moves the carriage from left to right along the guide shafts. Driven by a lead screw connected to a stepper motor through a flexible coupling.

Z Axis

Moves the tool up and down to approach or lift from the work surface. This positions the tool correctly before engraving, drawing, or cutting.

The central carriage holds the tool and controls the working movement. Together, the X and Z axes allow precise tool positioning in two dimensions before the operation begins.

The lower bed moves the material forward and backward (Y axis). During the first assembly stages, we manually tested this axis by rotating the rods through the couplings installed in the acrylic bed — verifying that the movement was smooth and aligned before connecting power.

Manual Y-axis testing — rotating the lead screw by hand

After the manual verification, the machine was controlled using OpenBuilds CONTROL. From the laptop, we jogged the axes, moved the bed and the motorized system, and established the work origin before running a G-code job — confirming that the mechanical and electronic systems were working together correctly.

Digital axis testing with OpenBuilds CONTROL

Main Components
ComponentSpecsFunction
Flexible shaft couplings8 mm × 3Connect stepper motor shafts to lead screws
Lead screws8 mm Ø, ~40 cm × 3Convert rotational motion into linear movement
Lead screw nuts× 3Move along lead screws and transfer motion to moving parts
Linear ball bearings8 mm × 12Smooth guided linear movement along steel shafts
Hardened steel shafts8 mm Ø, ~40 cm × 5Guide movement of the carriage and bed
Shaft supports8 mm × 2Hold and align guide shafts for structural stability
Standard bearings8 mm × 3Support rotating parts and reduce friction
Laser-cut acrylic platesBed, structural supports, and mounting surfaces
Aluminum profilesMain structural frame of the machine
3D-printed support partsSpecific holders and mechanical adaptations
Tool / spindle holderHolds the engraving, drawing, or cutting tool
FastenersM3 screws, nuts, spacersAssemble and secure all mechanical parts
ComponentDetailsRole
Arduino Uno + GRBLGRBL firmwareMain controller — interprets G-code commands
CNC ShieldInterfaces Arduino with motor drivers; distributes STEP & DIR signals
A4988 stepper drivers× 3Control current and movement of each stepper motor
Stepper motors× 3Generate movement for X, Y, and Z axes
12V power supplyExternalPowers the stepper motors through the CNC Shield
USB connectionLaptop → ArduinoSends G-code commands from control software
Wires & connectorsConnect motors, drivers, shield, and power supply
Aspire

Vector design tool for creating machining toolpaths and exporting G-code files (.ngc).

OpenBuilds CONTROL

Free machine-control platform. Connects laptop to CNC, jogs axes, sets work origin, and runs G-code jobs.

GRBL Firmware

Installed on the Arduino Uno. Converts G-code into motion-control instructions for the CNC machine.

Autodesk Inventor

Used for the 3D modeling, mechanical design, assembly verification, and DXF export of the CNC structure.

04
Digital Pipeline

CNC Workflow

For this machine, we followed a digital workflow that connected the design process, G-code generation, machine control software, electronics, and the physical movement of the CNC machine into one seamless pipeline.

🎨
Aspire
Vector design + toolpaths
📄
G-code (.ngc)
Exported file
🖥️
OpenBuilds
Load & execute job
🔌
Arduino GRBL
Interpret G-code
CNC Shield + A4988
Motor control signals
🤖
Stepper Motors
Physical movement

Full CNC workflow demonstration video

📋 Step-by-Step Workflow Breakdown +
Step 1 Vector Design in Aspire

We created the vector design in Aspire. The design used for this test was the text "UP". We prepared the drawing, generated the machining toolpaths according to the material and type of operation, then exported the project as a G-code file with the .ngc extension.

Step 2 Loading in OpenBuilds CONTROL

The .ngc file was opened in OpenBuilds CONTROL, available at software.openbuilds.com. This free platform allowed us to connect the laptop to the CNC controller, load and execute the G-code file, manually move the machine axes, and set the work origin before starting the job.

Step 3 USB Communication to Arduino GRBL

OpenBuilds CONTROL sent the G-code from the laptop to the Arduino Uno through a USB connection. The Arduino was running GRBL firmware, which interprets G-code commands and converts them into motion-control instructions.

Step 4 Signal Distribution via CNC Shield

The Arduino sends low-power 5V logic signals (STEP and DIR) — not motor power. The CNC Shield works as an interface between the Arduino and the motor drivers, organizing the connections for each axis and distributing control signals to the corresponding A4988 stepper drivers.

Step 5 Motor Power via A4988 Drivers

The A4988 stepper motor drivers receive the 5V control signals and use an external 12V power supply to drive the stepper motors. The Arduino does not convert 5V to 12V — the A4988 drivers use the logic signals to switch and regulate the external motor power. They also control the current delivered to each motor for accurate step-by-step movement.

Step 6 Physical Machining

The CNC machine executed the programmed movements and engraved the "UP" design onto the material. Through this workflow, a digital vector design was transformed into a physical machined result.

CNC workflow diagram
05
Making It Real

Mechanical Fabrication Process

After completing the 3D model, we started the mechanical fabrication process by checking the real components and preparing the materials for assembly. We compared the digital design with the physical parts — aluminum profiles, motors, shafts, couplings, screws, and support pieces.

Components overview and fabrication preparation

We measured the aluminum profiles and marked the required dimensions. This step was critical — the frame needed to match the Inventor model dimensions and support the movement system correctly.

Measuring aluminum profiles Reviewing design in Inventor before machining

Before machining any metal parts, we reviewed the design in Inventor to verify the geometry of pieces that had to be manufactured — checking shape, dimensions, and hole positions before sending parts to fabrication.

For the metal fabrication process, we used CAM software to prepare the cutting paths. We tested and reviewed the geometry in programs such as EdgeCAM and Libellula before machining — verifying the toolpath and generating the necessary instructions for the CNC machine.

CAM software toolpath review EdgeCAM geometry verification
CAM preparation detail

We used the CNC metal-cutting machine to manufacture some of the structural metal parts. This process was useful for creating stronger components for the frame and supports of the machine.

CNC metal cutting machine in operation Metal part after CNC cutting

After cutting the metal pieces, we checked the results and prepared them for the next assembly steps. Some parts required additional adjustments to improve the fit with real components.

Checking and preparing cut metal parts

We also used a milling / drilling machine to make or correct holes in some of the metal parts. This was necessary because the holes had to align correctly with the motors, couplings, screws, and structural supports.

Drilling machine for hole correction

In addition to the metal parts, we fabricated some support components using 3D printing. These pieces were useful for prototype adjustments because they were faster to produce and easier to modify than metal.

3D-printed support part — design 3D-printed support part — printed result
Summary: This fabrication process combined measurement, CAD verification, CAM preparation, CNC metal cutting, drilling, 3D printing, and manual assembly — adapting the digital design to the real components at every stage.
06
Testing & Outcomes

Results

01
First Test — Hole Drilling & Line Drawing

The first operational test confirmed that the machine could drill holes and draw straight lines. This validated the basic motion system, the GRBL communication, and the G-code execution pipeline.

First result — hole drilling and line drawing test

02
Second Test — Wood Drilling

The machine was tested on wood, demonstrating that it could apply enough force and maintain accurate positioning for drilling operations on a real material.

Wood drilling — take 1

Wood drilling — take 2

03
Third Test — Drawing with a Pen

We added a pen holder to the tool mount, enabling the machine to draw continuous paths. This test demonstrated the machine's precision for vector-based drawing operations, tracing smooth lines from the G-code path.

Pen drawing — run 1

Pen drawing — run 2

📋 Presentation
Project presentation poster
CNC Machine — Fab Academy 2026 · Week 12 ↓ Download Poster
🎬 Project Video
🚀 Future Improvements
1
Interchangeable Tool Heads
A future version could include customizable and interchangeable tool heads for different purposes — painting, cutting, and engraving — making the machine more versatile and capable of performing more than one type of operation.
2
Better Workpiece Fixing
A clamping system inside the acrylic box would hold the material securely during operation — reducing movement, vibration, and misalignment while the machine is working.
3
Stronger Y-Axis Support
The 3D-printed part that supports the Y-axis could be replaced with a metal component, similar to the other axes. This would improve rigidity and help the Y-axis move in a straighter and more stable path.
4
Automatic Origin Detection
Distance sensors or a small camera could detect the surface of the object before machining, allowing the machine to automatically calculate the work origin and reduce manual setup time.
Future improvements illustration

Illustration generated with ChatGPT based on the improvement concepts described above

👥 The Team
The machine design team

Machine Design — Week 12

Together we designed, fabricated, assembled, and tested the CNC machine. Each member contributed from their strengths — 3D modeling, electronics, fabrication, and documentation — to bring the machine from a sketch to a working tool.

07

Get in Touch